


:root {
  --navy950: #050A18;
  --navy900: #0A1230;
  --navy800: #101C44;
  --navy700: #1A2A5E;
  --gold: #E3B341;
  --gold2: #F5D67B;
  --cream: #F4EDDA;
  --ink: #EAEFFD;
  --muted: #9AA7C9;
  --success: #4ADE80;
  --danger: #F87171;
  --radius: 12px;
  --radius-sm: 8px;
  --font-display: "Space Grotesk", "Segoe UI", system-ui, sans-serif;
  --font-body: "Inter", "Segoe UI", system-ui, sans-serif;
  --shadow: 0 1px 2px rgba(0,0,0,.25), 0 8px 30px rgba(0,0,0,.35);
  --glow: 0 0 24px rgba(227,179,65,.22);
}
*, *::before, *::after { box-sizing: border-box; }
[hidden] { display: none !important; }
html { scroll-behavior: smooth; }
body {
  margin: 0;
  background:
    radial-gradient(1200px 500px at 80% -10%, rgba(227,179,65,.07), transparent 60%),
    radial-gradient(900px 420px at -10% 10%, rgba(26,42,94,.55), transparent 60%),
    var(--navy900);
  color: var(--ink);
  font-family: var(--font-body);
  font-size: 16px;
  line-height: 1.6;
  -webkit-font-smoothing: antialiased;
}
img { max-width: 100%; display: block; }
a { color: var(--gold2); text-decoration: none; }
a:hover { color: var(--gold); }
h1, h2, h3, h4 { font-family: var(--font-display); line-height: 1.2; margin: 0 0 .5em; color: var(--cream); }
p { margin: 0 0 1em; }
code, kbd {
  background: var(--navy800); border: 1px solid var(--navy700);
  border-radius: 6px; padding: .1em .45em; font-size: .85em;
  font-family: ui-monospace, Menlo, Consolas, monospace; color: var(--gold2);
}
::selection { background: rgba(227,179,65,.35); }
.container { width: min(1180px, 100% - 48px); margin-inline: auto; }
.skip-link { position: absolute; left: -9999px; top: 0; background: var(--gold); color: var(--navy950); padding: 10px 18px; z-index: 300; border-radius: 0 0 10px 0; font-weight: 600; }
.skip-link:focus { left: 0; }
.icon { width: 1.15em; height: 1.15em; flex: none; vertical-align: -.2em; }
:focus-visible { outline: 2px solid var(--gold); outline-offset: 2px; border-radius: 4px; }
.btn {
  display: inline-flex; align-items: center; justify-content: center; gap: 8px;
  border: 1px solid transparent; border-radius: 10px;
  padding: 11px 20px; font: 600 15px/1 var(--font-body);
  cursor: pointer; transition: transform .15s ease, box-shadow .15s ease, background .15s ease, border-color .15s;
  text-decoration: none; white-space: nowrap;
}
.btn:active { transform: translateY(1px) scale(.99); }
.btn-gold {
  background: linear-gradient(135deg, var(--gold2), var(--gold) 55%, #C9972B);
  color: #1A1206; box-shadow: 0 4px 18px rgba(227,179,65,.28);
}
.btn-gold:hover { box-shadow: 0 6px 26px rgba(227,179,65,.45); color: #000; transform: translateY(-1px); }
.btn-outline { background: transparent; border-color: var(--navy700); color: var(--ink); }
.btn-outline:hover { border-color: var(--gold); color: var(--gold2); background: rgba(227,179,65,.06); }
.btn-ghost { background: rgba(26,42,94,.35); color: var(--ink); border-color: transparent; }
.btn-ghost:hover { background: var(--navy700); }
.btn-sm { padding: 8px 14px; font-size: 13.5px; border-radius: 8px; }
.btn-lg { padding: 15px 28px; font-size: 16.5px; }
.btn-block { width: 100%; }
.btn[disabled] { opacity: .55; cursor: not-allowed; }
.icon-btn {
  display: inline-flex; align-items: center; gap: 8px;
  background: rgba(26,42,94,.35); color: var(--ink);
  border: 1px solid var(--navy700); border-radius: 10px;
  width: 42px; height: 42px; justify-content: center; cursor: pointer;
  transition: border-color .15s, color .15s, background .15s;
  font: 600 14px var(--font-body); padding: 0 10px; text-decoration: none;
}
.icon-btn:hover { border-color: var(--gold); color: var(--gold2); }
.announce { background: linear-gradient(90deg, #141E48, #1A2A5E 50%, #141E48); border-bottom: 1px solid rgba(227,179,65,.35); font-size: 13.5px; }
.announce-in { display: flex; align-items: center; gap: 14px; padding: 8px 0; }
.announce-in > span { display: inline-flex; align-items: center; gap: 8px; color: var(--cream); }
.announce-code { background: rgba(227,179,65,.14); color: var(--gold2); border: 1px dashed var(--gold); border-radius: 7px; padding: 3px 9px; cursor: pointer; font: 700 12.5px ui-monospace, monospace; letter-spacing: .06em; display: inline-flex; gap: 6px; align-items: center; }
.announce-code:hover { background: rgba(227,179,65,.28); }
.announce-link { margin-left: auto; font-weight: 600; font-size: 13px; }
.announce-close { background: none; border: 0; color: var(--muted); cursor: pointer; display: inline-flex; padding: 4px; }
.announce-close:hover { color: var(--gold2); }
.site-header {
  position: sticky; top: 0; z-index: 120;
  background: rgba(10,18,48,.82); backdrop-filter: blur(14px);
  border-bottom: 1px solid rgba(26,42,94,.9);
  transition: box-shadow .2s;
}
.site-header.scrolled { box-shadow: 0 10px 40px rgba(0,0,0,.45); }
.header-in { display: flex; align-items: center; gap: 26px; height: 68px; }
.brand { display: inline-flex; align-items: center; gap: 10px; }
.brand-name {
  font: 700 20px var(--font-display); letter-spacing: .14em;
  background: linear-gradient(120deg, var(--gold2), var(--gold));
  -webkit-background-clip: text; background-clip: text; color: transparent;
}
.main-nav { display: flex; align-items: center; gap: 4px; margin-right: auto; }
.nav-link { display: inline-flex; align-items: center; gap: 5px; color: var(--ink); font-weight: 500; font-size: 14.5px; padding: 9px 13px; border-radius: 8px; }
.nav-link:hover { color: var(--gold2); background: rgba(26,42,94,.45); }
.nav-item { position: relative; }
.nav-toggle { background: none; border: 0; font: inherit; cursor: pointer; }
.nav-toggle .caret { transition: transform .18s ease; }
.nav-item.is-open > .nav-toggle .caret { transform: rotate(180deg); }
.drop {
  position: absolute; top: 100%; left: 0; min-width: 230px;
  background: var(--navy800); border: 1px solid var(--navy700); border-radius: var(--radius);
  box-shadow: var(--shadow); padding: 8px; display: none; flex-direction: column;
  z-index: 200;
}
.drop::before {
  content: ""; position: absolute; left: 0; right: 0; top: -10px; height: 10px;
}
.drop > :first-child { margin-top: 8px; }
.nav-item:hover > .drop,
.nav-item:focus-within > .drop,
.nav-item.is-open > .drop,
[data-nav-dropdown].is-open > .drop { display: flex; }
.drop a { display: flex; align-items: center; gap: 10px; padding: 10px 12px; border-radius: 8px; color: var(--ink); font-size: 14px; }
.drop a:hover { background: var(--navy700); color: var(--gold2); }
.drop-emoji { width: 1.3em; text-align: center; }
.header-actions { display: flex; align-items: center; gap: 10px; }
.discord-btn { width: auto; }
.cart-btn { position: relative; }
.cart-count {
  position: absolute; top: -7px; right: -7px; min-width: 19px; height: 19px;
  background: var(--gold); color: var(--navy950); border-radius: 999px;
  font: 700 11px/19px var(--font-body); text-align: center; padding: 0 5px;
}
.menu-btn { display: none; }
.mobile-nav {
  position: fixed; inset: 0 30% 0 0; z-index: 200; background: var(--navy950);
  border-right: 1px solid var(--navy700); padding: 18px; overflow-y: auto;
  animation: slideIn .22s ease;
}
@keyframes slideIn { from { transform: translateX(-30px); opacity: 0; }
}
.mobile-nav-head { display: flex; justify-content: space-between; align-items: center; margin-bottom: 14px; }
.mobile-nav nav { display: flex; flex-direction: column; }
.mobile-nav nav a { display: flex; gap: 12px; align-items: center; padding: 13px 10px; color: var(--ink); border-radius: 10px; font-weight: 500; }
.mobile-nav nav a:hover { background: var(--navy800); color: var(--gold2); }
.mobile-nav hr { border: 0; border-top: 1px solid var(--navy700); margin: 8px 0; }
.hero { position: relative; overflow: hidden; border-bottom: 1px solid var(--navy700); }
.hero-media { position: absolute; inset: 0; }
.hero-media img { width: 100%; height: 100%; object-fit: cover; opacity: .5; }
.hero-media::after { content: ""; position: absolute; inset: 0; background: linear-gradient(180deg, rgba(10,18,48,.55), var(--navy900) 96%), linear-gradient(90deg, rgba(10,18,48,.85), transparent 65%); }
.hero-in { position: relative; padding: 96px 0 84px; max-width: 720px; }
.hero-eyebrow { display: inline-flex; align-items: center; gap: 8px; color: var(--gold2); font: 600 13px var(--font-body); letter-spacing: .12em; text-transform: uppercase; border: 1px solid rgba(227,179,65,.4); border-radius: 999px; padding: 7px 15px; margin-bottom: 22px; background: rgba(10,18,48,.55); }
.hero h1 { font-size: clamp(34px, 5.2vw, 58px); font-weight: 700; letter-spacing: -.015em; margin-bottom: 18px; }
.hero h1 .gold { background: linear-gradient(120deg, var(--gold2), var(--gold)); -webkit-background-clip: text; background-clip: text; color: transparent; }
.hero p.lead { font-size: 17.5px; color: var(--ink); opacity: .88; max-width: 560px; margin-bottom: 30px; }
.hero-ctas { display: flex; gap: 14px; flex-wrap: wrap; }
.hero-stats { display: flex; gap: 34px; flex-wrap: wrap; margin-top: 46px; }
.hero-stats div { display: flex; flex-direction: column; }
.hero-stats strong { font: 700 26px var(--font-display); color: var(--gold2); }
.hero-stats span { font-size: 13px; color: var(--muted); }
.section { padding: 68px 0; }
.section + .section { border-top: 1px solid rgba(26,42,94,.55); }
.section-head { display: flex; align-items: flex-end; justify-content: space-between; gap: 18px; margin-bottom: 34px; }
.section-head h2 { font-size: clamp(24px, 3vw, 32px); margin: 0; }
.section-head p { color: var(--muted); margin: 6px 0 0; max-width: 560px; }
.section-head .link-more { flex: none; font-weight: 600; display: inline-flex; align-items: center; gap: 6px; }
.eyebrow { color: var(--gold2); font: 600 12.5px var(--font-body); letter-spacing: .14em; text-transform: uppercase; display: block; margin-bottom: 8px; }
.grid { display: grid; gap: 22px; }
.grid-products { grid-template-columns: repeat(auto-fill, minmax(272px, 1fr)); }
.grid-3 { grid-template-columns: repeat(auto-fill, minmax(300px, 1fr)); }
.card {
  background: linear-gradient(180deg, rgba(26,42,94,.30), rgba(16,28,68,.55));
  border: 1px solid var(--navy700); border-radius: var(--radius);
  overflow: hidden; display: flex; flex-direction: column;
  transition: transform .18s ease, border-color .18s, box-shadow .18s;
}
.card:hover { transform: translateY(-4px); border-color: rgba(227,179,65,.55); box-shadow: var(--glow), var(--shadow); }
.card-media { position: relative; aspect-ratio: 16/9.4; overflow: hidden; display: block; }
.card-media img { width: 100%; height: 100%; object-fit: cover; transition: transform .35s ease; }
.card:hover .card-media img { transform: scale(1.05); }
.card-hover-cta {
  position: absolute; inset: auto 12px 12px auto; display: inline-flex; align-items: center; gap: 6px;
  background: rgba(5,10,24,.8); border: 1px solid rgba(227,179,65,.5); color: var(--gold2);
  font: 600 12.5px var(--font-body); padding: 7px 12px; border-radius: 999px;
  opacity: 0; transform: translateY(6px); transition: .2s;
}
.card:hover .card-hover-cta { opacity: 1; transform: none; }
.card-body { padding: 18px; display: flex; flex-direction: column; gap: 9px; flex: 1; }
.card-meta { display: flex; align-items: center; gap: 8px; flex-wrap: wrap; }
.card-cat { font-size: 12px; font-weight: 600; letter-spacing: .08em; text-transform: uppercase; color: var(--muted); }
.card-cat:hover { color: var(--gold2); }
.card-title { font-size: 18.5px; margin: 0; }
.card-title a { color: var(--cream); }
.card-title a:hover { color: var(--gold2); }
.card-excerpt { color: var(--muted); font-size: 14px; margin: 0; flex: 1; }
.card-rating { min-height: 22px; display: flex; align-items: center; gap: 8px; }
.card-foot { display: flex; align-items: center; justify-content: space-between; gap: 10px; margin-top: 4px; }
.badge {
  position: absolute; top: 12px; left: 12px; z-index: 2;
  font: 700 11.5px var(--font-body); letter-spacing: .05em; text-transform: uppercase;
  padding: 5px 11px; border-radius: 999px; color: #1A1206;
  background: linear-gradient(135deg, var(--gold2), var(--gold)); box-shadow: 0 3px 12px rgba(0,0,0,.4);
  display: inline-flex; align-items: center; gap: 5px;
}
.badge-blue { background: linear-gradient(135deg, #7EB8FF, #3B82F6); color: #071733; }
.badge-green { background: linear-gradient(135deg, #86EFAC, #22C55E); color: #05240F; }
.badge-pink { background: linear-gradient(135deg, #FDA4AF, #F472B6); color: #36061C; }
.badge-purple { background: linear-gradient(135deg, #C4B5FD, #8B5CF6); color: #190C3A; }
.badge-sub { left: auto; right: 12px; }
.stars { display: inline-flex; gap: 2px; }
.star { width: 16px; height: 16px; }
.stars-count { color: var(--muted); font-size: 13px; }
.stars-none { color: var(--muted); font-size: 12.5px; font-style: italic; }
.price { font: 700 19px var(--font-display); color: var(--cream); }
.price s { color: var(--muted); font-weight: 500; font-size: 14.5px; margin-right: 6px; }
.price small { color: var(--muted); font-size: 13px; font-weight: 500; }
.occasion-chip {
  display: inline-flex; align-items: center; gap: 5px; font-size: 12px; font-weight: 600;
  background: rgba(227,179,65,.12); border: 1px solid rgba(227,179,65,.35); color: var(--gold2);
  padding: 3px 10px; border-radius: 999px;
}
.occasion-chip:hover { background: rgba(227,179,65,.25); color: var(--gold2); }
.tag-chip {
  display: inline-flex; align-items: center; gap: 5px; font-size: 12.5px; font-weight: 500;
  background: rgba(26,42,94,.5); border: 1px solid var(--navy700); color: var(--ink);
  padding: 5px 11px; border-radius: 999px;
}
.tag-chip .icon { width: .95em; height: .95em; color: var(--gold); }
.tag-chip:hover { border-color: var(--gold); color: var(--gold2); }
.cat-card { position: relative; border-radius: var(--radius); overflow: hidden; aspect-ratio: 16/8; border: 1px solid var(--navy700); display: flex; align-items: flex-end; transition: transform .18s, border-color .18s, box-shadow .18s; }
.cat-card:hover { transform: translateY(-4px); border-color: rgba(227,179,65,.55); box-shadow: var(--glow); }
.cat-card img { position: absolute; inset: 0; width: 100%; height: 100%; object-fit: cover; transition: transform .35s; }
.cat-card:hover img { transform: scale(1.06); }
.cat-card::after { content: ""; position: absolute; inset: 0; background: linear-gradient(180deg, transparent 30%, rgba(5,10,24,.92)); }
.cat-card-body { position: relative; z-index: 1; padding: 20px; width: 100%; }
.cat-card-body h3 { margin: 0 0 4px; font-size: 20px; }
.cat-card-body p { margin: 0; color: var(--muted); font-size: 13.5px; }
.cat-card-count { position: absolute; top: 14px; right: 14px; z-index: 1; background: rgba(5,10,24,.75); border: 1px solid var(--navy700); border-radius: 999px; padding: 4px 12px; font: 600 12px var(--font-body); color: var(--gold2); }
.features { display: grid; grid-template-columns: repeat(auto-fit, minmax(230px, 1fr)); gap: 18px; }
.feature { border: 1px solid var(--navy700); background: rgba(16,28,68,.4); border-radius: var(--radius); padding: 24px; }
.feature .icon { width: 30px; height: 30px; color: var(--gold); margin-bottom: 14px; }
.feature h3 { font-size: 16.5px; margin-bottom: 8px; }
.feature p { color: var(--muted); font-size: 14px; margin: 0; }
.cta-band { border: 1px solid rgba(227,179,65,.4); border-radius: 18px; padding: 52px; text-align: center; background: radial-gradient(600px 260px at 50% -40%, rgba(227,179,65,.16), transparent), linear-gradient(180deg, var(--navy800), var(--navy900)); }
.cta-band h2 { font-size: clamp(24px, 3.4vw, 36px); }
.cta-band p { color: var(--muted); max-width: 520px; margin: 0 auto 26px; }
.breadcrumbs { padding: 20px 0 0; }
.breadcrumbs ol { list-style: none; display: flex; flex-wrap: wrap; gap: 8px; padding: 0; margin: 0; font-size: 13.5px; color: var(--muted); }
.breadcrumbs li + li::before { content: "/"; margin-right: 8px; color: var(--navy700); }
.breadcrumbs a { color: var(--muted); }
.breadcrumbs a:hover { color: var(--gold2); }
.breadcrumbs [aria-current] { color: var(--cream); }
.product-layout { display: grid; grid-template-columns: 1.15fr .85fr; gap: 44px; padding: 34px 0 60px; }
.gallery-main { position: relative; border-radius: var(--radius); overflow: hidden; border: 1px solid var(--navy700); background: var(--navy950); aspect-ratio: 16/9.4; }
.gallery-main img, .gallery-main video { width: 100%; height: 100%; object-fit: cover; }
.gallery-main .media-kind { position: absolute; top: 14px; left: 14px; z-index: 3; }
.gallery-thumbs { display: flex; gap: 10px; margin-top: 12px; flex-wrap: wrap; }
.gallery-thumbs button {
  width: 92px; height: 60px; border-radius: 9px; overflow: hidden; cursor: pointer;
  border: 2px solid var(--navy700); background: var(--navy950); padding: 0; position: relative;
}
.gallery-thumbs button.active, .gallery-thumbs button:hover { border-color: var(--gold); }
.gallery-thumbs img { width: 100%; height: 100%; object-fit: cover; }
.gallery-thumbs .thumb-kind { position: absolute; inset: 0; display: grid; place-items: center; background: rgba(5,10,24,.5); color: var(--gold2); }
.yt-embed { position: absolute; inset: 0; display: grid; place-items: center; cursor: pointer; background-size: cover; background-position: center; }
.yt-embed::after { content: ""; position: absolute; inset: 0; background: rgba(5,10,24,.35); }
.yt-embed .play-btn { position: relative; z-index: 1; width: 74px; height: 74px; border-radius: 50%; background: linear-gradient(135deg, var(--gold2), var(--gold)); display: grid; place-items: center; color: #1A1206; box-shadow: var(--glow); }
.yt-embed .play-btn .icon { width: 30px; height: 30px; }
.buy-panel { position: sticky; top: 92px; align-self: start; border: 1px solid var(--navy700); background: linear-gradient(180deg, rgba(26,42,94,.35), rgba(16,28,68,.5)); border-radius: 16px; padding: 28px; }
.buy-panel .card-meta { margin-bottom: 10px; }
.buy-panel h1 { font-size: clamp(24px, 3vw, 32px); margin-bottom: 10px; }
.buy-panel .lead { color: var(--muted); font-size: 14.5px; }
.buy-price { display: flex; align-items: baseline; gap: 12px; margin: 18px 0 4px; }
.buy-price .price { font-size: 32px; }
.save-chip { background: rgba(74,222,128,.12); color: var(--success); border: 1px solid rgba(74,222,128,.35); font: 700 12px var(--font-body); padding: 4px 10px; border-radius: 999px; }
.buy-actions { display: flex; gap: 10px; margin: 18px 0 10px; }
.buy-actions .btn { flex: 1; }
.qty-row { display: flex; align-items: center; gap: 10px; margin: 6px 0 4px; }
.qty-row span { font-size: 13.5px; color: var(--muted); }
.qty-ctrl { display: inline-flex; align-items: center; border: 1px solid var(--navy700); border-radius: 9px; overflow: hidden; }
.qty-ctrl button { width: 36px; height: 36px; background: var(--navy800); border: 0; color: var(--ink); cursor: pointer; display: grid; place-items: center; }
.qty-ctrl button:hover { color: var(--gold2); }
.qty-ctrl input { width: 46px; height: 36px; text-align: center; background: transparent; border: 0; color: var(--cream); font: 600 15px var(--font-body); }
.buy-trust { display: grid; gap: 8px; margin-top: 16px; border-top: 1px solid var(--navy700); padding-top: 16px; }
.buy-trust div { display: flex; gap: 10px; align-items: center; color: var(--muted); font-size: 13.5px; }
.buy-trust .icon { color: var(--gold); }
.spec-table { width: 100%; border-collapse: collapse; margin-top: 6px; }
.spec-table th, .spec-table td { text-align: left; padding: 10px 12px; border-bottom: 1px solid var(--navy700); font-size: 14px; }
.spec-table th { color: var(--muted); font-weight: 500; width: 42%; }
.spec-table td { color: var(--cream); font-weight: 500; }
.product-body { display: block; padding-bottom: 60px; }
.product-body .prose { max-width: 72ch; }
.related-wrap { margin-top: 54px; border-top: 1px solid var(--navy700); padding-top: 46px; }
.related-wrap h2 { font-size: 24px; display: flex; align-items: center; gap: 10px; }
.related-wrap h2 .icon { color: var(--gold); }
.prose { color: var(--ink); max-width: 72ch; }
.prose h2, .prose h3 { margin-top: 1.4em; }
.prose ul { padding-left: 1.2em; }
.prose li { margin-bottom: .4em; }
.tag-row { display: flex; flex-wrap: wrap; gap: 8px; margin-top: 22px; }
.reviews { border-top: 1px solid var(--navy700); padding: 46px 0 60px; }
.reviews-head { display: flex; justify-content: space-between; align-items: flex-start; gap: 16px; flex-wrap: wrap; margin-bottom: 26px; }
.reviews-head h2 { display: flex; align-items: center; gap: 10px; font-size: 24px; margin: 0 0 10px; }
.reviews-head h2 .icon { color: var(--gold); }
.reviews-summary { display: flex; align-items: center; gap: 10px; }
.reviews-avg { font: 700 30px var(--font-display); color: var(--gold2); }
.review-list { display: grid; grid-template-columns: repeat(auto-fill, minmax(320px, 1fr)); gap: 18px; }
.review { border: 1px solid var(--navy700); border-radius: var(--radius); padding: 20px; background: rgba(16,28,68,.4); }
.review-head { display: flex; align-items: center; gap: 12px; margin-bottom: 12px; }
.review-stars { margin-left: auto; }
.review-who { display: flex; flex-direction: column; }
.review-who strong { color: var(--cream); font-size: 14.5px; }
.review-date { color: var(--muted); font-size: 12px; display: inline-flex; align-items: center; gap: 5px; }
.review-title { font-size: 15.5px; margin: 0 0 6px; }
.review-text { color: var(--ink); opacity: .87; font-size: 14px; margin: 0 0 12px; }
.review-verified { color: var(--success); font-size: 12px; font-weight: 600; display: inline-flex; gap: 6px; align-items: center; }
.review-pending { color: var(--gold2); border: 1px dashed rgba(227,179,65,.5); padding: 2px 9px; border-radius: 999px; font-size: 11px; font-weight: 700; margin-left: 8px; }
.reviews-note { color: var(--muted); font-size: 13px; margin-top: 20px; display: flex; gap: 8px; align-items: center; }
.avatar { width: 42px; height: 42px; border-radius: 50%; display: inline-grid; place-items: center; font: 700 15px var(--font-display); flex: none; border: 1px solid rgba(227,179,65,.35); }
.modal { position: fixed; inset: 0; z-index: 220; background: rgba(5,10,24,.78); backdrop-filter: blur(6px); display: grid; place-items: center; padding: 20px; }
.modal-card { width: min(520px, 100%); max-height: 90vh; overflow-y: auto; background: var(--navy900); border: 1px solid var(--navy700); border-radius: 18px; padding: 28px; box-shadow: var(--shadow); animation: pop .18s ease; }
@keyframes pop { from { transform: scale(.96); opacity: 0; }
}
.modal-head { display: flex; justify-content: space-between; align-items: center; }
.modal-head h2 { font-size: 20px; display: flex; gap: 10px; align-items: center; margin: 0; }
.modal-head .icon { color: var(--gold); }
.modal-sub { color: var(--muted); font-size: 14px; margin: 8px 0 20px; }
.modal label { display: block; font: 600 13.5px var(--font-body); color: var(--cream); margin-bottom: 16px; }
.modal input[type=text], .modal textarea, .qty-ctrl input, .coupon-row input, .search-input-row input {
  width: 100%; margin-top: 7px; background: var(--navy950); border: 1px solid var(--navy700);
  border-radius: 9px; color: var(--ink); padding: 11px 13px; font: 400 14.5px var(--font-body);
}
.modal input:focus, .modal textarea:focus { border-color: var(--gold); outline: none; }
.opt { color: var(--muted); font-weight: 400; }
.star-input { display: flex; gap: 6px; margin-top: 8px; }
.star-input button { background: none; border: 0; padding: 2px; cursor: pointer; color: var(--navy700); transition: transform .12s; }
.star-input button svg { width: 30px; height: 30px; fill: currentColor; }
.star-input button.on { color: var(--gold2); }
.star-input button:hover { transform: scale(1.15); }
.form-note { color: var(--muted); font-size: 12.5px; text-align: center; margin: 12px 0 0; }
.drawer-overlay { position: fixed; inset: 0; z-index: 190; background: rgba(5,10,24,.7); backdrop-filter: blur(3px); }
.cart-drawer {
  position: fixed; top: 0; right: 0; bottom: 0; z-index: 200;
  width: min(430px, 94vw); background: var(--navy950); border-left: 1px solid var(--navy700);
  display: flex; flex-direction: column; animation: slideR .22s ease;
}
@keyframes slideR { from { transform: translateX(40px); opacity: 0; }
}
.cart-head { display: flex; justify-content: space-between; align-items: center; padding: 20px 22px; border-bottom: 1px solid var(--navy700); }
.cart-head h2 { margin: 0; font-size: 19px; display: flex; gap: 10px; align-items: center; }
.cart-head .icon { color: var(--gold); }
.cart-demo-note { margin: 14px 18px 0; padding: 10px 13px; border: 1px dashed rgba(227,179,65,.5); border-radius: 10px; color: var(--gold2); font-size: 12.5px; display: flex; gap: 8px; align-items: flex-start; }
.cart-items { flex: 1; overflow-y: auto; padding: 16px 18px; display: flex; flex-direction: column; gap: 12px; }
.cart-item { display: grid; grid-template-columns: 74px 1fr auto; gap: 13px; border: 1px solid var(--navy700); border-radius: 12px; padding: 12px; background: rgba(16,28,68,.4); }
.cart-item img { width: 74px; height: 56px; object-fit: cover; border-radius: 8px; }
.cart-item-name { font: 600 14px var(--font-body); color: var(--cream); margin-bottom: 4px; }
.cart-item-price { color: var(--gold2); font: 700 14.5px var(--font-display); }
.cart-item-side { display: flex; flex-direction: column; align-items: flex-end; justify-content: space-between; }
.cart-item .qty-ctrl button { width: 26px; height: 26px; }
.cart-item .qty-ctrl input { width: 32px; height: 26px; font-size: 13px; margin: 0; }
.cart-remove { background: none; border: 0; color: var(--muted); cursor: pointer; padding: 4px; }
.cart-remove:hover { color: var(--danger); }
.cart-empty { flex: 1; display: none; flex-direction: column; align-items: center; justify-content: center; gap: 14px; color: var(--muted); }
.cart-empty .icon { width: 44px; height: 44px; color: var(--navy700); }
.cart-drawer.is-empty .cart-empty { display: flex; }
.cart-drawer.is-empty .cart-items, .cart-drawer.is-empty .cart-foot { display: none; }
.cart-foot { border-top: 1px solid var(--navy700); padding: 18px 22px; }
.coupon-row { display: flex; gap: 9px; margin-bottom: 14px; }
.coupon-row input { margin: 0; flex: 1; }
.cart-total { display: flex; justify-content: space-between; align-items: baseline; font-size: 15px; }
.cart-total strong { font: 700 24px var(--font-display); color: var(--gold2); }
.cart-tax-note { color: var(--muted); font-size: 12px; margin: 6px 0 14px; }
.cart-secure { color: var(--muted); font-size: 12px; text-align: center; margin: 10px 0 0; display: flex; gap: 6px; justify-content: center; align-items: center; }
.cart-secure .icon { color: var(--success); }
.search-overlay { position: fixed; inset: 0; z-index: 210; background: rgba(5,10,24,.8); backdrop-filter: blur(8px); padding: 9vh 20px 20px; }
.search-box { width: min(640px, 100%); margin: 0 auto; background: var(--navy900); border: 1px solid var(--navy700); border-radius: 16px; box-shadow: var(--shadow); overflow: hidden; animation: pop .18s ease; }
.search-input-row { display: flex; align-items: center; gap: 12px; padding: 16px 18px; border-bottom: 1px solid var(--navy700); }
.search-input-row .icon { color: var(--gold); width: 20px; height: 20px; }
.search-input-row input { margin: 0; border: 0; background: none; font-size: 16.5px; padding: 6px 0; }
.search-input-row input:focus { outline: none; }
.search-results { max-height: 56vh; overflow-y: auto; padding: 10px; }
.search-group { padding: 8px 10px 4px; color: var(--muted); font: 700 11.5px var(--font-body); letter-spacing: .1em; text-transform: uppercase; }
.search-hit { display: flex; gap: 13px; align-items: center; padding: 10px; border-radius: 10px; }
.search-hit:hover, .search-hit.active { background: var(--navy800); }
.search-hit img { width: 58px; height: 42px; object-fit: cover; border-radius: 7px; flex: none; }
.search-hit-title { color: var(--cream); font-weight: 600; font-size: 14.5px; }
.search-hit-sub { color: var(--muted); font-size: 12.5px; }
.search-hit .price { margin-left: auto; font-size: 15px; flex: none; }
.search-none { padding: 30px; text-align: center; color: var(--muted); }
.search-hint { padding: 10px 18px; border-top: 1px solid var(--navy700); color: var(--muted); font-size: 12px; }
mark { background: rgba(227,179,65,.3); color: var(--gold2); border-radius: 3px; padding: 0 1px; }
.filter-bar { display: flex; flex-wrap: wrap; gap: 10px; align-items: center; margin-bottom: 30px; }
.filter-bar select {
  background: var(--navy950); color: var(--ink); border: 1px solid var(--navy700);
  border-radius: 9px; padding: 10px 13px; font: 500 14px var(--font-body); cursor: pointer;
}
.filter-bar select:focus { border-color: var(--gold); outline: none; }
.filter-count { color: var(--muted); font-size: 13.5px; margin-left: auto; }
.blog-card-meta { display: flex; align-items: center; gap: 7px; color: var(--muted); font-size: 12.5px; }
.blog-card-meta .icon { width: 1em; height: 1em; color: var(--gold); }
.blog-card-meta .dot { opacity: .5; }
.blog-card-tags { display: flex; flex-wrap: wrap; gap: 7px; }
.post-hero { position: relative; border-radius: 18px; overflow: hidden; border: 1px solid var(--navy700); margin: 26px 0 34px; }
.post-hero img { width: 100%; max-height: 440px; object-fit: cover; }
.post-head { max-width: 780px; margin: 30px auto 0; text-align: center; }
.post-head h1 { font-size: clamp(28px, 4vw, 42px); }
.post-meta { display: flex; justify-content: center; gap: 14px; flex-wrap: wrap; color: var(--muted); font-size: 13.5px; margin-top: 14px; }
.post-meta span { display: inline-flex; align-items: center; gap: 6px; }
.post-meta .icon { color: var(--gold); }
.post-body { max-width: 760px; margin: 36px auto 0; font-size: 16.5px; }
.post-body h2 { font-size: 24px; margin-top: 1.7em; }
.post-body ul { padding-left: 1.25em; }
.post-body li { margin-bottom: .45em; }
.post-body a { text-decoration: underline; text-underline-offset: 3px; }
.post-tags { max-width: 760px; margin: 34px auto 0; display: flex; gap: 8px; flex-wrap: wrap; }
.share-row { max-width: 760px; margin: 22px auto 0; display: flex; gap: 10px; align-items: center; color: var(--muted); font-size: 13.5px; }
.faq details { border: 1px solid var(--navy700); border-radius: 12px; background: rgba(16,28,68,.4); margin-bottom: 12px; overflow: hidden; }
.faq summary { cursor: pointer; padding: 17px 20px; font: 600 15.5px var(--font-body); color: var(--cream); list-style: none; display: flex; justify-content: space-between; align-items: center; gap: 12px; }
.faq summary::-webkit-details-marker { display: none; }
.faq summary .icon { color: var(--gold); transition: transform .2s; flex: none; }
.faq details[open] summary .icon { transform: rotate(180deg); }
.faq details > div { padding: 0 20px 18px; color: var(--muted); font-size: 14.5px; }
.site-footer { border-top: 1px solid var(--navy700); background: var(--navy950); margin-top: 40px; }
.footer-grid { display: grid; grid-template-columns: 1.6fr 1fr 1fr 1fr; gap: 34px; padding: 56px 0 34px; }
.footer-brand p { color: var(--muted); font-size: 14px; max-width: 320px; margin: 14px 0 18px; }
.socials { display: flex; gap: 9px; }
.footer-col { display: flex; flex-direction: column; gap: 9px; }
.footer-col h4 { color: var(--cream); font-size: 13px; letter-spacing: .1em; text-transform: uppercase; margin-bottom: 6px; }
.footer-col a { color: var(--muted); font-size: 14px; }
.footer-col a:hover { color: var(--gold2); }
.footer-bottom { border-top: 1px solid var(--navy700); padding: 22px 0 30px; text-align: center; }
.footer-bottom p { color: var(--muted); font-size: 13px; margin: 0 0 6px; }
.footer-legal { opacity: .7; font-size: 12px !important; }
.pay-badges { display: flex; justify-content: center; gap: 8px; margin-top: 12px; flex-wrap: wrap; }
.pay-badges span { border: 1px solid var(--navy700); border-radius: 6px; padding: 3px 10px; font: 700 10.5px var(--font-body); letter-spacing: .06em; color: var(--muted); }
.to-top { position: fixed; right: 22px; bottom: 22px; z-index: 150; width: 46px; height: 46px; border-radius: 12px; border: 1px solid var(--navy700); background: var(--navy800); color: var(--gold2); cursor: pointer; display: grid; place-items: center; box-shadow: var(--shadow); }
.to-top:hover { border-color: var(--gold); }
.toast-wrap { position: fixed; bottom: 22px; left: 50%; transform: translateX(-50%); z-index: 300; display: flex; flex-direction: column; gap: 10px; align-items: center; pointer-events: none; }
.toast { background: var(--navy800); border: 1px solid var(--gold); color: var(--cream); padding: 12px 20px; border-radius: 12px; box-shadow: var(--shadow); font: 600 14px var(--font-body); display: flex; gap: 9px; align-items: center; animation: pop .18s ease; }
.toast .icon { color: var(--gold2); }
.lightbox { position: fixed; inset: 0; z-index: 230; background: rgba(5,10,24,.92); display: grid; place-items: center; padding: 30px; }
.lightbox img { max-width: 100%; max-height: 100%; border-radius: 12px; box-shadow: var(--shadow); }
.lightbox-close { position: absolute; top: 20px; right: 20px; }
.reveal { opacity: 0; transform: translateY(18px); transition: opacity .5s ease, transform .5s ease; }
.reveal.in { opacity: 1; transform: none; }
.page-head { padding: 44px 0 8px; }
.page-head h1 { font-size: clamp(28px, 4vw, 40px); }
.page-head p { color: var(--muted); max-width: 640px; }
.occasion-emoji { font-size: 44px; }
.empty-state { text-align: center; padding: 70px 20px; color: var(--muted); border: 1px dashed var(--navy700); border-radius: 16px; }
.empty-state .icon { width: 40px; height: 40px; margin-bottom: 12px; color: var(--navy700); }
.notice-band { border: 1px dashed rgba(227,179,65,.5); background: rgba(227,179,65,.06); color: var(--gold2); border-radius: 12px; padding: 13px 18px; font-size: 13.5px; display: flex; gap: 10px; align-items: center; margin-bottom: 26px; }
@media (max-width: 1020px) {
  .product-layout { grid-template-columns: 1fr; }
.buy-panel { position: static; }
.footer-grid { grid-template-columns: 1fr 1fr; }
}
@media (max-width: 760px) {
  .main-nav { display: none; }
.menu-btn { display: inline-flex; }
.hide-md { display: none; }
.hero-in { padding: 64px 0 56px; }
.hero-stats { gap: 22px; }
.section { padding: 48px 0; }
.cta-band { padding: 34px 22px; }
.container { width: calc(100% - 36px); }
.mobile-nav { inset: 0 12% 0 0; }
.header-in { gap: 12px; height: 62px; }
.brand-name { font-size: 17px; letter-spacing: .1em; }
.brand img { width: 28px; height: 28px; }
.icon-btn { width: 40px; height: 40px; }
.header-actions { gap: 8px; }
.announce-in { flex-wrap: wrap; row-gap: 4px; padding: 8px 0; }
}
@media (max-width: 520px) {
  .footer-grid { grid-template-columns: 1fr; }
.buy-actions { flex-direction: column; }
.announce-link { display: none; }
.hero h1 { font-size: 30px; }
}
@media (prefers-reduced-motion: reduce) {
  *, *::before, *::after { animation-duration: .001s !important; transition-duration: .001s !important; scroll-behavior: auto !important; }
.reveal { opacity: 1; transform: none; }
}
#fx-canvas {
  position: fixed; inset: 0; width: 100%; height: 100%;
  pointer-events: none; z-index: 2;
}
.welcome-modal .modal-card { width: min(580px, 100%); }
.welcome-badge {
  width: 54px; height: 54px; border-radius: 16px; display: grid; place-items: center;
  background: linear-gradient(135deg, rgba(227,179,65,.25), rgba(227,179,65,.08));
  border: 1px solid rgba(227,179,65,.45); margin-bottom: 16px;
}
.welcome-badge .icon { width: 26px; height: 26px; color: var(--gold); }
.rules-inline {
  max-height: 240px; overflow-y: auto; background: var(--navy950);
  border: 1px solid var(--navy700); border-radius: 10px; padding: 14px 20px; margin: 14px 0;
}
.rules-inline li, .rules-full li { margin-bottom: 9px; font-size: 14px; color: var(--ink); line-height: 1.55; }
.rules-inline li::marker, .rules-full li::marker { color: var(--gold); font-weight: 700; }
.welcome-actions { display: flex; flex-direction: column; gap: 10px; margin-top: 18px; }
.rules-full { max-height: 55vh; overflow-y: auto; padding: 4px 4px 4px 22px; margin: 14px 0; }
.rules-foot { color: var(--muted); font-size: 12.5px; margin: 0; }
.service-card { display: flex; flex-direction: column; gap: 10px; }
.service-card .icon { width: 30px; height: 30px; color: var(--gold); }
.service-from { margin-top: auto; display: flex; align-items: center; justify-content: space-between; gap: 10px; padding-top: 12px; border-top: 1px solid var(--navy700); }
.service-from span { color: var(--muted); font-size: 13px; }
.service-from strong { font: 700 17px var(--font-display); color: var(--gold2); }
.steps { counter-reset: step; display: grid; gap: 14px; max-width: 760px; }
.step { display: flex; gap: 16px; align-items: flex-start; border: 1px solid var(--navy700); border-radius: 12px; padding: 18px; background: rgba(16,28,68,.4); }
.step::before {
  counter-increment: step; content: counter(step);
  width: 34px; height: 34px; flex: none; border-radius: 10px; display: grid; place-items: center;
  background: linear-gradient(135deg, var(--gold2), var(--gold)); color: #1A1206;
  font: 700 16px var(--font-display);
}
.step h3 { margin: 0 0 4px; font-size: 16px; }
.step p { margin: 0; color: var(--muted); font-size: 14px; }
.brief-form { max-width: 720px; }
.brief-form label { display: block; font: 600 13.5px var(--font-body); color: var(--cream); margin-bottom: 16px; }
.brief-form input[type=text], .brief-form textarea, .brief-form select {
  width: 100%; margin-top: 7px; background: var(--navy950); border: 1px solid var(--navy700);
  border-radius: 9px; color: var(--ink); padding: 11px 13px; font: 400 14.5px var(--font-body);
}
.brief-form input:focus, .brief-form textarea:focus, .brief-form select:focus { border-color: var(--gold); outline: none; }
.brief-rules-row { display: flex; gap: 10px; align-items: flex-start; border: 1px solid var(--navy700); border-radius: 10px; padding: 14px; background: rgba(16,28,68,.4); margin-bottom: 18px; }
.brief-rules-row input { margin-top: 3px; accent-color: var(--gold); width: 17px; height: 17px; }
.brief-rules-row span { font-size: 13.5px; color: var(--muted); }
.brief-rules-row button { background: none; border: 0; color: var(--gold2); cursor: pointer; font: 600 13.5px var(--font-body); padding: 0; text-decoration: underline; text-underline-offset: 3px; }
.brief-actions { display: flex; gap: 12px; flex-wrap: wrap; }
.admin-body { background: var(--navy950); min-height: 100vh; }
.admin-login-wrap { min-height: 100vh; display: grid; place-items: center; padding: 20px; }
.admin-login-card {
  width: min(430px, 100%); background: var(--navy900); border: 1px solid var(--navy700);
  border-radius: 18px; padding: 34px; box-shadow: var(--shadow);
}
.admin-login-card h1 { font-size: 22px; display: flex; gap: 10px; align-items: center; margin-bottom: 6px; }
.admin-login-card h1 .icon { color: var(--gold); }
.admin-login-card .sub { color: var(--muted); font-size: 13.5px; margin-bottom: 22px; }
.admin-login-card label { display: block; font: 600 13px var(--font-body); color: var(--cream); margin-bottom: 14px; }
.admin-login-card input {
  width: 100%; margin-top: 6px; background: var(--navy950); border: 1px solid var(--navy700);
  border-radius: 9px; color: var(--ink); padding: 11px 13px; font: 400 14.5px var(--font-body);
}
.admin-login-card input:focus { border-color: var(--gold); outline: none; }
.admin-login-err { color: var(--danger); font-size: 13px; min-height: 18px; margin: 4px 0 10px; }
.admin-lock { color: var(--gold2); font-size: 13px; margin-top: 10px; text-align: center; }
.admin-shell { display: grid; grid-template-columns: 235px 1fr; min-height: 100vh; }
.admin-side { border-right: 1px solid var(--navy700); padding: 22px 16px; display: flex; flex-direction: column; gap: 4px; background: var(--navy900); position: sticky; top: 0; height: 100vh; overflow-y: auto; }
.admin-side .brand { margin-bottom: 18px; padding-left: 6px; }
.admin-tab-btn {
  display: flex; align-items: center; gap: 11px; width: 100%; text-align: left;
  background: none; border: 0; color: var(--muted); font: 600 14px var(--font-body);
  padding: 11px 12px; border-radius: 10px; cursor: pointer;
}
.admin-tab-btn:hover { background: var(--navy800); color: var(--ink); }
.admin-tab-btn.active { background: rgba(227,179,65,.13); color: var(--gold2); }
.admin-tab-btn .icon { width: 18px; height: 18px; }
.admin-side-foot { margin-top: auto; display: flex; flex-direction: column; gap: 4px; border-top: 1px solid var(--navy700); padding-top: 12px; }
.admin-main { padding: 30px 34px; max-width: 1080px; }
.admin-main h1 { font-size: 24px; margin-bottom: 4px; }
.admin-main .admin-sub { color: var(--muted); font-size: 14px; margin-bottom: 26px; }
.admin-card { border: 1px solid var(--navy700); border-radius: 14px; background: var(--navy900); padding: 22px; margin-bottom: 18px; }
.admin-card h2 { font-size: 16.5px; margin-bottom: 14px; display: flex; gap: 9px; align-items: center; }
.admin-card h2 .icon { color: var(--gold); }
.admin-grid { display: grid; grid-template-columns: 1fr 1fr; gap: 14px; }
.admin-field { display: block; font: 600 12.5px var(--font-body); color: var(--cream); }
.admin-field input, .admin-field select, .admin-field textarea {
  width: 100%; margin-top: 6px; background: var(--navy950); border: 1px solid var(--navy700);
  border-radius: 9px; color: var(--ink); padding: 10px 12px; font: 400 14px var(--font-body);
}
.admin-field input:focus, .admin-field select:focus, .admin-field textarea:focus { border-color: var(--gold); outline: none; }
.admin-field .hint { display: block; color: var(--muted); font-size: 12px; font-weight: 400; margin-top: 5px; }
.admin-row { display: flex; gap: 12px; align-items: center; flex-wrap: wrap; }
.admin-table { width: 100%; border-collapse: collapse; }
.admin-table th { text-align: left; color: var(--muted); font: 600 11.5px var(--font-body); letter-spacing: .08em; text-transform: uppercase; padding: 8px 10px; border-bottom: 1px solid var(--navy700); }
.admin-table td { padding: 10px; border-bottom: 1px solid rgba(26,42,94,.6); font-size: 13.5px; vertical-align: middle; }
.admin-table img { width: 52px; height: 34px; object-fit: cover; border-radius: 6px; }
.admin-table input[type=text] { background: var(--navy950); border: 1px solid var(--navy700); border-radius: 7px; color: var(--ink); padding: 7px 10px; font-size: 13px; width: 100%; }
.admin-table input[type=checkbox] { width: 17px; height: 17px; accent-color: var(--gold); }
.admin-pill { display: inline-block; padding: 3px 10px; border-radius: 999px; font: 700 11px var(--font-body); background: rgba(227,179,65,.13); color: var(--gold2); border: 1px solid rgba(227,179,65,.35); }
.fx-mode-grid { display: grid; grid-template-columns: repeat(auto-fill, minmax(120px, 1fr)); gap: 10px; }
.fx-mode-btn {
  border: 1px solid var(--navy700); background: var(--navy950); border-radius: 12px;
  padding: 16px 10px; cursor: pointer; color: var(--ink); font: 600 13px var(--font-body);
  display: flex; flex-direction: column; align-items: center; gap: 8px; transition: border-color .15s, background .15s;
}
.fx-mode-btn:hover { border-color: var(--gold); }
.fx-mode-btn.active { border-color: var(--gold); background: rgba(227,179,65,.1); color: var(--gold2); }
.fx-mode-btn .fx-emoji { font-size: 24px; }
.admin-danger { border-color: rgba(248,113,113,.4); }
.admin-note { border: 1px dashed rgba(227,179,65,.5); background: rgba(227,179,65,.06); border-radius: 10px; padding: 13px 16px; color: var(--gold2); font-size: 13px; line-height: 1.6; }
.admin-note code { font-size: 12px; }
.admin-pre { background: var(--navy950); border: 1px solid var(--navy700); border-radius: 10px; padding: 14px; font: 12.5px/1.6 ui-monospace, Menlo, monospace; color: var(--ink); overflow-x: auto; white-space: pre-wrap; max-height: 320px; overflow-y: auto; }
.admin-blog-row { display: flex; align-items: center; gap: 12px; padding: 12px; border: 1px solid var(--navy700); border-radius: 10px; margin-bottom: 10px; background: rgba(16,28,68,.35); }
.admin-blog-row img { width: 74px; height: 48px; object-fit: cover; border-radius: 7px; }
.admin-blog-row .t { flex: 1; }
.admin-blog-row .t strong { color: var(--cream); font-size: 14px; display: block; }
.admin-blog-row .t span { color: var(--muted); font-size: 12px; }
.admin-switch { position: relative; display: inline-flex; align-items: center; gap: 9px; cursor: pointer; font-size: 13.5px; color: var(--ink); }
.admin-switch input { display: none; }
.admin-switch .sw { width: 40px; height: 22px; border-radius: 999px; background: var(--navy700); position: relative; transition: background .15s; flex: none; }
.admin-switch .sw::after { content: ""; position: absolute; top: 3px; left: 3px; width: 16px; height: 16px; border-radius: 50%; background: var(--ink); transition: transform .15s; }
.admin-switch input:checked + .sw { background: var(--gold); }
.admin-switch input:checked + .sw::after { transform: translateX(18px); background: #1A1206; }
@media (max-width: 900px) {
  .admin-shell { grid-template-columns: 1fr; }
.admin-side { position: static; height: auto; flex-direction: row; flex-wrap: wrap; }
.admin-grid { grid-template-columns: 1fr; }
.admin-main { padding: 20px; }
}
:root {
  --navy950: #050A18;
  --navy900: #0A1230;
  --navy800: #101C44;
  --navy700: #1A2A5E;
  --gold: #E3B341;
  --gold2: #F5D67B;
  --cream: #F4EDDA;
  --ink: #EAEFFD;
  --muted: #9AA7C9;
  --success: #4ADE80;
  --danger: #F87171;
}
#site-bg {
  position: fixed;
  inset: 0;
  z-index: 0;
  pointer-events: none;
  overflow: hidden;
  transition: opacity .6s ease;
}
#site-bg .site-bg-canvas {
  display: block;
  width: 100%;
  height: 100%;
  pointer-events: none;
}
#site-bg::after {
  content: "";
  position: absolute;
  inset: 0;
  background: radial-gradient(120% 90% at 50% 0%, transparent 40%, rgba(5, 10, 24, .55) 100%);
  pointer-events: none;
}
#site-bg[data-effect="none"] { display: none; }
body > .announce,
body > .site-header,
body > main,
body > #main,
body > footer,
body > .site-footer,
body > #mobile-nav { position: relative; z-index: 1; }
body > .modal,
body > .drawer-overlay,
body > .cart-drawer,
body > #search-overlay,
body > #lightbox,
body > .toasts,
body > [data-toasts],
body > .to-top { z-index: 130; }
body > .skip-link { position: absolute; z-index: 300; }
body > .skip-link:focus,
body > .skip-link:focus-visible { position: fixed; left: 0; top: 0; }
body.modal-open { overflow: hidden; }
@media (prefers-reduced-motion: reduce) {
  #site-bg { transition: none; }
}
.modal {
  position: fixed;
  inset: 0;
  z-index: 120;
  display: grid;
  place-items: center;
  padding: 24px 16px;
}
.modal[hidden] { display: none; }
.modal-backdrop {
  position: absolute;
  inset: 0;
  background: rgba(3, 7, 18, .78);
  backdrop-filter: blur(6px);
  -webkit-backdrop-filter: blur(6px);
}
.modal-card {
  position: relative;
  width: 100%;
  max-width: 520px;
  max-height: min(86vh, 780px);
  display: flex;
  flex-direction: column;
  background: linear-gradient(180deg, var(--navy800) 0%, var(--navy900) 100%);
  border: 1px solid rgba(227, 179, 65, .22);
  border-radius: var(--radius);
  box-shadow: var(--shadow), var(--glow);
  overflow: hidden;
  animation: modal-in .22s cubic-bezier(.2, .8, .2, 1);
}
.modal-card.modal-lg { max-width: 760px; }
@keyframes modal-in {
  from { opacity: 0; transform: translateY(14px) scale(.985); }
to   { opacity: 1; transform: none; }
}
@media (prefers-reduced-motion: reduce) {
  .modal-card { animation: none; }
}
.modal-head {
  display: flex;
  align-items: center;
  justify-content: space-between;
  gap: 16px;
  padding: 18px 20px;
  border-bottom: 1px solid rgba(154, 167, 201, .16);
  flex: 0 0 auto;
}
.modal-head h3 {
  margin: 0;
  font-family: var(--font-display);
  font-size: 1.15rem;
  color: var(--cream);
}
.modal-body {
  padding: 20px;
  overflow-y: auto;
  overscroll-behavior: contain;
  flex: 1 1 auto;
}
.modal-foot {
  padding: 14px 20px;
  border-top: 1px solid rgba(154, 167, 201, .16);
  display: flex;
  justify-content: flex-end;
  gap: 10px;
  flex: 0 0 auto;
}
.rules-body .rules-sec + .rules-sec {
  margin-top: 24px;
  padding-top: 24px;
  border-top: 1px solid rgba(154, 167, 201, .14);
}
.rules-body h4 {
  margin: 0 0 8px;
  font-family: var(--font-display);
  font-size: 1rem;
  color: var(--gold2);
}
.rules-body p { margin: 0 0 10px; color: var(--muted); font-size: .94rem; line-height: 1.6; }
.rules-body ul { margin: 0; padding-left: 20px; }
.rules-body li {
  color: var(--ink);
  font-size: .94rem;
  line-height: 1.65;
  margin-bottom: 6px;
}
.rules-body li::marker { color: var(--gold); }
.link-btn {
  background: none;
  border: 0;
  padding: 0;
  font: inherit;
  color: var(--gold2);
  text-decoration: underline;
  text-underline-offset: 2px;
  cursor: pointer;
}
.link-btn:hover { color: var(--cream); }
.link-btn:focus-visible { outline: 2px solid var(--gold); outline-offset: 3px; border-radius: 3px; }
.rules-cta {
  display: inline-flex;
  align-items: center;
  gap: 10px;
  padding: 14px 18px;
  min-height: 48px;
  border-radius: var(--radius-sm);
  border: 1px solid rgba(227, 179, 65, .35);
  background: rgba(227, 179, 65, .08);
  color: var(--cream);
  font-family: var(--font-display);
  font-weight: 600;
  cursor: pointer;
}
.rules-cta:hover { background: rgba(227, 179, 65, .16); border-color: var(--gold); }
.rules-cta:focus-visible { outline: 2px solid var(--gold); outline-offset: 2px; }
.modal-welcome { z-index: 130; }
.welcome-body { padding: 32px 28px 26px; text-align: center; }
.welcome-mark {
  width: 54px;
  height: 54px;
  margin: 0 auto 16px;
  display: grid;
  place-items: center;
  border-radius: 14px;
  color: var(--gold2);
  background: rgba(227, 179, 65, .1);
  border: 1px solid rgba(227, 179, 65, .3);
}
.welcome-mark svg { width: 26px; height: 26px; }
.welcome-body h2 {
  margin: 0 0 10px;
  font-family: var(--font-display);
  font-size: 1.5rem;
  color: var(--cream);
}
.welcome-lead {
  margin: 0 auto 18px;
  max-width: 46ch;
  color: var(--muted);
  font-size: .96rem;
  line-height: 1.65;
}
.welcome-points {
  margin: 0 0 20px;
  padding: 0;
  list-style: none;
  text-align: left;
  display: grid;
  gap: 10px;
}
.welcome-points li {
  position: relative;
  padding-left: 26px;
  color: var(--ink);
  font-size: .92rem;
  line-height: 1.55;
}
.welcome-points li::before {
  content: "";
  position: absolute;
  left: 4px;
  top: .5em;
  width: 8px;
  height: 8px;
  border-radius: 50%;
  background: var(--gold);
  box-shadow: 0 0 10px rgba(227, 179, 65, .7);
}
.consent-row {
  display: flex;
  align-items: flex-start;
  gap: 12px;
  text-align: left;
  padding: 14px;
  margin-bottom: 18px;
  border-radius: var(--radius-sm);
  border: 1px solid rgba(154, 167, 201, .22);
  background: rgba(5, 10, 24, .5);
  color: var(--ink);
  font-size: .9rem;
  line-height: 1.55;
  cursor: pointer;
}
.consent-row input[type="checkbox"] {
  width: 20px;
  height: 20px;
  margin-top: 1px;
  accent-color: var(--gold);
  flex: 0 0 auto;
  cursor: pointer;
}
.welcome-actions { display: grid; gap: 10px; }
.welcome-actions .btn[disabled] { opacity: .45; cursor: not-allowed; }
.badge-os {
  background: rgba(74, 222, 128, .14);
  color: #86EFAC;
  border: 1px solid rgba(74, 222, 128, .4);
}
.badge-custom {
  background: rgba(94, 159, 232, .14);
  color: #9EC5F5;
  border: 1px solid rgba(94, 159, 232, .42);
}
.chip-tag {
  display: inline-flex;
  align-items: center;
  padding: 4px 10px;
  border-radius: 999px;
  font-size: .74rem;
  letter-spacing: .02em;
  text-decoration: none;
  color: var(--muted);
  background: rgba(26, 42, 94, .5);
  border: 1px solid rgba(154, 167, 201, .2);
}
.chip-tag:hover { color: var(--cream); border-color: rgba(227, 179, 65, .5); }
.nav-badge {
  margin-left: 6px;
  padding: 2px 6px;
  border-radius: 999px;
  font-size: .62rem;
  font-weight: 700;
  letter-spacing: .04em;
  text-transform: uppercase;
  color: var(--navy950);
  background: var(--gold);
}
.sale-ribbon {
  position: absolute;
  top: 10px;
  left: 10px;
  z-index: 2;
  padding: 4px 9px;
  border-radius: 999px;
  font-family: var(--font-display);
  font-size: .74rem;
  font-weight: 700;
  color: #fff;
  background: linear-gradient(135deg, #E56458, #C2382B);
  box-shadow: 0 2px 10px rgba(0, 0, 0, .4);
}
.os-note {
  margin: 0 0 14px;
  padding: 12px 14px;
  border-radius: var(--radius-sm);
  border: 1px solid rgba(74, 222, 128, .3);
  background: rgba(74, 222, 128, .07);
  color: #BBF7D0;
  font-size: .89rem;
  line-height: 1.6;
}
.services-grid,
.plans-grid {
  display: grid;
  gap: 20px;
  grid-template-columns: repeat(auto-fit, minmax(min(100%, 330px), 1fr));
}
.service-card,
.plan-card {
  display: flex;
  flex-direction: column;
  gap: 12px;
  padding: 24px;
  border-radius: var(--radius);
  border: 1px solid rgba(154, 167, 201, .18);
  background: linear-gradient(180deg, rgba(16, 28, 68, .9), rgba(10, 18, 48, .9));
}
.service-card:hover,
.plan-card:hover { border-color: rgba(227, 179, 65, .42); }
.service-icon {
  width: 44px;
  height: 44px;
  display: grid;
  place-items: center;
  border-radius: 12px;
  font-size: 1.25rem;
  color: var(--gold2);
  background: rgba(227, 179, 65, .1);
  border: 1px solid rgba(227, 179, 65, .28);
}
.service-card h3,
.plan-card h3 {
  margin: 0;
  font-family: var(--font-display);
  font-size: 1.1rem;
  color: var(--cream);
}
.service-card p { margin: 0; color: var(--muted); font-size: .93rem; line-height: 1.62; }
.service-price { color: var(--ink) !important; }
.service-price strong { color: var(--gold2); }
.service-card ul,
.plan-card ul {
  margin: 0;
  padding: 0;
  list-style: none;
  display: grid;
  gap: 8px;
}
.service-card li,
.plan-card li {
  position: relative;
  padding-left: 22px;
  color: var(--ink);
  font-size: .89rem;
  line-height: 1.5;
}
.service-card li::before,
.plan-card li::before {
  content: "✓";
  position: absolute;
  left: 0;
  color: var(--gold);
  font-weight: 700;
}
.service-foot { margin-top: auto; padding-top: 8px; }
.plan-card { position: relative; }
.plan-card.featured {
  border-color: rgba(227, 179, 65, .5);
  box-shadow: var(--glow);
}
.plan-flag {
  position: absolute;
  top: -11px;
  left: 24px;
  padding: 3px 10px;
  border-radius: 999px;
  font-size: .68rem;
  font-weight: 700;
  letter-spacing: .06em;
  text-transform: uppercase;
  color: var(--navy950);
  background: var(--gold);
}
.plan-price { margin: 0; display: flex; align-items: baseline; gap: 4px; }
.plan-price strong {
  font-family: var(--font-display);
  font-size: 1.9rem;
  color: var(--cream);
}
.plan-period { color: var(--muted); font-size: .88rem; }
.plan-tag { margin: 0; color: var(--muted); font-size: .9rem; }
.plan-card .btn { margin-top: auto; }
.notice {
  display: flex;
  gap: 14px;
  padding: 18px 20px;
  border-radius: var(--radius);
  border: 1px solid rgba(227, 179, 65, .28);
  background: rgba(227, 179, 65, .06);
  color: var(--ink);
  font-size: .94rem;
  line-height: 1.65;
}
.notice svg { flex: 0 0 auto; width: 22px; height: 22px; color: var(--gold2); }
.notice-danger { border-color: rgba(248, 113, 113, .35); background: rgba(248, 113, 113, .07); }
.notice-danger svg { color: #FCA5A5; }
.steps { counter-reset: step; display: grid; gap: 16px; margin: 0; padding: 0; list-style: none; }
.steps li {
  counter-increment: step;
  position: relative;
  padding: 16px 18px 16px 60px;
  border-radius: var(--radius);
  border: 1px solid rgba(154, 167, 201, .18);
  background: rgba(16, 28, 68, .6);
}
.steps li::before {
  content: counter(step);
  position: absolute;
  left: 18px;
  top: 16px;
  width: 28px;
  height: 28px;
  display: grid;
  place-items: center;
  border-radius: 50%;
  font-family: var(--font-display);
  font-weight: 700;
  font-size: .85rem;
  color: var(--navy950);
  background: var(--gold);
}
.steps strong { display: block; color: var(--cream); font-family: var(--font-display); margin-bottom: 4px; }
.steps p { margin: 0; color: var(--muted); font-size: .92rem; line-height: 1.6; }
.post-body h2 {
  margin: 32px 0 12px;
  font-family: var(--font-display);
  font-size: 1.4rem;
  color: var(--cream);
}
.post-body h3 {
  margin: 26px 0 10px;
  font-family: var(--font-display);
  font-size: 1.15rem;
  color: var(--cream);
}
.post-body p { margin: 0 0 16px; color: var(--ink); line-height: 1.75; }
.post-body ul, .post-body ol { margin: 0 0 18px; padding-left: 22px; color: var(--ink); }
.post-body li { margin-bottom: 8px; line-height: 1.7; }
.post-body blockquote {
  margin: 0 0 18px;
  padding: 14px 18px;
  border-left: 3px solid var(--gold);
  background: rgba(227, 179, 65, .06);
  color: var(--cream);
  font-style: italic;
}
.post-body pre {
  margin: 0 0 18px;
  padding: 16px;
  border-radius: var(--radius-sm);
  border: 1px solid rgba(154, 167, 201, .18);
  background: rgba(5, 10, 24, .8);
  overflow-x: auto;
}
.post-body pre code { color: #C8D6F5; font-size: .86rem; font-family: ui-monospace, Menlo, Consolas, monospace; }
.post-body img { max-width: 100%; height: auto; border-radius: var(--radius-sm); margin: 0 0 18px; }
.post-body figure { margin: 0 0 18px; }
.post-body figcaption { color: var(--muted); font-size: .84rem; margin-top: 6px; }
.post-meta { display: flex; flex-wrap: wrap; gap: 12px; color: var(--muted); font-size: .86rem; margin-bottom: 18px; }
.muted { color: var(--muted); }
.section-head { max-width: 68ch; margin-bottom: 28px; }
.section-head h2 { margin: 0 0 10px; font-family: var(--font-display); font-size: 1.7rem; color: var(--cream); }
.section-head p { margin: 0; color: var(--muted); line-height: 1.7; }
.stack-16 > * + * { margin-top: 16px; }
.stack-24 > * + * { margin-top: 24px; }
@media (max-width: 560px) {
  .modal { padding: 12px; }
.welcome-body { padding: 24px 18px 20px; }
.welcome-body h2 { font-size: 1.28rem; }
.modal-card { max-height: 92vh; }
}
.section-head-block { display: block; max-width: 72ch; }
.section-head-block h2 { margin: 0 0 10px; }
.section-head-block p { margin: 0; max-width: 72ch; }
.badge-os,
.badge-custom {
  position: static;
  display: inline-flex;
  align-items: center;
  gap: 6px;
  padding: 3px 9px;
  border-radius: 999px;
  font-family: var(--font-display);
  font-size: .66rem;
  font-weight: 700;
  letter-spacing: .05em;
  text-transform: uppercase;
  line-height: 1.6;
  white-space: nowrap;
}
.product-card-media .badge-os,
.card-media .badge-os { position: absolute; top: 12px; left: 12px; z-index: 2; }
.product-card-media .badge-custom,
.card-media .badge-custom { position: absolute; top: 12px; right: 12px; left: auto; z-index: 2; }
[hidden] { display: none !important; }
body > .modal,
body > .page-loader,
body > .drawer-overlay,
body > .cart-drawer,
body > .search-overlay,
body > #search-overlay,
body > .lightbox { position: fixed; }
body > .modal { inset: 0; z-index: 1000; }
body.modal-open { overflow: hidden; }
.modal-card { max-height: min(88vh, 820px); overflow: hidden; }
.modal-body { overflow-y: auto; overscroll-behavior: contain; }
.main-nav { gap: 2px; }
.nav-item .nav-toggle { appearance: none; border: 0; background: transparent; font: inherit; cursor: pointer; }
.nav-item .drop {
  display: flex; visibility: hidden; opacity: 0; transform: translateY(-5px);
  pointer-events: none; transition: opacity .15s ease, transform .15s ease, visibility 0s linear .15s;
  top: calc(100% + 7px); z-index: 400;
}
.nav-item .drop::before { content: ""; position: absolute; left: 0; right: 0; top: -10px; height: 12px; }
.nav-item:hover .drop,
.nav-item:focus-within .drop,
.nav-item.is-open .drop {
  visibility: visible; opacity: 1; transform: translateY(0); pointer-events: auto;
  transition-delay: 0s;
}
.nav-item.is-open .nav-toggle { color: var(--gold2); background: rgba(26,42,94,.45); }
.nav-item.is-open .nav-toggle svg { transform: rotate(180deg); }
.nav-toggle svg { transition: transform .15s ease; }
.nav-link:focus-visible, .drop a:focus-visible, button:focus-visible, a:focus-visible { outline: 2px solid var(--gold2); outline-offset: 3px; }
.mobile-nav-group { border-bottom: 1px solid rgba(154,167,201,.12); }
.mobile-nav-group summary { min-height: 48px; padding: 13px 10px; cursor: pointer; color: var(--ink); font-weight: 600; list-style: none; }
.mobile-nav-group summary::-webkit-details-marker { display: none; }
.mobile-nav-group summary::after { content: "+"; float: right; color: var(--gold2); }
.mobile-nav-group[open] summary::after { content: "−"; }
.mobile-nav-group > div { padding: 0 0 8px 12px; display: grid; }
@media (max-width: 1180px) {
  .header-in { gap: 14px; }
.nav-link { padding: 9px 8px; font-size: 13.5px; }
.discord-btn span { display: none; }
.discord-btn { width: 42px; }
}
@media (max-width: 940px) { .main-nav { display: none; }
.menu-btn { display: inline-flex; }
}
.page-loader { inset: 0; z-index: 5000; overflow: hidden; pointer-events: all; opacity: 0; transition: opacity .18s ease; }
.page-loader.is-active { opacity: 1; }
.page-loader.is-leaving { opacity: 0; pointer-events: none; }
.page-loader__veil { position: absolute; inset: 0; background: rgba(5,4,26,.56); backdrop-filter: blur(11px) saturate(115%); -webkit-backdrop-filter: blur(11px) saturate(115%); }
.page-loader__badge { position: absolute; inset: 0; display: grid; place-content: center; justify-items: center; justify-content: center; align-content: center; gap: 12px; text-align: center; width: 100%; }
.page-loader__stack { position: relative; width: clamp(82px, 16vw, 142px); aspect-ratio: 1; }
.page-loader__mark { position: absolute; inset: 0; width: 100%; height: 100%; filter: drop-shadow(0 0 14px rgba(217,180,92,.35)); }
.page-loader__mark.line { fill: none; stroke: url(#page-gold); stroke-width: 9; stroke-linecap: round; stroke-linejoin: round; stroke-dasharray: 1000; stroke-dashoffset: 1000; animation: page-draw .72s cubic-bezier(.5,0,.3,1) forwards; }
.page-loader__mark.solid { fill: url(#page-gold); opacity: 0; animation: page-fill .35s ease .48s forwards; }
.page-loader__word { display: block; margin: 0 auto; color: #EBD79A; font: 700 16px/1.4 ui-monospace, SFMono-Regular, Menlo, Consolas, monospace; letter-spacing: .28em; text-transform: uppercase; text-align: center;  padding-left: .28em; opacity: 0; transform: translateY(5px); animation: page-word .28s ease .58s forwards; }
@keyframes page-draw { to { stroke-dashoffset: 0; opacity: .9; }
}
@keyframes page-fill { to { opacity: 1; }
}
@keyframes page-word { to { opacity: 1; transform: none; }
}
@media (prefers-reduced-motion: reduce) {
  .page-loader__mark.line { animation: none; stroke-dashoffset: 0; }
.page-loader__mark.solid, .page-loader__word { animation: none; opacity: 1; transform: none; }
}
.catalog-skeleton { min-height: 360px; border-radius: var(--radius); border: 1px solid var(--navy700); background: linear-gradient(100deg, rgba(16,28,68,.42) 20%, rgba(32,51,105,.62) 40%, rgba(16,28,68,.42) 60%); background-size: 220% 100%; animation: catalog-shimmer 1.25s linear infinite; }
@keyframes catalog-shimmer { to { background-position: -220% 0; }
}
.catalog-empty { grid-column: 1 / -1; border: 1px dashed rgba(227,179,65,.42); border-radius: 14px; padding: 34px; text-align: center; background: rgba(16,28,68,.34); }
.catalog-empty h1, .catalog-empty h2, .catalog-empty h3 { margin: 0 0 8px; }
.catalog-empty p { color: var(--muted); margin: 0 0 16px; }
.catalog-placeholder { display: grid; place-items: center; width: 100%; height: 100%; min-height: 210px; background: radial-gradient(circle at 30% 20%, rgba(227,179,65,.22), transparent 38%), linear-gradient(145deg, var(--navy800), var(--navy950)); color: var(--gold2); font: 700 58px var(--font-display); }
.price-stack { display: inline-flex; align-items: baseline; gap: 8px; }
.price-stack del, .detail-price del { color: var(--muted); font-size: 13px; }
.category-showcase { display: grid; grid-template-columns: repeat(4, minmax(0,1fr)); gap: 16px; }
.category-card { position: relative; min-height: 164px; overflow: hidden; border: 1px solid var(--navy700); border-radius: 14px; background: rgba(16,28,68,.5); color: var(--cream); display: flex; align-items: flex-end; padding: 18px; }
.category-card > img, .category-card > .category-orb { position: absolute; inset: 0; width: 100%; height: 100%; object-fit: cover; opacity: .46; }
.category-card::after { content: ""; position: absolute; inset: 0; background: linear-gradient(180deg, transparent, rgba(5,10,24,.92)); }
.category-card > span, .category-card > em { position: relative; z-index: 1; }
.category-card strong { display: block; font: 700 18px var(--font-display); }
.category-card small { display: block; margin-top: 5px; color: var(--ink); opacity: .8; line-height: 1.45; }
.category-card em { position: absolute; right: 12px; top: 12px; font-style: normal; font-size: 11px; color: var(--gold2); }
.category-orb { display: block; background: radial-gradient(circle at 30% 25%, rgba(227,179,65,.52), transparent 28%), radial-gradient(circle at 75% 70%, rgba(94,159,232,.32), transparent 35%), var(--navy800); }
.custom-order-grid { display: grid; grid-template-columns: repeat(3,minmax(0,1fr)); gap: 18px; }
.custom-order-card { overflow: hidden; border: 1px solid var(--navy700); border-radius: 14px; background: rgba(16,28,68,.46); }
.custom-order-media { position: relative; aspect-ratio: 16/9; overflow: hidden; }
.custom-order-media img, .custom-order-media .category-orb { width: 100%; height: 100%; object-fit: cover; }
.custom-order-card > div:last-child { padding: 18px; }
.custom-order-card h3 { margin: 8px 0; }
.custom-order-card p { color: var(--muted); min-height: 3em; }
.video-chip { position: absolute; right: 10px; bottom: 10px; padding: 4px 8px; border-radius: 7px; background: rgba(5,10,24,.84); color: var(--cream); font-size: 11px; }
.dynamic-product { display: grid; grid-template-columns: minmax(0,1.35fr) minmax(300px,.65fr); gap: 28px; align-items: start; padding: 22px 0 44px; }
.dynamic-gallery { min-width: 0; }
.dynamic-primary { aspect-ratio: 16/9; border: 1px solid var(--navy700); border-radius: 16px; overflow: hidden; background: var(--navy900); }
.dynamic-primary img { width: 100%; height: 100%; object-fit: cover; }
.dynamic-thumbs { display: grid; grid-template-columns: repeat(4,minmax(0,1fr)); gap: 10px; margin-top: 10px; }
.product-media-item { aspect-ratio: 16/10; padding: 0; border: 1px solid var(--navy700); border-radius: 9px; overflow: hidden; background: var(--navy900); cursor: pointer; }
.product-media-item img { width: 100%; height: 100%; object-fit: cover; }
.product-media-video { grid-column: span 2; aspect-ratio: 16/9; border-radius: 10px; overflow: hidden; border: 1px solid var(--navy700); }
.product-media-video iframe, .product-media-video video { width: 100%; height: 100%; border: 0; object-fit: cover; }
.media-link { display: grid; place-items: center; height: 100%; background: var(--navy900); }
.dynamic-product .buy-panel { position: sticky; top: 90px; }
.dynamic-product .buy-panel h1 { margin: 8px 0 12px; }
.product-lead { color: var(--muted); line-height: 1.65; }
.detail-price { display: flex; align-items: baseline; gap: 12px; margin: 20px 0; }
.detail-price strong { color: var(--gold2); font: 700 28px var(--font-display); }
.product-badges { display: flex; gap: 8px; flex-wrap: wrap; }
.review-avatar { width: 42px; height: 42px; border-radius: 50%; object-fit: cover; border: 1px solid rgba(227,179,65,.35); }
.review-stars { margin-left: auto; color: var(--navy700); letter-spacing: 1px; white-space: nowrap; }
.review-stars .on { color: var(--gold2); }
@media (max-width: 900px) {
  .category-showcase { grid-template-columns: repeat(2,minmax(0,1fr)); }
.custom-order-grid { grid-template-columns: 1fr 1fr; }
.dynamic-product { grid-template-columns: 1fr; }
.dynamic-product .buy-panel { position: static; }
}
@media (max-width: 560px) {
  .category-showcase, .custom-order-grid { grid-template-columns: 1fr; }
.dynamic-thumbs { grid-template-columns: repeat(2,minmax(0,1fr)); }
.catalog-skeleton { min-height: 300px; }
}
.nav-item .drop { background: #101c44; border-color: rgba(227,179,65,.24); box-shadow: 0 20px 48px rgba(0,0,0,.55); }
.nav-item .drop a { color: #f2f4fb; opacity: 1; }
.nav-item .drop a:hover, .nav-item .drop a:focus-visible { background: #1a2a5e; color: #f6cf68; }
.suggested-panel {
  position: fixed; right: 0; top: 96px; z-index: 95;
  width: 288px;
  display: flex; align-items: flex-start;
  transform: translateX(288px);
  transition: transform .28s ease;
}
.suggested-panel.is-open { transform: translateX(0); }
.suggested-panel .sg-inner {
  width: 288px; max-height: calc(100vh - 132px); overflow: auto;
  background: var(--navy800, #0C1430);
  border: 1px solid var(--navy700, #1A2A5E);
  border-right: 0;
  border-radius: 14px 0 0 14px;
  padding: 14px 14px 16px;
  box-shadow: 0 18px 44px rgba(0, 0, 0, .42);
}
.suggested-panel .sg-tab {
  position: absolute; left: -38px; top: 10px;
  width: 38px; padding: 16px 0;
  display: flex; align-items: center; justify-content: center;
  writing-mode: vertical-rl; text-orientation: mixed;
  background: var(--navy800, #0C1430);
  border: 1px solid var(--navy700, #1A2A5E); border-right: 0;
  border-radius: 12px 0 0 12px;
  color: var(--gold2, #F5D67B);
  font-weight: 700; font-size: 13px; letter-spacing: .04em;
  cursor: pointer;
  box-shadow: -6px 10px 24px rgba(0, 0, 0, .35);
}
.suggested-panel .sg-tab:hover { background: var(--navy700, #1A2A5E); }
.sg-head { display: flex; align-items: center; justify-content: space-between; gap: 10px; }
.sg-title-fa { margin: 0; font-size: 17px; line-height: 1.6; color: var(--gold2, #F5D67B); font-weight: 700; }
.sg-actions { display: flex; gap: 6px; }
.sg-icon-btn {
  display: inline-flex; align-items: center; justify-content: center;
  width: 30px; height: 30px; border-radius: 8px;
  border: 1px solid var(--navy700, #1A2A5E); background: transparent;
  color: var(--muted, #94A3C4); cursor: pointer;
}
.sg-icon-btn:hover { color: var(--gold2, #F5D67B); border-color: var(--gold, #E3B341); }
.sg-icon-btn svg { width: 15px; height: 15px; }
.sg-sub { margin: 2px 0 12px; font-size: 12px; color: var(--muted, #94A3C4); letter-spacing: .02em; }
.sg-list { list-style: none; margin: 0; padding: 0; display: grid; gap: 6px; transition: opacity .18s ease; }
.sg-list.is-swapping { opacity: 0; }
.sg-link {
  display: flex; gap: 10px; align-items: center;
  padding: 8px; border-radius: 10px; color: inherit;
  border: 1px solid transparent;
}
.sg-link:hover { background: rgba(26, 42, 94, .5); border-color: var(--navy700, #1A2A5E); }
.sg-thumb {
  flex: 0 0 auto; width: 50px; height: 50px; border-radius: 8px;
  overflow: hidden; background: var(--navy700, #1A2A5E);
  display: grid; place-items: center;
}
.sg-thumb img { width: 100%; height: 100%; object-fit: cover; display: block; }
.sg-ph { font-weight: 700; color: var(--gold2, #F5D67B); }
.sg-body { min-width: 0; display: flex; flex-direction: column; gap: 4px; }
.sg-name {
  font-size: 13px; font-weight: 600; line-height: 1.35;
  display: -webkit-box; -webkit-line-clamp: 2; -webkit-box-orient: vertical; overflow: hidden;
}
.sg-meta { display: flex; align-items: center; gap: 8px; flex-wrap: wrap; }
.sg-tag { font-size: 10.5px; padding: 1px 7px; border-radius: 999px; background: rgba(227, 179, 65, .14); color: var(--gold2, #F5D67B); }
.sg-price { font-size: 12px; font-weight: 600; color: var(--muted, #94A3C4); }
@media (max-width: 720px) {
  .suggested-panel { top: auto; bottom: 0; width: min(320px, 92vw); transform: translateX(min(320px, 92vw)); }
.suggested-panel .sg-inner { width: min(320px, 92vw); max-height: 56vh; }
.suggested-panel .sg-tab { top: auto; bottom: 12px; }
}
@media print { .suggested-panel { display: none; }
}
body > .site-header,
.site-header {
  position: sticky;
  top: 0;
  z-index: 900;
  overflow: visible;
}
body > .announce { position: relative; z-index: 901; }
body > main,
body > #main,
body > footer,
body > .site-footer { position: relative; z-index: 1; }
.site-header .nav-wrap,
.site-header .main-nav,
.site-header .nav-item { overflow: visible; }
.nav-item { position: relative; }
.drop,
.site-header .drop,
.nav-item .drop { z-index: 1000; }
#mobile-nav { z-index: 1200; }
.hero,
section.hero { position: relative; z-index: 0; }
#site-bg-image {
  position: fixed;
  inset: 0;
  z-index: 0;
  background-size: cover;
  background-position: center center;
  background-repeat: no-repeat;
  background-attachment: fixed;
  opacity: .35;
  pointer-events: none;
  transition: opacity .3s ease;
}
@media (max-width: 720px) { #site-bg-image { background-attachment: scroll; }
}
body.has-menu-bg .site-header,
body.has-menu-bg .site-header .nav-wrap,
body.has-menu-bg .drop,
body.has-menu-bg #mobile-nav {
  background-image:
    linear-gradient(rgba(6, 11, 26, .78), rgba(6, 11, 26, .78)),
    var(--menu-bg-image, none);
  background-size: cover, cover;
  background-position: center, center;
  background-repeat: no-repeat, no-repeat;
}
.hero .hero-media,
.hero .hero-media-injected {
  position: absolute;
  inset: 0;
  z-index: 0;
  overflow: hidden;
  border-radius: inherit;
  pointer-events: none;
}
.hero .hero-media img,
.hero .hero-media-injected img {
  width: 100%;
  height: 100%;
  object-fit: cover;
  display: block;
}
.hero.has-hero-image .hero-media::after {
  content: "";
  position: absolute;
  inset: 0;
  background: linear-gradient(180deg, rgba(6, 11, 26, .55), rgba(6, 11, 26, .84));
}
.hero > *:not(.hero-media):not(.hero-media-injected) { position: relative; z-index: 1; }
main > section.container { margin-block: clamp(34px, 5vw, 64px); }
main > section.container:not(.stack-24) > * + * { margin-top: 18px; }
.page-head,
.section-head-block { margin-bottom: 22px; }
.page-lead,
.page-head p,
.section-head-block p {
  margin: 8px 0 0;
  max-width: 74ch;
  line-height: 1.75;
}
.eyebrow { display: inline-block; margin-bottom: 8px; }
h1 + p, h2 + p, h3 + p { margin-top: 8px; }
.services-grid,
.plans-grid { align-items: start; gap: 22px; }
.service-card,
.plan-card {
  display: flex;
  flex-direction: column;
  gap: 10px;
  overflow: hidden;
  min-width: 0;
}
.service-card p,
.plan-card p { margin: 0; line-height: 1.7; }
.service-card ul,
.plan-card ul { margin: 4px 0 0; padding-left: 18px; display: grid; gap: 6px; }
.steps { margin-top: 6px; display: grid; gap: 18px; align-items: start; }
.step p { margin: 6px 0 0; line-height: 1.7; }
.notice { margin-block: 20px; align-items: flex-start; gap: 12px; line-height: 1.7; }
.cta-band { margin-block: clamp(34px, 5vw, 64px); overflow: hidden; }
.cta-band p { margin: 8px 0 0; line-height: 1.7; }
.header-in { flex-wrap: nowrap; gap: 18px; }
.brand { flex: 0 0 auto; white-space: nowrap; }
.brand-name { white-space: nowrap; font-size: clamp(15px, 1.35vw, 20px); }
.main-nav { flex: 1 1 auto; min-width: 0; display: flex; flex-wrap: nowrap; align-items: center; overflow: visible; }
.main-nav .nav-link,
.main-nav .nav-item > .nav-link { white-space: nowrap; }
.header-actions { flex: 0 0 auto; white-space: nowrap; }
@media (max-width: 1240px) {
  .header-in { gap: 12px; }
.main-nav { gap: 0; }
.nav-link { padding: 9px 9px; font-size: 13.5px; }
}
@media (max-width: 1080px) {
  .brand-name { font-size: 15px; letter-spacing: .10em; }
.nav-link { padding: 9px 7px; font-size: 13px; }
}
.site-header { z-index: 900; }
.nav-item.has-drop { position: relative; }
.drop {
  z-index: 950;
  transform-origin: top center;
  transition: opacity .18s ease, transform .22s cubic-bezier(.22,.61,.36,1), visibility 0s linear .22s;
}
.nav-item.has-drop:hover > .drop,
.nav-item.has-drop:focus-within > .drop,
.nav-item.has-drop.is-open > .drop {
  transition-delay: 0s;
}
.drop > a { transition: background .15s ease, color .15s ease, padding-left .15s ease; }
.drop > a:hover { padding-left: 18px; }
.faq details {
  border: 1px solid var(--line, rgba(255,255,255,.10));
  border-radius: 14px;
  background: rgba(255,255,255,.02);
  margin-bottom: 10px;
  overflow: hidden;
  transition: border-color .2s ease, background .2s ease;
}
.faq details[open] { border-color: rgba(227,179,65,.38); background: rgba(227,179,65,.05); }
.faq summary {
  cursor: pointer; list-style: none; display: flex; align-items: center; justify-content: space-between;
  gap: 14px; padding: 16px 18px; font-weight: 600;
}
.faq summary::-webkit-details-marker { display: none; }
.faq summary .icon { transition: transform .28s cubic-bezier(.22,.61,.36,1); flex: none; }
.faq details[open] summary .icon { transform: rotate(180deg); }
.faq summary + * { padding: 0 18px 16px; }
.card, .product-card, .grid-products > *, .category-card { position: relative; }
.sale-ribbon, .badge-sale {
  position: absolute; top: 10px; left: 10px; right: auto; z-index: 3;
  padding: 5px 10px; border-radius: 999px;
  font: 700 11.5px/1 var(--font-ui, inherit); letter-spacing: .06em;
  background: linear-gradient(135deg, #E3B341, #B8862B); color: #14100A;
  box-shadow: 0 6px 18px rgba(0,0,0,.35); pointer-events: none; white-space: nowrap;
}
body > .sale-ribbon, main > .sale-ribbon { display: none !important; }
.section-head { flex-wrap: wrap; align-items: center; }
.section-head > div:first-child { flex: 1 1 320px; min-width: 0; }
.section-head .link-more {
  flex: 0 0 auto; margin-left: auto;
  display: inline-flex; align-items: center; gap: 8px;
  padding: 10px 18px; border-radius: 999px;
  border: 1px solid rgba(227,179,65,.45);
  background: linear-gradient(180deg, rgba(227,179,65,.16), rgba(227,179,65,.06));
  color: var(--gold, #E3B341); font-weight: 600; font-size: 14px; text-decoration: none;
  transition: transform .18s ease, box-shadow .18s ease, background .18s ease;
}
.section-head .link-more:hover {
  transform: translateY(-1px);
  background: linear-gradient(180deg, rgba(227,179,65,.28), rgba(227,179,65,.12));
  box-shadow: 0 10px 26px rgba(227,179,65,.18);
}
@media (max-width: 620px) { .section-head .link-more { margin-left: 0; }
}
#tbx-login { position: fixed; inset: 0; z-index: 4000; display: grid; place-items: center; }
.tbx-login-backdrop { position: absolute; inset: 0; background: rgba(6,8,16,.72); backdrop-filter: blur(6px); animation: tbx-fade .2s ease; }
.tbx-login-card {
  position: relative; width: min(440px, calc(100vw - 40px));
  padding: 26px 26px 24px; border-radius: 20px;
  background: linear-gradient(180deg, #131826, #0D1119);
  border: 1px solid rgba(227,179,65,.28);
  box-shadow: 0 30px 80px rgba(0,0,0,.6);
  animation: tbx-pop .26s cubic-bezier(.22,.61,.36,1);
}
.tbx-login-card h3 { margin: 0 0 8px; font-size: 20px; }
.tbx-login-card p { margin: 0 0 18px; opacity: .78; font-size: 14px; line-height: 1.55; }
.tbx-login-list { display: grid; gap: 10px; }
.tbx-login-list .btn { width: 100%; justify-content: center; }
.tbx-login-x {
  position: absolute; top: 12px; right: 12px; width: 32px; height: 32px;
  border-radius: 10px; border: 1px solid rgba(255,255,255,.12);
  background: transparent; color: inherit; font-size: 18px; line-height: 1; cursor: pointer;
}
.tbx-login-x:hover { background: rgba(255,255,255,.08); }
@keyframes tbx-fade { from { opacity: 0 }
to { opacity: 1 }
}
@keyframes tbx-pop { from { opacity: 0; transform: translateY(14px) scale(.97) }
to { opacity: 1; transform: none }
}
#site-bg-image.bg-fit-cover   { background-size: cover; background-repeat: no-repeat; }
#site-bg-image.bg-fit-contain { background-size: contain; background-repeat: no-repeat; }
#site-bg-image.bg-fit-stretch { background-size: 100% 100%; background-repeat: no-repeat; }
#site-bg-image.bg-fit-tile    { background-size: var(--bg-tile, 240px) auto; background-repeat: repeat; }
#site-bg-image.bg-fixed       { background-attachment: fixed; }
#site-bg-gradient {
  position: fixed; inset: -35%; z-index: -3; pointer-events: none;
  background: conic-gradient(from 0deg,
      var(--grad-1, #0A1230), var(--grad-2, #1A2A5E),
      var(--grad-3, #E3B341), var(--grad-2, #1A2A5E), var(--grad-1, #0A1230));
  filter: blur(var(--grad-blur, 70px));
  opacity: var(--grad-opacity, .45);
  animation: bg-spin var(--grad-speed, 26s) linear infinite;
  will-change: transform;
}
@keyframes bg-spin { to { transform: rotate(360deg) }
}
@media (prefers-reduced-motion: reduce) { #site-bg-gradient { animation: none }
}
.section-head:has(> .link-more) { max-width: none; }
article.blog-card { transition: opacity .3s ease; }
html.blog-syncing article.blog-card { opacity: 0; }
.search-hit img { object-fit: cover; background: var(--navy800, #101B36); }
.chip-nav {
  display: flex;
  flex-wrap: wrap;
  gap: 10px;
  margin: 0 0 26px;
  padding: 0;
  list-style: none;
}
.chip-nav-link {
  display: inline-flex;
  align-items: center;
  gap: 8px;
  padding: 9px 16px;
  border-radius: 999px;
  border: 1px solid rgba(255, 255, 255, .10);
  background: rgba(255, 255, 255, .035);
  color: var(--text-dim, #b9b9c6);
  font-size: .92rem;
  font-weight: 600;
  letter-spacing: .01em;
  text-decoration: none;
  transition: border-color .18s ease, background .18s ease, color .18s ease, transform .18s ease;
}
.chip-nav-link:hover,
.chip-nav-link:focus-visible {
  border-color: rgba(227, 179, 65, .45);
  background: rgba(227, 179, 65, .10);
  color: #fff;
  transform: translateY(-1px);
}
.chip-nav-link.is-active {
  border-color: rgba(227, 179, 65, .60);
  background: rgba(227, 179, 65, .16);
  color: #fff;
}
.chip-nav-link.is-active::before {
  content: "";
  width: 6px;
  height: 6px;
  border-radius: 50%;
  background: var(--gold, #e3b341);
}
.occasion-grid {
  display: grid;
  grid-template-columns: repeat(auto-fit, minmax(220px, 1fr));
  gap: 18px;
  margin: 6px 0 34px;
}
.occasion-card {
  position: relative;
  display: flex;
  flex-direction: column;
  gap: 6px;
  padding: 22px;
  border-radius: 18px;
  border: 1px solid rgba(255, 255, 255, .09);
  background: linear-gradient(160deg, rgba(255, 255, 255, .05), rgba(255, 255, 255, .015));
  color: inherit;
  text-decoration: none;
  overflow: hidden;
  transition: border-color .2s ease, transform .2s ease, box-shadow .2s ease;
}
.occasion-card:hover,
.occasion-card:focus-visible {
  border-color: rgba(227, 179, 65, .42);
  transform: translateY(-3px);
  box-shadow: 0 18px 40px -24px rgba(0, 0, 0, .8);
}
.occasion-card .occasion-emoji {
  font-size: 1.9rem;
  line-height: 1;
  margin-bottom: 6px;
}
.occasion-card h3 {
  margin: 0;
  font-size: 1.06rem;
  letter-spacing: .01em;
}
.occasion-card p {
  margin: 0;
  font-size: .9rem;
  line-height: 1.6;
  color: var(--text-dim, #b9b9c6);
}
.occasion-card .occasion-count {
  margin-top: 10px;
  font-size: .82rem;
  font-weight: 700;
  letter-spacing: .06em;
  text-transform: uppercase;
  color: var(--gold, #e3b341);
}
@media (max-width: 640px) {
  .chip-nav { gap: 8px; }
.chip-nav-link { padding: 8px 13px; font-size: .87rem; }
.occasion-grid { grid-template-columns: 1fr 1fr; gap: 12px; }
.occasion-card { padding: 16px; }
}
@media (prefers-reduced-motion: reduce) {
  .chip-nav-link, .occasion-card { transition: none; }
.chip-nav-link:hover, .occasion-card:hover { transform: none; }
}
.dynamic-primary { position: relative; }
.dynamic-primary img { cursor: zoom-in; transition: transform .35s ease; }
.dynamic-primary:hover img { transform: scale(1.015); }
.primary-hint,
.primary-count {
  position: absolute; bottom: 10px; padding: 4px 10px; border-radius: 999px;
  background: rgba(5,10,24,.72); border: 1px solid var(--navy700);
  color: var(--ink); font-size: .78rem; letter-spacing: .01em;
  backdrop-filter: blur(6px); pointer-events: none;
}
.primary-hint { left: 10px; opacity: 0; transition: opacity .2s ease; }
.dynamic-primary:hover .primary-hint { opacity: 1; }
.primary-count { right: 10px; color: var(--muted); }
.product-media-item { position: relative; transition: border-color .2s ease, transform .2s ease; }
.product-media-item:hover { border-color: var(--gold); transform: translateY(-2px); }
.product-media-item.is-active { border-color: var(--gold); box-shadow: var(--glow); }
.product-media-item:focus-visible { outline: 2px solid var(--gold); outline-offset: 2px; }
.dynamic-thumbs[data-expanded="0"] .product-media-item.is-extra { display: none; }
.dynamic-thumbs[data-expanded="1"] .media-more-veil { display: none; }
.dynamic-thumbs[data-expanded="1"] .product-media-item.is-more img { filter: none; }
.media-more-veil {
  position: absolute; inset: 0; display: flex; flex-direction: column;
  align-items: center; justify-content: center; gap: 2px;
  background: rgba(5,10,24,.68); color: var(--gold2);
  font-family: var(--font-display); font-size: 1.15rem; font-weight: 700;
  letter-spacing: .02em; cursor: pointer; transition: background .2s ease;
}
.media-more-veil small { font-size: .72rem; font-weight: 600; color: var(--cream); text-transform: uppercase; letter-spacing: .08em; }
.product-media-item.is-more:hover .media-more-veil { background: rgba(5,10,24,.5); }
.gallery-toggle-row { display: flex; justify-content: center; margin-top: 12px; }
.gallery-toggle { min-width: 190px; }
.dynamic-videos { display: grid; grid-template-columns: repeat(2,minmax(0,1fr)); gap: 12px; margin-top: 14px; }
.dynamic-videos .product-media-video { grid-column: auto; }
.video-facade {
  position: relative; width: 100%; height: 100%; cursor: pointer;
  background: var(--navy900); display: block;
}
.video-facade .video-poster { width: 100%; height: 100%; object-fit: cover; display: block; }
.video-facade .video-play {
  position: absolute; top: 50%; left: 50%; transform: translate(-50%,-50%);
  width: 62px; height: 62px; border-radius: 50%; display: grid; place-items: center;
  background: rgba(227,179,65,.92); color: #08122c;
  box-shadow: 0 10px 30px rgba(0,0,0,.45); transition: transform .2s ease;
}
.video-facade:hover .video-play { transform: translate(-50%,-50%) scale(1.08); }
.video-facade:focus-visible { outline: 2px solid var(--gold); outline-offset: 2px; }
.video-fallback {
  position: absolute; right: 8px; bottom: 8px; z-index: 2;
  padding: 5px 10px; border-radius: 999px; font-size: .74rem;
  background: rgba(5,10,24,.78); border: 1px solid var(--navy700); color: var(--cream);
  text-decoration: none;
}
.video-fallback:hover { border-color: var(--gold); color: var(--gold2); }
.video-frame { width: 100%; height: 100%; border: 0; display: block; }
.prose a, .prose-link {
  color: var(--gold2); text-decoration: underline; text-underline-offset: 3px;
  text-decoration-thickness: 1px; word-break: break-word; transition: color .15s ease;
}
.prose a:hover, .prose-link:hover { color: var(--gold); }
.prose a:focus-visible, .prose-link:focus-visible { outline: 2px solid var(--gold); outline-offset: 2px; border-radius: 3px; }
.prose img { max-width: 100%; height: auto; border-radius: 10px; }
.prose table { width: 100%; border-collapse: collapse; margin: 12px 0; }
.prose th, .prose td { border: 1px solid var(--navy700); padding: 8px 10px; text-align: left; }
body.viewer-open { overflow: hidden; }
.media-viewer { position: fixed; inset: 0; z-index: 12000; display: grid; }
.media-viewer[hidden] { display: none; }
.media-viewer-backdrop { position: absolute; inset: 0; background: rgba(3,6,16,.92); backdrop-filter: blur(4px); }
.media-viewer-shell {
  position: relative; z-index: 1; width: 100%; height: 100%;
  display: grid; grid-template-columns: 64px 1fr 64px; grid-template-rows: 56px 1fr;
  align-items: center;
}
.media-viewer-top {
  grid-column: 1 / -1; grid-row: 1; display: flex; align-items: center;
  justify-content: space-between; gap: 12px; padding: 0 14px;
}
.media-viewer-count { color: var(--muted); font-size: .9rem; font-variant-numeric: tabular-nums; }
.media-viewer-tools { display: flex; align-items: center; gap: 6px; }
.media-viewer-scale { color: var(--muted); font-size: .8rem; min-width: 48px; text-align: center; font-variant-numeric: tabular-nums; }
.media-viewer-btn {
  display: inline-grid; place-items: center; min-width: 36px; height: 36px; padding: 0 10px;
  border-radius: 9px; border: 1px solid var(--navy700); background: rgba(16,28,68,.72);
  color: var(--ink); font-size: .95rem; cursor: pointer; text-decoration: none;
  transition: border-color .15s ease, color .15s ease, background .15s ease;
}
.media-viewer-btn:hover { border-color: var(--gold); color: var(--gold2); background: rgba(26,42,94,.8); }
.media-viewer-nav {
  grid-row: 2; width: 46px; height: 92px; border-radius: 12px; cursor: pointer;
  border: 1px solid var(--navy700); background: rgba(16,28,68,.6); color: var(--ink);
  font-size: 2rem; line-height: 1; display: grid; place-items: center;
  transition: border-color .15s ease, color .15s ease;
}
.media-viewer-nav:hover { border-color: var(--gold); color: var(--gold2); }
.media-viewer-nav.prev { grid-column: 1; justify-self: center; }
.media-viewer-nav.next { grid-column: 3; justify-self: center; }
.media-viewer.is-single .media-viewer-nav { display: none; }
.media-viewer-stage {
  grid-column: 2; grid-row: 2; width: 100%; height: 100%;
  display: grid; place-items: center; overflow: hidden; padding: 8px 0 22px;
}
.media-viewer-stage img {
  max-width: 100%; max-height: 100%; object-fit: contain; border-radius: 10px;
  transform-origin: center center; transition: transform .12s ease-out;
  box-shadow: 0 24px 70px rgba(0,0,0,.55); user-select: none;
}
.media-viewer.is-zoomed .media-viewer-stage img { transition: none; }
@media (max-width: 720px) {
  .media-viewer-shell { grid-template-columns: 44px 1fr 44px; }
.media-viewer-nav { width: 38px; height: 74px; font-size: 1.5rem; }
.media-viewer-tools .media-viewer-btn[data-viewer-zoom="reset"] { display: none; }
}
.spec-box {
  margin-top: 18px; padding: 16px 18px; border-radius: 14px;
  border: 1px solid var(--navy700); background: linear-gradient(180deg, rgba(16,28,68,.55), rgba(10,18,48,.55));
}
.spec-title {
  margin: 0 0 12px; font-family: var(--font-display); font-size: 1.05rem;
  letter-spacing: .04em; text-transform: uppercase; color: var(--gold2);
}
.spec-grid { display: grid; grid-template-columns: repeat(2,minmax(0,1fr)); gap: 8px 18px; margin: 0; }
.spec-row {
  display: flex; align-items: center; justify-content: space-between; gap: 12px;
  padding: 7px 0; border-bottom: 1px dashed rgba(154,167,201,.18);
}
.spec-row dt { color: var(--muted); font-size: .86rem; }
.spec-row dd { margin: 0; color: var(--ink); font-size: .9rem; font-weight: 600; text-align: right; display: flex; align-items: center; gap: 8px; }
.spec-flag { padding: 3px 9px; border-radius: 999px; font-size: .78rem; font-weight: 700; border: 1px solid transparent; }
.spec-flag-yes { color: var(--success); background: rgba(74,222,128,.12); border-color: rgba(74,222,128,.35); }
.spec-flag-no { color: var(--danger); background: rgba(248,113,113,.1); border-color: rgba(248,113,113,.3); }
.spec-coords { font-family: ui-monospace, SFMono-Regular, Menlo, monospace; font-size: .82rem; color: var(--cream); }
.spec-copy {
  padding: 3px 8px; border-radius: 7px; cursor: pointer; font-size: .72rem;
  border: 1px solid var(--navy700); background: rgba(16,28,68,.8); color: var(--muted);
}
.spec-copy:hover { border-color: var(--gold); color: var(--gold2); }
.spec-note { margin: 12px 0 0; color: var(--muted); font-size: .85rem; }
.spec-map { margin: 14px 0 0; }
.spec-map-btn {
  position: relative; display: block; width: 100%; padding: 0; cursor: zoom-in;
  border: 1px solid var(--navy700); border-radius: 12px; overflow: hidden; background: var(--navy900);
}
.spec-map-btn img { width: 100%; height: auto; display: block; }
.spec-map-btn:hover { border-color: var(--gold); }
.spec-map-zoom {
  position: absolute; right: 10px; bottom: 10px; padding: 4px 10px; border-radius: 999px;
  background: rgba(5,10,24,.78); border: 1px solid var(--navy700); color: var(--cream); font-size: .76rem;
}
.spec-map figcaption { margin-top: 6px; color: var(--muted); font-size: .8rem; }
@media (max-width: 720px) {
  .spec-grid { grid-template-columns: 1fr; }
.dynamic-videos { grid-template-columns: 1fr; }
}
.product-side { display: grid; gap: 18px; align-self: start; min-width: 0; }
.product-side .buy-panel { margin: 0; }
.product-side .spec-box { margin-top: 0; }
.product-side:has(.spec-box) .buy-panel,
.dynamic-product .product-side:has(.spec-box) .buy-panel { position: static; }
.product-side .spec-grid { grid-template-columns: 1fr; gap: 0; }
.product-side .spec-row:last-child { border-bottom: 0; }
.product-side .spec-box { padding: 18px; }
.product-side .spec-map { margin-top: 12px; }
.product-videos { padding: 6px 0 40px; }
.video-section-title {
  margin: 0 0 16px; font-family: var(--font-display); font-size: clamp(20px, 2.2vw, 26px);
  letter-spacing: .02em; color: var(--cream);
}
.video-section-title::after {
  content: ""; display: block; width: 54px; height: 3px; margin-top: 8px;
  border-radius: 3px; background: linear-gradient(90deg, var(--gold), rgba(227,179,65,0));
}
.video-list { display: grid; grid-template-columns: 1fr; gap: 26px; max-width: 1060px; }
.video-item { margin: 0; }
.video-frame-box {
  position: relative; width: 100%; aspect-ratio: 16/9; overflow: hidden;
  border: 1px solid var(--navy700); border-radius: 16px; background: var(--navy900);
  box-shadow: var(--shadow);
}
.video-frame-box .video-facade,
.video-frame-box iframe,
.video-frame-box video { width: 100%; height: 100%; border: 0; display: block; }
.video-frame-box .video-play { width: 88px; height: 88px; }
.video-frame-box .video-play svg { width: 38px; height: 38px; }
.video-frame-box .video-fallback { right: 12px; bottom: 12px; font-size: .82rem; padding: 7px 13px; }
.video-caption { margin-top: 8px; color: var(--muted); font-size: .84rem; }
.dynamic-primary { position: relative; overflow: hidden; touch-action: pan-y; outline: none; }
.dynamic-primary:focus-visible { box-shadow: 0 0 0 2px var(--gold); }
.primary-track {
  display: flex; width: 100%; height: 100%; will-change: transform;
  transition: transform .42s cubic-bezier(.22,.61,.36,1);
}
.primary-track.is-dragging { transition: none; }
.primary-slide { flex: 0 0 100%; width: 100%; height: 100%; margin: 0; }
.dynamic-primary .primary-slide img {
  width: 100%; height: 100%; object-fit: cover; display: block;
  cursor: zoom-in; user-select: none; -webkit-user-drag: none;
}
.dynamic-primary:hover .primary-slide img { transform: none; }
.primary-nav {
  position: absolute; top: 50%; transform: translateY(-50%); z-index: 3;
  width: 44px; height: 66px; display: grid; place-items: center; cursor: pointer;
  border: 1px solid var(--navy700); border-radius: 12px; color: var(--ink);
  background: rgba(5,10,24,.6); backdrop-filter: blur(6px);
  font-size: 2rem; line-height: 1; padding: 0 0 4px;
  opacity: 0; transition: opacity .2s ease, border-color .15s ease, color .15s ease;
}
.primary-nav.prev { left: 12px; }
.primary-nav.next { right: 12px; }
.dynamic-primary:hover .primary-nav,
.dynamic-primary:focus-within .primary-nav { opacity: 1; }
.primary-nav:hover { border-color: var(--gold); color: var(--gold2); }
.primary-nav:focus-visible { opacity: 1; outline: 2px solid var(--gold); outline-offset: 2px; }
.dynamic-primary .primary-hint { z-index: 2; }
.dynamic-primary .primary-count { z-index: 2; }
@media (hover: none) {
  .primary-nav { opacity: 1; background: rgba(5,10,24,.5); }
.primary-hint { display: none; }
}
@media (max-width: 720px) {
  .primary-nav { width: 36px; height: 54px; font-size: 1.5rem; }
.video-list { gap: 18px; }
.video-frame-box { border-radius: 12px; }
.video-frame-box .video-play { width: 64px; height: 64px; }
}
@font-face{font-family:Kaizo Circuit;src:url('/assets/fonts/kaizo-circuit.ttf') format('truetype');font-style:normal;font-weight:700 900;font-display:swap;unicode-range:U+0041,U+0049,U+004B,U+004F,U+005A}
:root{color-scheme:dark;font-size:16px;--navy950:#080c15;--navy900:#0c111c;--navy800:#151d2c;--navy700:#303d55;--gold:#eaba64;--gold2:#f5d38c;--cream:#f7f4eb;--ink:#e7eaf1;--muted:#b2bccd;--success:#84d5b8;--line:rgba(159,178,216,.2);--surface:rgba(21,29,45,.82);--font-body:Inter,ui-sans-serif,-apple-system,BlinkMacSystemFont,"Segoe UI",sans-serif;--font-display:var(--font-body);--focus:#f6ce7e}
html{scroll-behavior:smooth;scroll-padding-top:104px;background:#0a0f19}
html,body{min-width:320px;margin:0;width:100%}
body{isolation:isolate;position:relative;background:#0a0f19!important;color:var(--ink);font:400 1.05rem/1.65 var(--font-body);overflow-x:clip;-webkit-font-smoothing:antialiased}
body::before{content:"";position:fixed;inset:0;z-index:-3;pointer-events:none;background:radial-gradient(ellipse 72% 54% at 80% 10%,rgba(71,70,149,.22),transparent 75%),radial-gradient(ellipse 55% 55% at -10% 24%,rgba(30,72,109,.24),transparent 75%),radial-gradient(ellipse 50% 60% at 90% 95%,rgba(63,38,101,.2),transparent 72%),#0a0f19}
body::after{content:"";position:fixed;inset:0;z-index:-2;pointer-events:none;background-image:radial-gradient(rgba(152,177,218,.16) .8px,transparent .8px);background-size:28px 28px;mask-image:linear-gradient(#0007,transparent 80%)}
html[data-theme=cyber] body::before{background:radial-gradient(ellipse at 75% 30%,#24244b90,transparent 64%),radial-gradient(ellipse at 5% 70%,#154c5a4d,transparent 60%),#090f1c}
html[data-theme=cyber] body::after{background-image:linear-gradient(#6985ab14 1px,transparent 1px),linear-gradient(90deg,#6985ab14 1px,transparent 1px);background-size:48px 48px;mask-image:linear-gradient(#0008,transparent)}
html[data-theme=ambient] body::before{background:radial-gradient(ellipse 65% 55% at 10% 25%,#154c8270,transparent 65%),radial-gradient(ellipse 65% 60% at 90% 20%,#623b9360,transparent 68%),radial-gradient(ellipse at 60% 100%,#14373860,transparent 70%),#090e18}
html[data-theme=ambient] body::after{opacity:.18}
html[data-theme=minimal] body::before{background:linear-gradient(155deg,#111827,#0c111b 75%)}
html[data-theme=minimal] body::after{display:none}
#site-bg,#site-bg-image,#site-bg-gradient{position:fixed;inset:0;pointer-events:none!important;z-index:-1!important;max-width:100vw;overflow:hidden}
#cursor-lens,.cursor-lens,.starfield,.fx-stars,.pointer-glow{display:none!important}
main#main{position:relative;z-index:0;display:block;width:100%;max-width:none;margin:0;padding:0;overflow:visible}
*,*::before,*::after{box-sizing:border-box}
[hidden]{display:none!important}
img{max-width:100%;height:auto}svg{flex-shrink:0}
.container,.site-header .header-in{width:min(1280px,calc(100% - 80px));max-width:1280px;margin-inline:auto}
h1,h2,h3,h4{font-family:var(--font-display);color:var(--cream);line-height:1.14;letter-spacing:-.035em}
h1{font-size:clamp(2.25rem,4.2vw,3.5rem);font-weight:780}
h2{font-size:clamp(1.8rem,3vw,2.5rem);font-weight:730}
h3{font-size:1.3rem;font-weight:680}
p{font-size:1.05rem;line-height:1.75;color:var(--muted)}
a{color:inherit;text-decoration:none}a:hover{color:var(--gold2)}
button,input,select,textarea{font:inherit}button,a,input,select,summary{touch-action:manipulation}
input,select,textarea{color:var(--ink);background:#121b2a;border:1px solid #43516a;border-radius:10px;min-height:48px;padding:12px 16px}
input::placeholder,textarea::placeholder{color:#8c9aae;opacity:1}
:focus-visible{outline:2px solid var(--focus)!important;outline-offset:4px!important}
.sr-only{position:absolute!important;width:1px!important;height:1px!important;padding:0!important;margin:-1px!important;overflow:hidden!important;clip:rect(0,0,0,0)!important;white-space:nowrap!important;border:0!important}
.skip-link{z-index:2000;min-height:44px}
.gold{color:var(--gold2)}
.eyebrow,.kicker{display:inline-flex;align-items:center;gap:8px;font-size:.875rem;font-weight:700;line-height:1.5;letter-spacing:.115em;text-transform:uppercase;color:var(--gold2);margin-bottom:16px}
.eyebrow .icon{width:18px;height:18px}.icon{width:20px;height:20px;display:inline-block;vertical-align:middle;flex:none}
.brand-name,.brand-inline{font-family:"Kaizo Circuit",var(--font-display);font-weight:800;letter-spacing:.12em;color:#f5ce81;text-shadow:0 0 18px #eabe6240,0 0 40px #eabe621c}
.brand-name{font-size:1.5rem;line-height:1.2}.brand-inline{font-size:.9em}.brand{display:inline-flex;align-items:center;gap:12px;flex:none}.brand img{height:36px;width:36px;filter:drop-shadow(0 0 12px #eaba6420)}
.btn{display:inline-flex;align-items:center;justify-content:center;gap:12px;min-height:48px;border-radius:10px;padding:12px 20px;font:650 1rem/1.3 var(--font-body);white-space:normal;text-align:center;border:1px solid var(--line);transition:border-color .2s,background .2s,box-shadow .2s,color .2s;transform:none!important;max-width:100%}
.btn-lg{min-height:54px;padding:15px 24px}.btn-sm{font-size:.9375rem;padding:10px 14px;min-height:44px}.btn-block{width:100%}
.btn-gold,.btn-primary{color:#241a08;background:linear-gradient(125deg,#f6d892,#e8b665);border-color:#f3d194;box-shadow:0 4px 20px #e3b55b20,inset 0 1px #fff5}
.btn-gold:hover,.btn-primary:hover{color:#140f05;background:linear-gradient(125deg,#ffe4a6,#f3c77d);box-shadow:0 6px 30px #e3b55b35}
.btn-outline,.btn-ghost{background:linear-gradient(140deg,#eaba6408,#ffffff04);border-color:#46516a;color:var(--ink);box-shadow:0 3px 12px #00000016}
.btn-outline:hover,.btn-ghost:hover{background:linear-gradient(135deg,#eaba641c,#eaba640a);border-color:#bf9557;color:var(--gold2);box-shadow:0 5px 24px #c89d4b12}
.btn .icon,.text-action .icon,.direct-checkout .icon,.studio-categories>a>.icon{transition:transform .22s ease}
a:hover .icon-arrow,button:hover .icon-arrow{transform:translate(2px,-2px)}.btn:hover .icon-plus{transform:rotate(90deg)}
.btn[disabled],button[disabled],a[aria-disabled=true]{opacity:.55;cursor:wait}
.icon-btn,.motion-toggle{min-width:44px;width:44px;height:44px;border:1px solid var(--line);border-radius:10px;background:#131b2d9c;color:var(--ink);display:inline-flex;align-items:center;justify-content:center;cursor:pointer;padding:0;transition:background .2s,border-color .2s;color:inherit}
.icon-btn:hover,.motion-toggle:hover{background:#26304b;border-color:#b9955c;color:var(--gold2)}
body>.site-header{position:sticky;top:0;z-index:80!important;width:100%;background:#0c121ecd!important;border-bottom:1px solid var(--line);backdrop-filter:blur(12px);-webkit-backdrop-filter:blur(12px);box-shadow:none}
.header-in{height:88px;display:flex;align-items:center;gap:40px;padding-block:0}
.main-nav{display:flex;align-items:center;gap:8px;flex:1}.nav-item{position:relative}.nav-link{font:600 1rem/1.4 var(--font-body);padding:12px 14px;min-height:46px;display:inline-flex;align-items:center;gap:8px;color:#c5cddc;background:transparent;border:1px solid transparent;border-radius:8px;cursor:pointer;text-transform:none;letter-spacing:0}
.nav-link:hover,.nav-link.is-active,.has-drop.is-open>.nav-link{color:var(--gold2);background:#ffffff06;border-color:#ffffff10}
.nav-link .icon{width:16px;height:16px}
.header-actions{display:flex;align-items:center;gap:10px;margin-left:auto;flex:none}.discord-btn{width:auto;padding-inline:15px;gap:8px;font-size:.9375rem;font-weight:650}.menu-btn{display:none}
.site-header .drop{display:flex!important;flex-direction:column;align-items:stretch;gap:3px;position:absolute!important;top:calc(100% + 6px)!important;left:0;min-width:248px;width:max-content;max-width:320px;padding:8px!important;margin:0!important;border:1px solid #46506a85!important;border-radius:12px;background:rgba(18,26,42,.97)!important;backdrop-filter:blur(12px);box-shadow:0 20px 55px #0006;opacity:0!important;visibility:hidden!important;pointer-events:none!important;transform:translateY(5px)!important;transition:opacity .16s,transform .16s,visibility .16s;z-index:100}
.site-header .drop::before{content:"";position:absolute;left:0;right:0;top:-9px;height:9px;background:transparent;pointer-events:none}
.site-header .has-drop.is-open>.drop,.site-header .has-drop:not([data-nav-dropdown]):hover>.drop,.site-header .has-drop:not([data-nav-dropdown]):focus-within>.drop{opacity:1!important;visibility:visible!important;pointer-events:auto!important;transform:none!important}
.site-header .drop>a,.site-header .drop>:first-child{font-size:.9375rem;line-height:1.45;margin:0!important;padding:11px 12px!important;border-radius:7px;min-height:44px;display:flex;align-items:center;gap:10px;color:#c9d2e2;transition:background .2s,color .2s}
.site-header .drop>a:hover,.site-header .drop>a:focus-visible{color:var(--gold2);background:#d8b16913;padding-left:12px!important}
.studio-hero{display:grid;grid-template-columns:minmax(0,1.04fr) minmax(0,1fr);align-items:center;gap:64px;padding:72px 0 56px;margin-block:0;min-height:700px}
.studio-hero-copy{min-width:0}.studio-hero .kicker{font-size:.875rem;letter-spacing:.09em;margin:0 0 24px}
.live-dot{display:inline-block;width:7px;height:7px;border-radius:50%;background:#eec777;box-shadow:0 0 0 5px #eec7770c,0 0 16px #eec77750;flex:none}
.slogan-stack{display:grid!important;grid-template-columns:minmax(0,1fr);font-size:clamp(2.65rem,4.25vw,3.7rem);font-weight:780;line-height:1.1;letter-spacing:-.055em;margin:0 0 24px;text-wrap:balance;text-shadow:none!important}
.slogan{grid-area:1/1;align-self:center;opacity:0;visibility:hidden;pointer-events:none;transition:opacity .65s,visibility .65s;overflow-wrap:break-word}.slogan.is-active{opacity:1;visibility:visible}
.studio-lead{max-width:530px;font-size:1.075rem;line-height:1.75;margin:0 0 28px;color:#b3bed0}
.hero-ctas{display:flex;flex-wrap:wrap;gap:12px}.hero-ctas .btn{font-size:.9375rem;padding-inline:20px;flex-grow:0}
.slogan-controls{display:flex;align-items:center;gap:14px;margin-top:20px;min-height:44px}.micro-label{font-size:.875rem;color:#9baac0}.cycle-dots{display:flex;align-items:center;gap:0}.cycle-dot{display:inline-grid;place-items:center;background:none;border:0;cursor:pointer;width:30px;height:44px;padding:0}.cycle-dot span{height:4px;width:14px;background:#3b475e;border-radius:3px;transition:width .25s,background .25s}.cycle-dot.is-active span{width:24px;background:#ecca83}.cycle-dot:hover span{background:#bba87b}.motion-toggle{border:0;background:transparent;width:44px;margin-left:auto;color:#acb7cb}.motion-toggle .icon{width:18px;height:18px}
.studio-proof{border-top:1px solid var(--line);display:flex;flex-wrap:wrap;gap:12px 22px;padding-top:24px;margin-top:18px;font-size:.875rem;color:#b5bfd0}.studio-proof span{display:inline-flex;align-items:center;gap:8px}.studio-proof .icon{color:var(--gold);width:16px;height:16px}
.spotlight{border:1px solid #59627a6e;border-radius:16px;background:linear-gradient(155deg,#222b3bde,#141c2bdc);box-shadow:0 16px 65px #080b193d,0 0 50px #7470b412;overflow:hidden;isolation:isolate;position:relative;align-self:center;transition:box-shadow .3s,border-color .3s;min-width:0}
.spotlight:hover{border-color:#a8926d99;box-shadow:0 18px 60px #0004,0 0 50px #92805f1c}
.studio-feature-top{display:flex;justify-content:space-between;align-items:center;gap:16px;padding:18px 24px;font:600 .875rem/1.5 var(--font-body);letter-spacing:.1em;color:#c0cada;background:#111a2790}.studio-feature-top>span:first-child{display:flex;align-items:center;gap:12px}.studio-feature-top .live-dot{width:5px;height:5px}.studio-feature-top>span:last-child{white-space:nowrap;font-variant-numeric:tabular-nums}
.studio-feature-image{display:block;position:relative;overflow:hidden;aspect-ratio:16/9;margin:0;background:#152033;border-block:1px solid #ffffff12;border-radius:0}
.studio-feature-image img{width:100%;height:100%;object-fit:cover;transition:transform .65s cubic-bezier(.22,.61,.36,1);transform:scale(1)}
.studio-feature-image:hover img{transform:scale(1.04)}
.studio-feature-image::after{content:"";position:absolute;inset:0;border:1px solid #e6c38800;transition:border-color .3s;pointer-events:none;background:linear-gradient(transparent 60%,#090f1890)}.studio-feature-image:hover::after{border-color:#e6c388a0}
.spotlight-media-tag{position:absolute;left:20px;bottom:18px;display:flex;align-items:center;gap:8px;background:#111a29c7;border:1px solid #becbdd38;border-radius:7px;backdrop-filter:blur(12px);color:#e6eafa;padding:7px 10px;font-size:.875rem;z-index:1}.spotlight-media-tag .icon{width:17px;height:17px}
.round-arrow{position:absolute;bottom:16px;right:20px;border-radius:50%;display:grid;place-items:center;width:42px;height:42px;color:#ffdc94;background:#131c29d9;border:1px solid #eaca8170;z-index:1}
.studio-feature-info{padding:24px 28px 20px;min-height:190px}.studio-feature-info .eyebrow{font-size:.875rem;letter-spacing:.095em;margin-bottom:8px}.studio-feature-info h2{font-size:1.9rem;margin:0 0 9px;letter-spacing:-.03em}.studio-feature-info p{font-size:1rem;margin:0;line-height:1.65;display:-webkit-box;-webkit-line-clamp:2;-webkit-box-orient:vertical;overflow:hidden}
.spotlight-footer{padding:12px 24px 16px;display:flex;align-items:center;justify-content:space-between;gap:12px;border-top:1px solid #ffffff0c}.spotlight-dots,.spotlight-arrows{display:flex;gap:6px}.spotlight-dot{padding:0;width:38px;height:44px;font:600 .875rem/1 var(--font-body);font-variant-numeric:tabular-nums;border:0;border-bottom:2px solid transparent;background:none;color:#98a5b9;cursor:pointer;border-radius:4px 4px 0 0}.spotlight-dot.is-active{color:#f4ce80;border-bottom-color:#f4ce80;background:#f4ce8008}.spotlight-dot:hover{color:#f4ce80}.spotlight-arrows .icon-btn{width:44px;height:44px;background:#ffffff03}
.category-section{padding-top:16px;padding-bottom:64px}.category-intro{display:flex;align-items:center;justify-content:space-between;margin-bottom:18px}.category-intro .eyebrow{margin:0;color:#c1cddd;font-size:.875rem}.category-intro>span:last-child{font-size:.875rem;color:#a4b0c3}
.studio-categories{display:grid;grid-template-columns:repeat(5,minmax(0,1fr));gap:12px;padding:0;border:0;background:none;overflow:visible}
.studio-categories>a{display:flex;align-items:center;gap:12px;min-width:0;min-height:88px;padding:16px;background:linear-gradient(135deg,#c6d9ff08,#c6d9ff02);backdrop-filter:blur(12px);border:1px solid #69769345;border-radius:16px;transition:border-color .25s,box-shadow .25s,background .25s;position:relative}
.studio-categories>a:hover{border-color:#d9b87b99;background:linear-gradient(135deg,#e9c57b13,#c6d9ff05);box-shadow:0 0 28px #e6b86613;transform:none}.category-icon{display:grid;place-items:center;width:36px;height:40px;color:#d6bd8c}.category-icon .icon{width:25px;height:25px}.studio-categories strong{display:block;font-size:.9375rem;white-space:normal;line-height:1.4;font-weight:620}.studio-categories small{display:block;color:#8d9bb3;font-size:.875rem;line-height:1.5}.studio-categories>a>.icon{width:16px;height:16px;margin-left:auto;color:#ae956c}
.section{padding-block:64px}.home-managed{border-top:1px solid #8399c215}.section-head{display:flex;align-items:flex-end;justify-content:space-between;gap:24px;margin-bottom:30px}.section-head>div{max-width:730px}.section-head h2{margin:0 0 12px}.section-head p{margin:0}.section-head>.btn{flex:none}.section-head .eyebrow{margin-bottom:10px}
.grid.grid-products{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:24px;align-items:stretch}
.card.product-card{isolation:isolate;position:relative;display:flex;flex-direction:column;overflow:hidden;border:1px solid transparent;border-radius:14px;background:linear-gradient(160deg,#192233,#111925) padding-box,linear-gradient(145deg,#52637a80,#6478a225,#bb986d30) border-box;box-shadow:0 8px 28px #00000012;transform:none!important;transition:box-shadow .3s,background .3s}
.card.product-card:hover{background:linear-gradient(160deg,#1d283a,#131d2a) padding-box,linear-gradient(145deg,#d0aa6575,#6c729650,#c6a36530) border-box;box-shadow:0 12px 38px #0003;transform:none!important}
[data-glow]::before,[data-glow]::after,.product-card::before,.product-card::after{pointer-events:none!important;inset:0!important;border-radius:inherit!important;transform:none!important;content:none!important}
.product-card:focus-within{border-color:#f2c979;outline:1px solid #f2c979;outline-offset:2px}.card a:focus-visible{outline-offset:-4px!important}
.card-media{position:relative;display:block;overflow:hidden;aspect-ratio:16/9;border-radius:0;background:#1b2638}.card-media img{height:100%;width:100%;object-fit:cover;transform:none;transition:transform .6s}.card-media:hover img{transform:scale(1.04)}
.category-badge{display:inline-flex;align-items:center;gap:6px;border-radius:7px;padding:6px 10px;line-height:1.5;font-size:.875rem;font-weight:650;backdrop-filter:blur(12px);border:1px solid #d7c29580;background:#182334e6;color:#edd095}
.card-media>.category-badge{position:absolute;top:14px;left:14px;z-index:2;max-width:calc(100% - 28px)}.category-badge .icon{width:16px;height:16px}
.category-vehicles{color:#afdcfa;border-color:#83b4de75;background:#112b41e6}.category-scripts{color:#cbbaff;border-color:#a293dd75;background:#26223fe6}.category-open-sources{color:#9fe6ce;border-color:#6fbd9e80;background:#122e29e6}.category-bundles{color:#f4b8d1;border-color:#d796b780;background:#3a2236e6}
.card-hover-cta{position:absolute;inset:auto 14px 14px;display:flex;align-items:center;justify-content:space-between;background:#0e1528dc;border:1px solid #ffffff26;border-radius:8px;backdrop-filter:blur(12px);padding:10px 12px;color:#f7e0ae;font-size:.875rem;opacity:0;transform:translateY(5px);transition:opacity .2s,transform .2s;pointer-events:none}
.card-media:hover .card-hover-cta,.card-media:focus-visible .card-hover-cta{opacity:1;transform:none}
.card-body{padding:24px;display:flex;flex-direction:column;flex:1;min-width:0;gap:0}.card-title{font-size:1.25rem;line-height:1.4;letter-spacing:-.025em;margin:0 0 12px;min-height:3.5em;font-weight:690}.card-title a{display:block;color:#f0f1f6}.card-title a:hover{color:var(--gold2)}
.card-excerpt{font-size:1rem;line-height:1.7;margin:0 0 20px;display:-webkit-box;-webkit-line-clamp:3;-webkit-box-orient:vertical;overflow:hidden;min-height:5.1em;color:#b6c1d2}
.resource-meta{display:flex;flex-wrap:wrap;gap:8px;margin:0 0 20px}.resource-meta>span{display:inline-flex;align-items:center;gap:6px;font-size:.875rem;line-height:1.5;border:1px solid #69799435;background:#0f1826b3;border-radius:6px;padding:5px 8px;color:#b6c3d7}.resource-meta .icon{width:14px;height:14px;color:#899bb5}
.card-foot{margin-top:auto;display:flex;align-items:center;justify-content:space-between;gap:12px;padding-top:18px;border-top:1px solid #7589aa26;flex-wrap:wrap}.card-foot .btn{flex:none;margin-left:auto}.price-stack{display:flex;flex-direction:column;gap:6px;min-width:0}.price-line{display:flex;align-items:center;gap:9px;flex-wrap:wrap}.price{font-size:1.25rem;font-weight:720;color:#f5e5c2;font-variant-numeric:tabular-nums;line-height:1.4}.price-pending{font-size:1rem;font-weight:600;color:#c3cddd}
del{color:#a3afc2;font-size:.9375rem}.promo-badge{display:inline-flex;font-size:.875rem;font-weight:700;padding:3px 7px;background:#edc2761a;border:1px solid #edc27660;border-radius:5px;color:#f4d18f}.promo-disclosure{font-size:.875rem;line-height:1.4;color:#a8b5c8;max-width:225px}.price-context,.price-context p{font-size:.875rem;line-height:1.65;color:#a5b3c9}.catalog-price-note{display:flex;align-items:center;gap:8px;margin-top:32px}
.breadcrumbs{margin:0 0 32px;padding-top:28px;color:#a9b5ca;font-size:.875rem}.breadcrumbs ol{display:flex;flex-wrap:wrap;align-items:center;gap:8px 10px;list-style:none;padding:0;margin:0}.breadcrumbs li{font-size:.875rem;line-height:1.5;display:flex;align-items:center;gap:10px;max-width:100%;overflow-wrap:anywhere}.breadcrumbs li+li::before{content:"/";color:#576981;margin:0}.breadcrumbs li::after{content:none!important}.breadcrumbs [aria-current=page]{color:#cfdaea}
.listing-route{padding-top:8px}.listing-heading{max-width:850px;margin:32px 0 40px}.listing-heading h1{margin:0 0 20px;text-wrap:balance}.listing-heading p{max-width:740px;font-size:1.1rem;margin:0}.listing-heading .eyebrow{margin-bottom:16px}
.catalog-tabs{display:flex;flex-wrap:wrap;gap:8px;margin:0 0 24px}.catalog-tabs a{font:600 .9375rem/1.4 var(--font-body);min-height:44px;padding:10px 14px;border:1px solid #4d5e7a80;border-radius:8px;color:#b8c6da;display:inline-flex;align-items:center;gap:8px;background:#16213345;transition:all .2s}.catalog-tabs .icon{width:17px;height:17px}.catalog-tabs a[aria-current=page]{background:#e9c17a;color:#261d0f;border-color:#ebc67f}.catalog-tabs a:hover{border-color:#bea16a;color:#f8d99b}.catalog-tabs a[aria-current=page]:hover{color:#19130b}
.edition-filters{display:flex;align-items:center;flex-wrap:wrap;gap:16px 28px;padding:22px 24px;border:1px solid #65759147;border-radius:12px;background:linear-gradient(120deg,#1c273ca6,#151e2d91);backdrop-filter:blur(12px);margin-bottom:24px}.edition-filters>div{flex:1;min-width:200px}.edition-filters strong{color:#e8ecf5;font-size:1rem}.edition-filters p{font-size:.875rem;margin:3px 0 0;color:#a9b7cc;line-height:1.6}
.edition-toggle{cursor:pointer;position:relative;display:flex;align-items:center;gap:12px;min-height:44px;font-size:.9375rem;font-weight:550;color:#d0d9e8}.edition-toggle input{position:absolute;width:1px;height:1px;opacity:0;min-height:0;padding:0}.switch-track{position:relative;flex:none;width:46px;height:26px;background:#2b3850;border:1px solid #657491;border-radius:999px;transition:background .2s,border-color .2s}.switch-track::after{content:"";position:absolute;top:3px;left:3px;border-radius:50%;width:18px;height:18px;background:#aab8cc;transition:transform .2s,background .2s}.edition-toggle input:checked+.switch-track{background:#dcb36e;border-color:#f3d490}.edition-toggle input:checked+.switch-track::after{transform:translateX(20px);background:#27200f}.edition-toggle input:focus-visible+.switch-track{outline:2px solid var(--focus);outline-offset:4px}
.catalog-tools{display:flex;align-items:center;justify-content:space-between;gap:20px;margin-bottom:24px}.catalog-search{display:flex;align-items:center;gap:12px;flex:0 1 420px;border:1px solid #50607a88;background:#111c2c;padding:0 14px;border-radius:10px}.catalog-search .icon{color:#9bb0ca}.catalog-search input{width:100%;background:none;padding:12px 0;border:0;min-width:0;outline-offset:4px}.catalog-search:focus-within{border-color:#c5a36d}.catalog-tools [data-catalog-count]{color:#aebcd0;font-size:.9375rem;white-space:nowrap}.catalog-filter-empty,.catalog-empty{grid-column:1/-1;padding:56px 24px;text-align:center;border:1px dashed #637797;border-radius:12px;background:#1a263b80}.catalog-filter-empty h2,.catalog-empty h2{font-size:1.75rem}
.product-route .container{position:relative;min-width:0}.product-route #main{overflow:visible}.dynamic-product{display:grid;grid-template-columns:minmax(0,1.35fr) minmax(0,1fr);gap:40px;align-items:start;padding:8px 0 48px;position:relative;width:100%;margin:0}
.dynamic-gallery,.product-side{position:relative;min-width:0;transform:none!important}.dynamic-primary{position:relative;overflow:hidden;border:1px solid #65738b80;border-radius:14px;background:#182435}.dynamic-primary a{display:block;aspect-ratio:16/9;overflow:hidden}.dynamic-primary img{width:100%;height:100%;object-fit:cover;transform:none!important;position:static}.dynamic-primary::before,.dynamic-primary::after{content:none!important}
.ssr-thumbnails{display:grid;grid-template-columns:repeat(5,minmax(0,1fr));gap:10px;margin-top:14px}.ssr-thumbnails a{display:block;position:relative;aspect-ratio:16/9;border:1px solid #556b8b66;border-radius:7px;overflow:hidden;min-height:44px}.ssr-thumbnails img{width:100%;height:100%;object-fit:cover;transform:none!important}.ssr-thumbnails a.is-active{outline:2px solid var(--gold2);outline-offset:2px}.gallery-caption{font-size:.875rem;display:flex;align-items:center;gap:8px;margin:16px 0 24px;color:#a1b0c6}
.dynamic-product .buy-panel,.buy-panel{position:relative!important;top:auto!important;padding:32px;border:1px solid #68738b70;border-radius:14px;background:linear-gradient(135deg,#1e293bde,#162030e3);box-shadow:0 16px 40px #0002;transform:none!important;overflow:hidden;isolation:isolate}
.buy-panel h1,.dynamic-product .buy-panel h1{font-size:clamp(1.8rem,2.5vw,2.4rem);line-height:1.2;letter-spacing:-.04em;margin:12px 0 16px}.buy-panel .eyebrow{margin:0}.product-lead{font-size:1.05rem;line-height:1.75;margin:0 0 24px}.detail-price{margin:20px 0 12px}.detail-price .price{font-size:2rem;line-height:1.3;color:#f4d387}.detail-price .price-pending{font-size:1.4rem}.detail-price .price-line{gap:12px}.buy-panel .price-context{margin-bottom:20px}.buy-actions{display:block}.direct-checkout{display:flex;align-items:center;justify-content:center;gap:8px;padding:16px 0 8px;font-size:.9375rem;color:#c2cee0;min-height:44px}.direct-checkout .icon{width:17px;height:17px}.buy-trust{border-top:1px solid #8295b12b;padding-top:24px;margin-top:20px;display:grid;gap:12px}.buy-trust>div{display:flex;align-items:center;gap:10px;font-size:.9375rem;color:#b9c6d9}.buy-trust .icon{color:#ddc28f;width:18px;height:18px}.detail-review-link{display:flex;align-items:center;gap:8px;font-size:.9375rem;color:var(--gold2);padding:20px 0 4px}.checkout-hint{font-size:.875rem;margin:14px 0 0;color:#9facbf}.edition-label{position:static;margin-top:16px}
.technical-panel{padding:24px;background:linear-gradient(150deg,#1b263999,#121b2ab3);border:1px solid #657a984a;border-radius:12px}.panel-label{display:flex;align-items:baseline;justify-content:space-between;gap:16px;margin-bottom:20px}.panel-label h2{font-size:1.25rem;margin:0;letter-spacing:-.015em}.panel-label>span{color:#a3b2c8;font-size:.875rem}.technical-grid{display:grid;grid-template-columns:1fr 1fr;gap:12px;margin:0}.technical-spec{padding:14px 16px;border:1px solid #7c8fad27;background:#172237b3;border-radius:8px;min-width:0}.technical-spec dt{font-size:.875rem;color:#a8b9ce;display:flex;align-items:center;gap:8px;line-height:1.5;margin-bottom:6px}.technical-spec .icon{width:16px;height:16px;color:#bca271}.technical-spec dd{margin:0;font-size:1rem;font-weight:600;color:#dce4ef;overflow-wrap:anywhere}.spec-wide{grid-column:1/-1}.spec-note{font-size:.875rem;margin:18px 0 0}.spec-box{margin-top:20px;background:none;border:0;border-top:1px solid #6a7e9c3d;border-radius:0;padding:0}.spec-box summary{font-size:.9375rem;font-weight:600;display:flex;align-items:center;justify-content:space-between;list-style:none;cursor:pointer;min-height:52px;padding-top:12px;color:#d0dae8}.spec-box summary::-webkit-details-marker{display:none}.spec-box[open] summary .icon{transform:rotate(180deg)}.spec-grid{margin:12px 0}.spec-grid-row{display:grid;grid-template-columns:1fr 1.2fr;gap:16px;padding:12px 0;border-top:1px solid #6a7e9c24;font-size:.9375rem}.spec-grid-row dt{color:#a6b6cb}.spec-grid-row dd{margin:0;overflow-wrap:anywhere;color:#d6dfed}
.product-videos{margin:16px 0 56px;max-width:820px}.video-grid{display:grid;gap:20px}.video-facade{position:relative;aspect-ratio:16/9;overflow:hidden;background:#131f32;border:1px solid var(--line);border-radius:12px;cursor:pointer}.video-facade img{width:100%;height:100%;object-fit:cover;filter:brightness(.7)}.video-play{position:absolute;inset:50% auto auto 50%;transform:translate(-50%,-50%);width:64px;height:64px;border-radius:50%;display:grid;place-items:center;background:linear-gradient(#f6d491,#e7b966);color:#24190a;box-shadow:0 0 0 9px #e7b96620}.video-play .icon{width:26px;height:26px}.video-fallback{position:absolute;bottom:16px;left:20px;display:flex;align-items:center;gap:8px;font-size:.9375rem;color:#f3dab0}.video-frame{width:100%;height:100%;display:block;border:0;aspect-ratio:16/9}.product-body{padding:0 0 56px}
.prose{max-width:760px;font-size:1.05rem;line-height:1.8}.prose p,.prose li{font-size:1.05rem;line-height:1.8;color:#bfc9d9}.prose h2{margin-top:36px;font-size:1.9rem}.prose h3{font-size:1.4rem;margin-top:28px}.prose pre{overflow:auto;max-width:100%;padding:20px;background:#101a2a;border:1px solid var(--line);border-radius:10px;font-size:.9375rem}.prose img{width:auto;max-width:100%;height:auto;border-radius:8px}.prose a{color:var(--gold2);text-decoration:underline;text-underline-offset:4px}.prose blockquote{margin:24px 0;padding:8px 24px;border-left:2px solid var(--gold);color:#c8d3e2}
.feedback-section{border-top:1px solid var(--line);overflow:hidden}.feedback-section .section-head{align-items:center}.feedback-controls{display:flex;gap:8px;flex:none;max-width:none!important}.feedback-controls .btn{min-height:44px;font-size:.9375rem}.feedback-feed{display:flex;gap:20px;overflow:auto;padding:4px 2px 20px;scroll-snap-type:x mandatory;overscroll-behavior-x:contain;scrollbar-width:thin;scrollbar-color:#586982 #131d2c}.feedback-card{flex:0 0 calc((100% - 40px)/3);min-width:0;border:1px solid #7b8fab35;border-radius:12px;padding:24px;display:flex;flex-direction:column;background:linear-gradient(150deg,#202b3d91,#131d2ad4);scroll-snap-align:start}.feedback-identity,.review-head{display:flex;align-items:center;gap:12px;margin-bottom:18px}.avatar{width:40px;height:40px;display:grid;place-items:center;flex:none;border-radius:50%;color:#dfbd83;background:#273349;border:1px solid #5b6d873d;font-size:.9375rem;font-weight:650}.feedback-identity strong,.review-who strong{display:block;font-size:1rem;color:#e3e9f2;overflow-wrap:anywhere}.feedback-identity>div>span,.review-date{display:block;font-size:.875rem;color:#a3b4cb}.feedback-card blockquote{margin:20px 0 24px;padding:0;border:0;color:#c5cfdd;font-size:1rem;line-height:1.8}.feedback-resource{display:flex;justify-content:space-between;gap:12px;align-items:center;margin-top:auto;border-top:1px solid #687c9b33;padding-top:18px;color:#e5c48e;font-size:.9375rem}.feedback-resource .icon{width:18px;height:18px}
.star-rating{display:inline-flex;align-items:center;gap:10px;flex-wrap:wrap}.rating-stars{display:inline-flex;align-items:center;gap:3px}.rating-star{display:block;width:18px;height:18px}.rating-number{font-size:.9375rem;font-weight:650;color:#f0cd89;white-space:nowrap}.rating-number small{font-size:.875rem;color:#aebbd0;font-weight:400}.reviews-note{color:#9eabc0;font-size:.875rem;line-height:1.75;margin-top:18px}.reviews{padding:56px 0;border-top:1px solid var(--line)}.review-list{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:20px}.review{background:linear-gradient(150deg,#1d293da6,#141e2bb3);border:1px solid #60779440;border-radius:12px;padding:24px;min-width:0}.review .star-rating{margin-bottom:20px}.review-title{font-size:1.15rem;line-height:1.4;margin:0 0 12px;letter-spacing:-.01em}.review-text{font-size:1rem;line-height:1.8;color:#bfcddd}.review-source{font-size:.875rem;color:#9bacc4}
.journal-grid{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:24px}.journal-card{border:1px solid #60728b5c;border-radius:14px;overflow:hidden;background:linear-gradient(145deg,#1b2639c9,#131c2bdb);display:flex;flex-direction:column;position:relative;min-width:0;box-shadow:0 8px 30px #0002;padding:0;transform:none!important}.journal-cover{display:block;aspect-ratio:16/9;overflow:hidden;margin:0}.journal-cover img{width:100%;height:100%;object-fit:cover;transition:transform .5s}.journal-cover:hover img{transform:scale(1.04)}.journal-body{padding:24px;display:flex;flex-direction:column;flex:1}.journal-meta{display:flex;align-items:center;justify-content:space-between;flex-wrap:wrap;gap:8px;font-size:.875rem;color:#b0c0d4;margin-bottom:18px}.journal-meta>span:last-child{display:inline-flex;align-items:center;gap:6px}.journal-meta .icon{width:15px;height:15px}.journal-tag{display:inline-flex;background:#b69bcc12;color:#d0bced;border:1px solid #b69bcc35;border-radius:5px;padding:4px 8px}.journal-card h2{font-size:1.375rem;letter-spacing:-.025em;line-height:1.35;margin-bottom:16px}.journal-card p{font-size:1rem;line-height:1.7;margin:0 0 24px;color:#b3c0d3}.journal-foot{border-top:1px solid #7587a52b;padding-top:16px;display:flex;flex-wrap:wrap;gap:16px;align-items:center;justify-content:space-between;margin-top:auto;font-size:.875rem;color:#9caec7}.text-action{display:inline-flex;align-items:center;gap:8px;color:#eed09a;min-height:44px;font-size:.9375rem;font-weight:600}.text-action .icon{width:18px;height:18px}
.blog-article{max-width:1000px;padding-top:8px}.blog-article header{max-width:860px;margin:40px 0 32px}.blog-article h1{font-size:clamp(2.2rem,4.2vw,3.5rem)}.article-lead{font-size:1.2rem}.post-meta{display:flex;align-items:center;gap:8px;flex-wrap:wrap;font-size:.9375rem}.article-cover{width:100%;height:auto;aspect-ratio:16/9;object-fit:cover;border-radius:14px;border:1px solid var(--line);margin-bottom:48px}.blog-article .prose{margin-inline:auto}.article-tags{display:flex;flex-wrap:wrap;gap:10px;margin:36px 0}.article-tags a{min-height:44px;padding:8px 14px;background:#22304899;border:1px solid #4a5e7e88;border-radius:7px;font-size:.9375rem}
.studio-custom{position:relative;margin:40px auto 80px;padding:48px 56px;border:1px solid #cba26455;border-radius:16px;background:radial-gradient(ellipse at 90% 0%,#a2743523,transparent 65%),linear-gradient(130deg,#1e2736dd,#181f2dd9);display:grid;grid-template-columns:minmax(0,1fr) auto;gap:32px;align-items:center;overflow:hidden;isolation:isolate}.studio-custom h2{font-size:clamp(2rem,3.7vw,3.2rem);margin:0 0 20px}.studio-custom p{max-width:590px;margin:0;color:#b6c4d8}.custom-orbit{position:absolute;width:200px;height:200px;right:200px;top:35px;z-index:-1;border:1px solid #dcb36312;border-radius:50%;display:grid;place-items:center;color:#dcb36316}.custom-orbit .icon{width:120px;height:120px}
.site-footer{border-top:1px solid var(--line);background:#0b111dc7;position:relative;margin:0}.footer-topline{display:flex;align-items:center;justify-content:space-between;padding-top:28px;font-size:.875rem;color:#8d9fb9;letter-spacing:.095em}.footer-topline span:last-child{letter-spacing:0;color:#b0bcd0}.footer-grid{display:grid;grid-template-columns:1.65fr 1fr 1fr 1.1fr;gap:48px;padding:48px 0 40px}.footer-brand p{font-size:1rem;line-height:1.8;color:#aebbd0;max-width:320px;margin:20px 0}.platform-badges{display:flex;flex-wrap:wrap;gap:8px;margin-top:20px}.platform-badges a{font-size:.875rem;min-height:44px;padding:10px 12px;border:1px solid #7384a23d;border-radius:7px;background:#7186b208;color:#d1bd99}.footer-social-links{display:flex;flex-wrap:wrap;gap:8px 20px;margin-top:12px}.footer-social-links a{font-size:.875rem;color:#a2b2c9;padding-block:10px;min-height:44px}.footer-col{display:flex;align-items:flex-start;flex-direction:column;gap:0}.footer-col h2{font-size:.9375rem;letter-spacing:.035em;line-height:1.5;font-weight:650;text-transform:none;margin:0 0 16px;color:#e0e6f0}.footer-col a{display:inline-flex;align-items:center;font-size:.9375rem;line-height:1.55;min-height:44px;padding:9px 0;margin:0;position:relative;color:#aab9ce}.footer-col a::after{content:"";position:absolute;left:0;right:0;bottom:7px;height:1px;background:#e8c88d;transform:scaleX(0);transform-origin:left;transition:transform .2s}.footer-col a:hover{color:#e8c88d}.footer-col a:hover::after{transform:scaleX(1)}
.footer-bottom{display:grid;grid-template-columns:1.4fr 1fr;gap:48px;padding:28px 0 32px;text-align:left;border-top:1px solid #7e8faa26}.footer-bottom p{font-size:.875rem;color:#a2b2c9;margin:0 0 10px;line-height:1.7}.footer-legal{font-size:.875rem!important;opacity:1!important;max-width:650px;color:#94a4bd!important}.footer-bottom>div:last-child{text-align:right}.pay-badges{display:flex;justify-content:flex-end;gap:8px;flex-wrap:wrap}.pay-badges span{font-size:.875rem;font-weight:600;padding:5px 8px;line-height:1.4;border:1px solid #7186a440;background:#152036;border-radius:5px;color:#b2c1d8;min-height:30px}.payment-label{font-size:.875rem}
body>.drawer-overlay{z-index:980!important;background:#050a12bd;backdrop-filter:blur(6px)}body>.mobile-nav{z-index:1000!important}body>.cart-drawer,body>.search-overlay,body>#search-overlay{z-index:1010!important}body>.lightbox,body>#media-viewer{z-index:1100!important}.toast-wrap{z-index:1600;max-width:calc(100vw - 32px);left:16px;right:16px;transform:none;margin-inline:auto;bottom:20px}.toast{font-size:.9375rem;line-height:1.6;background:#1e2d43;border:1px solid #6a81a06e}.toast .icon{width:20px;height:20px}
.mobile-nav{background:rgba(13,21,36,.98)!important;backdrop-filter:blur(12px);width:min(440px,100%);left:auto!important;right:0;position:fixed!important;top:0!important;bottom:0;padding:24px;overflow:auto;border-left:1px solid #7186a644}.mobile-nav-head{display:flex;align-items:center;justify-content:space-between;padding:4px 0 20px;border-bottom:1px solid var(--line)}.mobile-nav nav{padding-top:16px}.mobile-nav nav>a,.mobile-nav-group summary{font-size:1.05rem;min-height:48px;display:flex;align-items:center;padding:12px 8px;color:#d4deed;cursor:pointer}.mobile-nav-group{border-bottom:1px solid #ffffff12;padding:4px 0}.mobile-nav-group>div{display:grid;padding:4px 0 8px 12px}.mobile-nav-group>div a{font-size:1rem;min-height:44px;padding:10px;color:#acbdd3}
.cart-drawer{width:min(480px,100%);background:#101a2b!important;border-left:1px solid #55678180;padding:0;max-height:100dvh}.cart-head,.cart-foot{padding:24px}.cart-items{padding:0 24px}.cart-head h2{font-size:1.4rem}.cart-empty{padding:48px 24px}.cart-item-name{font-size:1rem}.cart-item-price,.cart-tax-note,.cart-secure{font-size:.875rem}.qty-ctrl button,.cart-remove{min-width:44px;min-height:44px}.cart-item{grid-template-columns:64px minmax(0,1fr) 120px;gap:12px}.qty-ctrl input{width:32px;min-height:44px;padding:0}.cart-item img{border-radius:8px}.cart-secure{line-height:1.65}.cart-demo-note{font-size:.9375rem}.coupon-row input{min-width:0}
.search-overlay{background:#040915c9;backdrop-filter:blur(10px);padding:80px 16px 24px}.search-overlay .search-box{width:min(740px,100%);box-sizing:border-box;border:1px solid #798bb06b;border-radius:14px;background:#121e30;max-height:calc(100dvh - 110px);overflow:auto}.search-input-row{padding:18px}.search-input-row input{min-width:0;font-size:1.05rem}.search-hit-title{font-size:1rem}.search-hit-excerpt,.search-hint,.search-group{font-size:.875rem}.search-hint{padding:14px 18px}.search-none{font-size:1rem;padding:32px}.search-hit{min-height:76px}.search-hit img{width:60px;height:48px;object-fit:cover;border-radius:6px}
.error-page{padding-block:100px;max-width:950px;min-height:60vh}.error-page h1{max-width:700px}.error-page .btn{margin-top:16px}
.page-hero,.page-header{padding-block:64px}.page-hero h1,.page-header h1{font-size:clamp(2.1rem,4vw,3.5rem)}.faq summary{font-size:1.05rem;min-height:48px}.faq p,.service-card p,.custom-section p,.support-card p{font-size:1.05rem}.welcome-card,.rules-card{background:#152138!important;border:1px solid #6a7f9c!important}.welcome-card p,.rules-card p,.rules-card li{font-size:1rem}.announce,.announce-link,.announce-code{font-size:.875rem}.announce-close{min-height:44px;min-width:44px}.announce-in{padding-block:4px}.prose table{display:block;max-width:100%;overflow:auto}
@media(min-width:1550px){.studio-hero{gap:80px;padding-block:80px}.slogan-stack{font-size:3.8rem}}
@media(max-width:1150px){.header-in{gap:24px}.nav-link{padding:12px 10px}.container,.site-header .header-in{width:calc(100% - 48px)}.studio-hero{gap:32px}.slogan-stack{font-size:clamp(2.5rem,4.6vw,3.6rem)}.studio-categories{gap:8px}.studio-categories>a{padding:12px;gap:8px}.category-icon{width:28px}.studio-categories>a>.icon{display:none}.footer-grid{gap:28px;grid-template-columns:1.5fr 1fr 1fr 1fr}.dynamic-product{gap:24px}.buy-panel,.dynamic-product .buy-panel{padding:24px}.hero-ctas .btn{font-size:.9375rem;padding-inline:16px}.card-body{padding:20px}}
@media(max-width:960px){.main-nav{display:none!important}.menu-btn{display:inline-flex}.studio-hero{grid-template-columns:1fr 1fr;gap:28px;padding-top:48px;min-height:0}.slogan-stack{font-size:2.7rem}.studio-feature-top{padding:14px 18px;font-size:.875rem;letter-spacing:.04em}.studio-feature-info{padding:20px;min-height:200px}.studio-feature-info h2{font-size:1.6rem}.studio-feature-info p{font-size:1rem;-webkit-line-clamp:3}.hero-ctas{flex-direction:column;align-items:stretch;max-width:360px}.studio-proof{gap:12px;font-size:.875rem}.studio-categories{grid-template-columns:repeat(3,minmax(0,1fr))}.studio-categories>a{padding:14px}.studio-categories>a>.icon{display:block}.category-intro{gap:16px}.grid.grid-products,.journal-grid{grid-template-columns:repeat(2,minmax(0,1fr))}.feedback-card{flex-basis:calc((100% - 20px)/2)}.feedback-section .section-head{align-items:flex-start;flex-direction:column}.footer-grid{grid-template-columns:1.3fr 1fr 1fr}.footer-brand{grid-column:1/-1;display:block}.footer-brand p{max-width:500px}.dynamic-product{grid-template-columns:minmax(0,1fr) minmax(0,.9fr);gap:24px}.technical-grid{grid-template-columns:1fr}.spec-wide{grid-column:auto}.technical-panel{padding:20px}.panel-label{flex-wrap:wrap;gap:4px}.studio-custom{padding:40px;grid-template-columns:1fr auto}.edition-filters{gap:12px 24px}.edition-filters>div{flex-basis:100%}}
@media(max-width:720px){.container,.site-header .header-in{width:calc(100% - 40px)}.header-in{height:76px;gap:16px}.brand-name{font-size:1.25rem}.brand img{width:30px;height:30px}.brand{gap:10px}.header-actions{gap:8px}.discord-btn{display:none}.studio-hero{display:flex;flex-direction:column;gap:36px;padding:44px 0 40px}.studio-hero-copy{width:100%}.studio-hero .kicker{font-size:.875rem;letter-spacing:.06em;max-width:100%}.slogan-stack{font-size:clamp(2.55rem,7.8vw,3.8rem);margin-bottom:24px}.studio-lead{font-size:1.05rem}.hero-ctas{max-width:none;flex-direction:row}.hero-ctas .btn{flex:1 1 240px;padding-block:16px}.slogan-controls{gap:8px}.micro-label{font-size:.875rem}.cycle-dot{width:28px}.studio-proof{font-size:.875rem;gap:12px 20px;padding-top:20px}.spotlight{width:100%;max-width:620px;align-self:center}.studio-feature-info{min-height:0;padding:24px}.studio-feature-info p{-webkit-line-clamp:3}.studio-feature-info h2{font-size:1.8rem}.studio-feature-top{font-size:.875rem;padding:18px 20px}.spotlight-footer{padding:12px 20px}.category-section{padding-top:8px;padding-bottom:40px}.category-intro{flex-direction:column;align-items:flex-start;gap:6px}.studio-categories{grid-template-columns:repeat(2,minmax(0,1fr));gap:10px}.studio-categories>a{min-height:84px;padding:14px;gap:10px}.studio-categories>a:last-child{grid-column:1/-1}.studio-categories>a>.icon{display:none}.studio-categories>a:last-child>.icon{display:block}.studio-categories strong{font-size:.9375rem}.section{padding-block:44px}.section-head{flex-wrap:wrap;align-items:flex-start;gap:20px}.section-head h2{font-size:1.9rem}.section-head p{font-size:1.05rem}.listing-route{padding-top:0}.listing-heading{margin-top:20px;margin-bottom:28px}.listing-heading h1{font-size:2.5rem}.listing-heading p{font-size:1.05rem}.listing-heading .eyebrow{font-size:.875rem}.catalog-tabs a{font-size:.875rem;gap:6px;padding:10px 12px}.catalog-tabs .icon{width:16px;height:16px}.edition-filters{padding:18px;gap:14px;display:grid;grid-template-columns:1fr}.edition-filters>div{min-width:0}.edition-toggle{justify-content:flex-start;font-size:.9375rem}.catalog-tools{flex-wrap:wrap;gap:12px}.catalog-search{flex:1 1 100%}.catalog-tools [data-catalog-count]{margin-left:auto}.grid.grid-products,.journal-grid{gap:16px}.card-body,.journal-body{padding:20px}.card-title{min-height:0}.dynamic-product{display:flex;flex-direction:column;gap:28px;padding-top:0}.dynamic-gallery,.product-side{width:100%}.product-side{order:-1}.buy-panel,.dynamic-product .buy-panel{padding:24px}.dynamic-product .buy-panel h1{font-size:2rem}.technical-grid{grid-template-columns:1fr 1fr}.spec-wide{grid-column:1/-1}.ssr-thumbnails{grid-template-columns:repeat(4,minmax(0,1fr))}.reviews{padding-block:40px}.review-list{grid-template-columns:1fr}.reviews-head{flex-direction:column;gap:20px}.studio-custom{padding:32px 24px;margin:24px auto 48px;display:flex;flex-direction:column;align-items:flex-start;gap:28px}.studio-custom .btn{width:100%}.studio-custom h2{font-size:2.3rem}.footer-topline{flex-direction:column;align-items:flex-start;gap:8px;font-size:.875rem}.footer-grid{grid-template-columns:repeat(2,minmax(0,1fr));padding-block:32px;gap:24px}.footer-brand{grid-column:1/-1}.footer-col:last-child{grid-column:1/-1;display:grid;grid-template-columns:1fr 1fr;gap:0 20px}.footer-col:last-child h2{grid-column:1/-1;margin-bottom:8px}.footer-col h2{font-size:.9375rem}.footer-col a{font-size:.9375rem;line-height:1.5;min-height:44px}.footer-bottom{grid-template-columns:1fr;gap:16px}.footer-bottom>div:last-child{text-align:left}.pay-badges{justify-content:flex-start}.feedback-card{flex-basis:87%;padding:24px}.feedback-controls{width:100%;max-width:100%!important}.feedback-controls .btn{flex:1}.blog-article header{margin:24px 0}.blog-article h1{font-size:2.25rem}.blog-article .article-lead{font-size:1.1rem}.article-cover{margin-bottom:32px}.search-overlay{padding-top:24px}.search-overlay .search-box{max-height:calc(100dvh - 48px)}.search-hit{grid-template-columns:50px minmax(0,1fr)}.search-hit img{width:50px}.announce-in{flex-wrap:wrap;gap:8px}.breadcrumbs{padding-top:24px;margin-bottom:28px}}
@media(max-width:560px){.grid.grid-products,.journal-grid{grid-template-columns:minmax(0,1fr)}.card-title{font-size:1.3rem}.card-excerpt{min-height:0}.card-body{padding:24px}.resource-meta{margin-bottom:20px}.card-foot{flex-wrap:nowrap;align-items:flex-start}.card-foot .price-stack{max-width:calc(100% - 120px)}.card-foot .btn{padding-inline:12px}.slogan-stack{font-size:clamp(2.4rem,9.8vw,3rem)}.studio-hero .kicker{font-size:.875rem;letter-spacing:.03em}.spotlight-media-tag{left:16px;bottom:14px}.round-arrow{right:14px;bottom:12px}.micro-label{max-width:120px;line-height:1.4}.technical-grid{gap:10px}.technical-spec{padding:12px}.technical-spec dt{font-size:.875rem;align-items:flex-start;gap:6px;flex-direction:column}.technical-spec dd{font-size:1rem}.catalog-price-note{align-items:flex-start}.review-head{gap:10px}.feedback-card .rating-star{width:18px}.cart-item{grid-template-columns:44px minmax(0,1fr);gap:12px}.cart-item-side{grid-column:2;display:flex;justify-content:space-between}.cart-item img{width:44px}.cart-head,.cart-foot{padding:20px}.cart-items{padding:0 20px}.studio-feature-top{gap:8px;letter-spacing:.04em}.spotlight-dot{width:36px}.spotlight-dots{gap:2px}.spotlight-footer{padding-inline:16px}.spotlight-arrows{gap:4px}}
@media(prefers-reduced-motion:reduce){html{scroll-behavior:auto}*,*::before,*::after{animation:none!important;transition:none!important;scroll-behavior:auto!important}.card-media:hover img,.studio-feature-image:hover img,.journal-cover:hover img{transform:none!important}}
.mobile-nav-group summary{justify-content:space-between;gap:12px}
main :is(p,div):has(> .btn + .btn){display:flex;flex-wrap:wrap;gap:12px;align-items:center}
:root{--v4-gold:#efcc8c;--v4-surface:#121e2b;--theme-a:#755028;--theme-b:#1b4666;--theme-c:#303151;--theme-base:#090f17;--theme-strength:1}
html[data-theme=mesh]{--theme-a:#354d80;--theme-b:#604168;--theme-c:#244b52}
html[data-theme=cyber]{--theme-a:#353277;--theme-b:#126276;--theme-c:#3d235c}
html[data-theme=ambient]{--theme-a:#3e456d;--theme-b:#315978;--theme-c:#514069}
html[data-theme=minimal]{--theme-a:#162131;--theme-b:#111a26;--theme-c:#131c29}
html[data-theme=aurora-teal]{--theme-a:#135c5b;--theme-b:#174765;--theme-c:#352554}
html[data-theme=cobalt]{--theme-a:#153e84;--theme-b:#185c87;--theme-c:#352f61}
html[data-theme=amethyst]{--theme-a:#573c7f;--theme-b:#283763;--theme-c:#603851}
html[data-theme=ember]{--theme-a:#723c20;--theme-b:#422934;--theme-c:#672b22}
html[data-theme=midnight]{--theme-a:#1b2c66;--theme-b:#25214b;--theme-c:#163344}
html[data-theme=blueprint]{--theme-a:#1b4875;--theme-b:#143c54;--theme-c:#133256}
html[data-theme=carbon]{--theme-a:#313940;--theme-b:#262c33;--theme-c:#3b3330}
html[data-theme=rose-noir]{--theme-a:#63344d;--theme-b:#3a2b50;--theme-c:#493050}
html[data-theme=forest]{--theme-a:#224b3c;--theme-b:#183a43;--theme-c:#45472e}
html[data-theme=copper]{--theme-a:#6b432c;--theme-b:#2e3b47;--theme-c:#583b46}
html[data-theme=arctic]{--theme-a:#355268;--theme-b:#25465e;--theme-c:#314569}
html body::before,html[data-theme] body::before{background:radial-gradient(ellipse 65% 70% at 98% 10%,var(--theme-a),transparent 74%),radial-gradient(ellipse 75% 50% at -15% 24%,var(--theme-b),transparent 68%),radial-gradient(ellipse 65% 40% at 75% 90%,var(--theme-c),transparent 80%),var(--theme-base);opacity:var(--theme-strength);z-index:-5}
html body::after{z-index:-4;opacity:.32;background-size:42px 42px;mask-image:linear-gradient(#000,transparent 85%)}
html[data-theme=blueprint] body::after{background-image:linear-gradient(#96cced40 1px,transparent 1px),linear-gradient(90deg,#96cced40 1px,transparent 1px);background-size:36px 36px}
html[data-theme=carbon] body::after{background-image:repeating-linear-gradient(45deg,#ffffff18 0 1px,transparent 1px 8px);mask-image:none;opacity:.2}
html[data-theme=minimal] #site-bg-gradient{display:none}
#site-bg-gradient{z-index:-3!important;inset:-12%!important;width:124%;height:124%;max-width:none;opacity:var(--grad-opacity,.5)!important;filter:blur(var(--grad-blur,60px));background:radial-gradient(ellipse at 10% 35%,var(--grad-1),transparent 60%),radial-gradient(ellipse at 90% 25%,var(--grad-3),transparent 65%),radial-gradient(ellipse at 55% 80%,var(--grad-2),transparent 65%);animation:studio-aurora var(--grad-speed,36s) ease-in-out infinite alternate;isolation:isolate;mix-blend-mode:normal}
#site-bg-gradient::before,#site-bg-gradient::after{content:none!important}
#site-bg-gradient[data-style=mesh]{background:radial-gradient(at 15% 10%,var(--grad-3),transparent 50%),radial-gradient(at 90% 15%,var(--grad-1),transparent 60%),radial-gradient(at 20% 90%,var(--grad-2),transparent 65%)}
#site-bg-gradient[data-style=radial]{background:radial-gradient(ellipse at center,var(--grad-3),var(--grad-2) 45%,var(--grad-1) 75%)}
#site-bg-gradient[data-style=conic]{background:conic-gradient(from 45deg,var(--grad-1),var(--grad-2),var(--grad-3),var(--grad-1))}
#site-bg-gradient[data-style=linear]{background:linear-gradient(135deg,var(--grad-1),var(--grad-2) 45%,var(--grad-3))}
#site-bg-gradient[data-style=spotlight]{background:radial-gradient(ellipse 50% 90% at 80% 0,var(--grad-3),transparent 80%),var(--grad-1)}
#site-bg-image{z-index:-2!important}#site-bg{z-index:-1!important}
@keyframes studio-aurora{from{transform:translate(-2%,-1%) scale(1)}to{transform:translate(2%,3%) scale(1.08)}}
.container,.site-header .header-in{width:min(1320px,calc(100% - 96px));max-width:1320px}
.brand-name{font-family:"Kaizo Circuit",var(--font-body);font-size:1.55rem;letter-spacing:.15em}
body>.site-header{background:#0b121bd9!important}.header-in{height:88px;gap:48px}
.studio-hero{gap:56px;grid-template-columns:minmax(0,1.05fr) minmax(0,1fr);padding:72px 0 64px;min-height:750px}
.studio-hero .kicker{font-size:.875rem;letter-spacing:.13em}.slogan-stack{font-size:clamp(3rem,4.6vw,4.25rem);line-height:1.03;letter-spacing:-.055em;font-weight:800;min-height:3.15em}
.gold{color:#f4d295}.studio-lead{max-width:490px;margin-top:28px;color:#c0cad7;line-height:1.8}
.hero-ctas .btn{min-height:54px}.btn{border-radius:8px}.btn-gold{background:linear-gradient(115deg,#f6dca6,#dcb06a);border-color:#f5d9a0;box-shadow:0 4px 24px #f4c97718,inset 0 1px #fff6}
.btn-outline{border-color:#68768b70;background:#15233375}.btn-outline:hover{background:#e2c38a14;border-color:#d9ba80}
.slogan-controls{margin-top:24px}.cycle-dot{width:44px}.cycle-dot span{width:9px;height:9px;border-radius:50%;background:#71829b}.cycle-dot.is-active span{width:9px;background:#f0ce90;box-shadow:0 0 0 5px #efcc8c12}.micro-label{display:none}.motion-toggle{margin-left:4px}
.studio-proof{font-size:.875rem;color:#c0cad6;padding-top:20px;margin-top:12px;gap:12px 18px}
.spotlight{border-radius:12px;border-color:#b198705c;background:linear-gradient(145deg,#202c3a,#111d2a);box-shadow:0 30px 90px #0005,0 0 0 6px #dab77505;overflow:clip}
.studio-feature-top{font-size:.875rem;letter-spacing:.07em;background:#0c172590;padding:18px 24px;border-bottom:1px solid #d9be8926}
.spotlight-slides{display:grid;isolation:isolate;position:relative}
.spotlight-slide{grid-area:1/1;min-width:0;opacity:0;visibility:hidden;pointer-events:none;transition:opacity .65s ease,visibility .65s;transform:none}
.spotlight-slide.is-active{opacity:1;visibility:visible;pointer-events:auto;z-index:1}
.studio-feature-image{aspect-ratio:16/10;border:0}.studio-feature-image img{transition:transform 6s ease;object-position:center}.spotlight-slide.is-active .studio-feature-image img{transform:scale(1.025)}
.studio-feature-info{padding:24px 28px 22px;min-height:0}.studio-feature-info h2{font-size:2rem;margin:0 0 12px}.studio-feature-info .eyebrow{font-size:.875rem;letter-spacing:.08em}
.studio-feature-info p{color:#bac7d8;-webkit-line-clamp:2;min-height:3.3em;font-size:1rem;line-height:1.65}
.spotlight-buy{display:flex;align-items:center;justify-content:space-between;gap:16px;margin-top:20px}.spotlight-buy .price{font-size:1.15rem}.spotlight-buy .quick-add{border-color:#d6b67580;background:#d6b67510;color:#f1d195}
.spotlight-footer{padding:14px 22px;gap:12px;background:#0c172570;border-top:1px solid #b7c9e020;flex-wrap:wrap}
.spotlight-dots{gap:8px}.spotlight-dot{width:44px;height:44px;border:1px solid #7990ae55;border-radius:8px;background:#182739;color:#c4cfde;transition:background .25s,border-color .25s,box-shadow .25s;position:relative}
.spotlight-dot.is-active{color:#1b160d;background:#ecd09b;border:1px solid #f5e0b6;box-shadow:0 2px 16px #dfb67120}.spotlight-dot:hover{border-color:#e8c487;color:#f6e0b6}.spotlight-dot.is-active:hover{color:#1b160d}
.spotlight-arrows .icon-btn{background:#162536}.spotlight-media-tag{font-size:.875rem;background:#081728cc}.round-arrow{width:44px;height:44px}
.category-section{padding:24px 0 56px}.category-intro{display:block;margin-bottom:24px}.category-intro h2{font-size:clamp(1.9rem,3vw,2.7rem);margin:8px 0}.category-intro .eyebrow{color:#e5bf7d;letter-spacing:.12em}
.studio-categories{gap:12px}.studio-categories>a{min-height:176px;display:grid;grid-template-columns:1fr auto;align-content:space-between;align-items:start;gap:22px 8px;border-radius:10px;border:1px solid #8c9aac55;padding:20px;isolation:isolate;background:#102031;overflow:hidden;transition:background .3s,border-color .3s,box-shadow .3s}
.studio-categories>a .category-art{position:absolute;inset:0;z-index:-2;opacity:.18;transition:opacity .5s,transform .6s}.category-art img{width:100%;height:100%;object-fit:cover;filter:saturate(.7)}
.studio-categories>a::before{content:"";position:absolute;inset:0;background:linear-gradient(180deg,#0b162744,#0b172de8);z-index:-1}
.studio-categories>a:hover{border-color:#d9bb7e;background:#1e3043;box-shadow:0 12px 30px #0003}.studio-categories>a:hover .category-art{opacity:.36;transform:scale(1.06)}
.studio-categories .category-icon{grid-column:1;grid-row:1;width:42px;height:42px;border:1px solid #d9bf8c45;background:#d9bf8c0b;border-radius:8px;color:#efd298}.category-icon .icon{width:23px;height:23px}
.studio-categories>a>span:not(.category-art):not(.category-icon){grid-column:1/-1;grid-row:2}.studio-categories small{font-size:.875rem;letter-spacing:.06em;color:#a9b8cc}.studio-categories strong{font-size:1.05rem;margin-top:4px;letter-spacing:-.02em;color:#f4eddf}
.studio-categories>a>.icon{display:block;grid-column:2;grid-row:1;color:#d4b47c;margin:4px 0 0;width:20px;height:20px}
.section-head h2{font-size:clamp(1.9rem,3vw,2.75rem);letter-spacing:-.045em}.section-head p{max-width:640px}.section-head .eyebrow{letter-spacing:.12em;font-size:.875rem}
.home-managed{border-top:1px solid #b1c5de18}.home-managed .section-head{margin-bottom:0}
.rail-controls{display:flex;align-items:center;justify-content:flex-end;gap:12px;margin:20px 0 16px}.rail-position{font-size:.875rem;font-variant-numeric:tabular-nums;color:#b7c7dc;min-width:60px;text-align:center}
.studio-rail{display:grid!important;grid-auto-flow:column;grid-auto-columns:calc((100% - 48px)/3);grid-template-columns:none!important;gap:24px;overflow-x:auto;overflow-y:hidden;padding:3px 0 20px;scroll-snap-type:x mandatory;scroll-padding-inline:0;overscroll-behavior-x:contain;scrollbar-width:thin;scrollbar-color:#ac8b524f #152236;max-width:100%}
.studio-rail>*{scroll-snap-align:start;min-width:0}.studio-rail .product-card{width:auto}
.card.product-card{border-radius:10px;background:linear-gradient(150deg,#1c2a3b,#111c29) padding-box,linear-gradient(145deg,#76869d77,#e4bf7940) border-box;box-shadow:0 10px 35px #0002}
.card.product-card:hover{background:linear-gradient(150deg,#203147,#152434) padding-box,linear-gradient(145deg,#eec884aa,#5279a45e) border-box;box-shadow:0 16px 35px #0004}
.card-body{padding:24px}.card-title{min-height:2.8em;line-height:1.4;font-size:1.25rem;font-weight:700}.card-excerpt{font-size:1rem;color:#bcc9da;line-height:1.7}
.card-foot{gap:14px 10px;display:grid;grid-template-columns:minmax(0,1fr) auto;align-items:center}.card-foot .price-stack{max-width:none!important}.card-foot .price{font-size:1.25rem}.card-foot .quick-add{margin:0;padding:10px 12px;color:#f1d49e;border-color:#d4b58170;gap:8px}.quick-add .icon{width:19px;height:19px}.quick-add span{white-space:nowrap;font-size:.9375rem}.card-detail-link{grid-column:1/-1;justify-content:space-between;width:100%;border-top:1px solid #c1d3eb15;padding-top:12px;margin-top:2px;font-size:.875rem;color:#b5c7de;min-height:44px}
.card-media{aspect-ratio:16/10}.category-badge{background:#0f1e2fe8;backdrop-filter:blur(8px);border-color:#c8b38260;font-weight:600;font-size:.875rem}.resource-meta>span{border-radius:4px;color:#b9c9de;background:#0b182778}
.feedback-card{background:linear-gradient(140deg,#1c2a3be8,#111d2beb);border-color:#9caeca40;border-radius:10px}.feedback-card blockquote{color:#cdd5e1}.feedback-feed{gap:24px}.feedback-card{flex-basis:calc((100% - 48px)/3)}.feedback-card .avatar{border-radius:8px;background:#26384d;color:#eed09a}
.home-journal{border-top:1px solid #b1c5de20}.journal-card{border-radius:10px;border-color:#9cb3d54f;background:linear-gradient(145deg,#1b2b3dec,#121e2beb)}.journal-card h3{font-size:1.35rem;line-height:1.4;margin:0 0 16px}.journal-cover{aspect-ratio:16/9}.journal-tag{text-transform:uppercase;font-size:.875rem;letter-spacing:.04em;background:#be925f14;border-color:#be925f60;color:#efd098}
.article-figure{margin:0 0 40px}.article-figure .article-cover{margin:0}.article-figure figcaption{font-size:.875rem;line-height:1.7;color:#b8c4d6;margin-top:12px}.blog-article .prose{max-width:740px}.blog-article .prose h2{scroll-margin-top:115px}.article-related{margin-top:40px;padding:24px;border:1px solid #a38b6850;background:#b4925420;border-radius:10px}
.suggestions{border:1px solid #c9ac7759;border-radius:10px;background:linear-gradient(135deg,#a1804720,#172b40b3);padding:0 24px 24px;margin-bottom:28px;overflow:hidden}.suggestions>summary{display:flex;align-items:center;justify-content:space-between;min-height:68px;cursor:pointer;font-weight:650;list-style:none;gap:16px;color:#f2d397}.suggestions>summary::-webkit-details-marker{display:none}.suggestions>summary>span{display:flex;gap:12px;align-items:center}.suggestions[open]>summary>.icon{transform:rotate(180deg)}.suggestions:not([open]){padding-bottom:0}
.suggestions-top{display:flex;align-items:center;justify-content:space-between;gap:24px;margin-bottom:20px}.suggestions-top p{font-size:.875rem;margin:0;max-width:630px}.suggestions-top .btn{flex:none}
.suggestion-grid{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:20px}.suggestion-item{display:grid;grid-template-columns:72px minmax(0,1fr);align-items:start;gap:14px;padding:16px;background:#101e30bd;border:1px solid #8ea5c62b;border-radius:8px}.suggestion-image{border-radius:6px;overflow:hidden;display:block;aspect-ratio:1}.suggestion-image img{width:100%;height:100%;object-fit:cover}.suggestion-category{font-size:.875rem;color:#afc1d8}.suggestion-item h3{font-size:1rem;line-height:1.5;margin:4px 0 12px;letter-spacing:-.02em;min-height:3em}.suggestion-item .btn{padding:8px 10px;min-height:44px;gap:6px}
.studio-custom{border-radius:12px;background:radial-gradient(ellipse at 95% 0,#bd894647,transparent 60%),linear-gradient(120deg,#162738,#152232);border-color:#bd965f77}.studio-custom .eyebrow{letter-spacing:.12em}
.cart-account{padding:0 24px 20px;border-bottom:1px solid #8dabc228}.cart-account p{font-size:.875rem;margin:0 0 12px}.cart-error{margin:0 24px 20px;padding:16px;border:1px solid #e7988170;background:#49271f;color:#ffe1d4;font-size:1rem;line-height:1.65;border-radius:8px}.cart-drawer{overflow-y:auto}.cart-item-name{overflow-wrap:anywhere}.cart-foot{margin-top:auto}.cart-drawer [aria-busy=true]{cursor:wait}.cart-total{font-variant-numeric:tabular-nums}
.page-loader{position:fixed;inset:0;z-index:2400;pointer-events:none;display:grid;place-items:center;opacity:0;transition:opacity .2s;background:#08121cd9;backdrop-filter:blur(10px)}.page-loader.is-active{opacity:1}.page-loader.is-leaving{opacity:0}.page-loader__veil{display:none}.page-loader__badge{display:grid;justify-items:center;gap:20px;position:static;transform:none;padding:32px}.page-loader__stack{width:112px;height:112px;position:relative}.page-loader__mark{position:absolute;inset:0;width:100%;height:100%}.page-loader__mark.line path{fill:none;stroke:#efd196;stroke-width:4;stroke-dasharray:1000;animation:studio-mark 1.8s ease-in-out infinite}.page-loader__mark.solid{opacity:.92!important;fill:#eccc90}.page-loader__word{display:block!important;opacity:1!important;visibility:visible!important;transform:none!important;animation:none!important;font:750 1.25rem/1.3 var(--font-body);letter-spacing:.35em;color:#f2d79f}
@keyframes studio-mark{0%{stroke-dashoffset:1000;opacity:.5}65%,100%{stroke-dashoffset:0;opacity:1}}
.studio-reveal{animation:studio-arrive .7s both}@keyframes studio-arrive{from{opacity:.2;translate:0 18px}to{opacity:1;translate:0 0}}
@media(min-width:1600px){.studio-hero{padding-top:96px}.slogan-stack{font-size:4.5rem}}
@media(max-width:1199px){.container,.site-header .header-in{width:calc(100% - 56px)}.studio-hero{gap:32px;min-height:700px}.header-in{gap:28px}.slogan-stack{font-size:3.2rem}.studio-feature-info{padding:24px}.studio-categories>a{padding:16px;min-height:165px}.suggestion-item{grid-template-columns:1fr}.suggestion-image{aspect-ratio:16/9;width:100%}.card-foot{grid-template-columns:1fr}.card-foot .quick-add{width:100%;justify-content:center}.studio-proof{gap:12px}.spotlight-buy{flex-wrap:wrap}}
@media(max-width:960px){.studio-hero{grid-template-columns:minmax(0,1fr) minmax(0,1fr);gap:24px;align-items:center}.slogan-stack{font-size:2.8rem}.studio-feature-top{padding:16px;font-size:.875rem;gap:8px}.studio-feature-info{padding:20px}.studio-feature-info h2{font-size:1.7rem}.spotlight-footer{padding:12px;justify-content:center}.spotlight-dots{gap:4px}.spotlight-arrows{gap:8px}.studio-rail{grid-auto-columns:calc((100% - 24px)/2)}.feedback-card{flex-basis:calc((100% - 24px)/2)}.studio-categories{grid-template-columns:repeat(3,minmax(0,1fr))}.studio-categories>a{min-height:160px}.suggestion-grid{gap:12px}.suggestions{padding-inline:20px}.suggestion-item{padding:12px}.suggestion-item .quick-add{width:100%}.header-in{height:80px}}
@media(max-width:720px){.container,.site-header .header-in{width:calc(100% - 40px)}.header-in{height:76px;gap:12px}.brand-name{font-size:1.25rem}.header-actions{gap:6px}.studio-hero{display:flex;flex-direction:column;align-items:stretch;gap:36px;padding:40px 0;min-height:0}.slogan-stack{font-size:clamp(2.9rem,8.5vw,3.7rem);min-height:3.15em}.studio-hero .kicker{font-size:.875rem;letter-spacing:.04em}.studio-lead{margin-top:20px}.studio-feature-top{padding:18px 20px}.studio-feature-info{padding:24px}.studio-feature-info h2{font-size:1.9rem}.studio-feature-image{aspect-ratio:16/10}.spotlight-buy{flex-wrap:nowrap}.spotlight-footer{padding:16px;justify-content:space-between}.spotlight-dots{gap:5px}.spotlight-dot{width:44px}.spotlight-arrows .icon-btn{width:44px}.spotlight-arrows{gap:6px}.category-section{padding:12px 0 40px}.studio-categories{grid-template-columns:repeat(2,minmax(0,1fr));gap:12px}.studio-categories>a{min-height:155px;padding:18px}.studio-categories>a:last-child{grid-column:1/-1;min-height:130px}.studio-categories>a>.icon{display:block}.studio-categories strong{font-size:1rem}.studio-rail{grid-auto-columns:88%;gap:16px}.studio-rail .card-foot{grid-template-columns:1fr auto}.studio-rail .card-foot .quick-add{width:auto}.studio-rail .card-body{padding:20px}.feedback-card{flex-basis:88%}.feedback-feed{gap:16px}.feedback-section{overflow:visible}.rail-controls{margin-top:20px}.rail-position{font-size:.875rem}.section-head{gap:20px}.section-head h2{font-size:2rem}.card-title{min-height:0}.suggestions-top{flex-direction:column;align-items:flex-start;gap:16px}.suggestion-grid{grid-template-columns:1fr}.suggestion-item{grid-template-columns:76px minmax(0,1fr);gap:16px;padding:16px}.suggestion-image{aspect-ratio:1}.suggestion-item h3{min-height:0}.suggestion-item .quick-add{width:auto}.suggestions>summary{font-size:1rem;line-height:1.6;gap:12px}.suggestions{padding-inline:16px}.catalog-tools{margin-top:20px}.studio-custom h2{font-size:2.4rem}.article-figure figcaption{font-size:.875rem}.card-foot{grid-template-columns:1fr auto}.card-foot .quick-add{width:auto}.buy-panel,.dynamic-product .buy-panel{padding:24px}.studio-rail .review{padding:22px}}
@media(max-width:380px){.container,.site-header .header-in{width:calc(100% - 32px)}.brand-name{font-size:1.05rem}.brand img{width:26px;height:26px}.header-actions .icon-btn{width:42px;min-width:42px}.header-actions{gap:4px}.spotlight-footer{justify-content:center}.spotlight-buy{flex-wrap:wrap}.spotlight-dots{gap:5px}.slogan-stack{font-size:2.7rem}.studio-rail .card-foot{grid-template-columns:1fr}.studio-rail .card-foot .quick-add{width:100%}}
@media(prefers-reduced-motion:reduce){#site-bg-gradient{animation:none!important}.studio-reveal{animation:none}.spotlight-slide{transition:none}.page-loader{backdrop-filter:none}.page-loader__mark.line path{animation:none;stroke-dashoffset:0}.studio-feature-image img,.category-art{transform:none!important}::view-transition-old(root),::view-transition-new(root){animation:none!important}}
.search-hit-row{display:grid;grid-template-columns:minmax(0,1fr) auto;gap:8px;align-items:center}.search-hit-row .search-hit{min-width:0}.search-hit-row .search-hit-body{min-width:0}.search-quick-add{color:#edc988;border-color:#b89a6770;margin-right:4px;flex:none}.search-hit-row:not(:has(.search-quick-add)){grid-template-columns:1fr}
@media(max-width:720px){.spotlight-footer{justify-content:center}.spotlight-arrows{display:none}.spotlight-dots{gap:8px}.search-hit{grid-template-columns:44px minmax(0,1fr);gap:12px}.search-hit>img{width:44px;height:44px}.search-hit .price{grid-column:2}.search-quick-add{align-self:start;margin-top:16px}.search-hit-sub{font-size:.875rem}}
.depth-text{display:block;min-width:0;width:100%;perspective:900px;perspective-origin:45% 48%;isolation:isolate}
.depth-text__stage{position:relative;display:grid;width:100%;transform-style:preserve-3d;transform-origin:45% 50%}
.depth-text__layer,.depth-text__face{grid-area:1/1;display:block;width:100%;font:inherit;line-height:1.08;letter-spacing:-.055em;backface-visibility:hidden;transform-style:preserve-3d;font-kerning:normal;text-rendering:geometricPrecision}
.depth-text__line{display:block;white-space:nowrap}
.depth-text__layer{position:absolute;inset:0;pointer-events:none;user-select:none}
.depth-text__layer *{color:inherit!important}
.depth-text__face{position:relative;color:var(--depth-text-face-color,#f7f3eb);text-shadow:0 12px 22px #0004;transform:translateZ(.6px)}
.depth-text__face .gold{color:#efd099}
.slogan.is-active .depth-text__stage{will-change:transform}
@media(prefers-reduced-motion:reduce){.depth-text__stage{will-change:auto!important;transform:none!important}.depth-text__layer{display:none}}
.studio-hero .slogan.depth-text.is-active{pointer-events:auto}
.morph-surface{position:absolute;left:0;right:0;top:0;aspect-ratio:16/10;z-index:2;pointer-events:none;opacity:0;overflow:hidden;background:transparent}
.morph-slider-canvas{display:block;width:100%;height:100%}
.spotlight.morph-ready .morph-surface{opacity:1}
.spotlight .spotlight-slide.is-active{z-index:3}
.spotlight.morph-ready .studio-feature-image{background:transparent!important}
.spotlight.morph-ready .studio-feature-image>img{opacity:0}
.spotlight .studio-feature-image{touch-action:pan-y;cursor:grab}
.spotlight .studio-feature-image:active{cursor:grabbing}
.spotlight:not(.morph-ready).is-hovering .studio-feature-image>img{transform:scale(1.065) rotate(-.4deg);filter:saturate(1.1);transition:transform 1.1s cubic-bezier(.16,1,.3,1),filter 1.1s}
.spotlight .studio-feature-image>img{transition:transform 1.1s cubic-bezier(.16,1,.3,1),filter 1.1s}
.spotlight .round-arrow{transition:transform .45s cubic-bezier(.16,1,.3,1),background .45s}
.spotlight.is-hovering .round-arrow{transform:rotate(-9deg) scale(1.08);background:#d9b87f;color:#131820}
@media(prefers-reduced-motion:reduce){.spotlight .studio-feature-image>img,.spotlight .round-arrow{transform:none!important;filter:none!important;transition:none!important}}
.chroma-grid{position:relative;isolation:isolate;--x:50%;--y:50%;--r:300px;margin-top:8px}
.chroma-grid .chroma-card{position:relative;background:linear-gradient(145deg,rgba(var(--chroma-color),.12),#101a27 75%);border:1px solid rgba(var(--chroma-color),.28);border-radius:12px;overflow:hidden;transition:border-color .35s,box-shadow .35s}
.chroma-card::before{content:'';position:absolute;inset:0;background:radial-gradient(260px circle at var(--mouse-x,50%) var(--mouse-y,50%),rgba(var(--chroma-color),.17),transparent 72%);pointer-events:none;opacity:0;transition:opacity .45s;z-index:0}
.chroma-card>*{position:relative;z-index:1}
.chroma-card:hover,.chroma-card:focus-within{border-color:rgba(var(--chroma-color),.8);box-shadow:inset 0 1px 0 rgba(var(--chroma-color),.12)}
.chroma-card:hover::before{opacity:1}
.chroma-grid .avatar{width:48px;height:48px;background:linear-gradient(140deg,rgba(var(--chroma-color),.24),rgba(var(--chroma-color),.08));border:1px solid rgba(var(--chroma-color),.35);color:#f1e8d8;border-radius:10px}
.chroma-overlay,.chroma-fade{position:absolute;inset:0 0 18px;z-index:3;pointer-events:none;backdrop-filter:grayscale(.95);-webkit-backdrop-filter:grayscale(.95);border-radius:12px}
.chroma-overlay{mask-image:radial-gradient(circle var(--r) at var(--x) var(--y),transparent 12%,#0002 38%,#0009 75%,#000 100%);-webkit-mask-image:radial-gradient(circle var(--r) at var(--x) var(--y),transparent 12%,#0002 38%,#0009 75%,#000 100%)}
.chroma-fade{z-index:4;opacity:1;transition:opacity .6s;mask-image:radial-gradient(circle var(--r) at var(--x) var(--y),#000 12%,#fffc 38%,#fff6 75%,transparent 100%);-webkit-mask-image:radial-gradient(circle var(--r) at var(--x) var(--y),#000 12%,#fffc 38%,#fff6 75%,transparent 100%)}
.chroma-grid.is-tracking .chroma-fade{opacity:0;transition-duration:.25s}
.chroma-keyboard .chroma-overlay,.chroma-keyboard .chroma-fade{display:none}
@media(hover:none),(pointer:coarse),(prefers-reduced-motion:reduce){.chroma-overlay,.chroma-fade{display:none}.chroma-card::before{display:none}}
.magic-bento-card,.magic-bento-button{--glow-x:50%;--glow-y:50%;--glow-intensity:0;--glow-color:220,183,116;--tilt-x:0deg;--tilt-y:0deg;--magnet-x:0px;--magnet-y:0px;position:relative;isolation:isolate}
.card.product-card.magic-bento-card,.suggestion-item.magic-bento-card{transform:perspective(1100px) rotateX(var(--tilt-x)) rotateY(var(--tilt-y))!important;transition:transform .22s ease-out,border-color .3s,box-shadow .35s;overflow:hidden}
.magic-bento-card::after{content:'';position:absolute;inset:0;border-radius:inherit;padding:1px;background:radial-gradient(320px circle at var(--glow-x) var(--glow-y),rgba(var(--glow-color),.95),#92a8d066 40%,transparent 72%);-webkit-mask:linear-gradient(#fff 0 0) content-box,linear-gradient(#fff 0 0);mask:linear-gradient(#fff 0 0) content-box,linear-gradient(#fff 0 0);-webkit-mask-composite:xor;mask-composite:exclude;opacity:var(--glow-intensity);pointer-events:none;z-index:4;transition:opacity .4s}
.magic-bento-card:hover{box-shadow:0 12px 28px #0004,0 0 28px #d6b16c0d}
.magic-bento-card:focus-within{border-color:#d5b77c!important}
.btn.magic-bento-button{overflow:hidden;transform:translate(var(--magnet-x),var(--magnet-y))!important;transition:transform .18s,border-color .3s,background .3s,box-shadow .3s}
.btn.magic-bento-button:hover{background-image:radial-gradient(140px circle at var(--glow-x) var(--glow-y),#ffffff16,transparent 75%);box-shadow:0 0 18px #deba7514}
.btn.magic-bento-button[aria-busy=true]{cursor:progress;opacity:.72}
.magic-particle,.magic-ripple{position:absolute;pointer-events:none;z-index:5;user-select:none}
.magic-particle{width:3px;height:3px;border-radius:50%;background:#f7daa0;box-shadow:0 0 7px #f2cc8977}
.magic-ripple{border-radius:50%;background:radial-gradient(circle,#e6c18560,#e6c18518 35%,transparent 65%)}
@media(hover:none),(pointer:coarse),(prefers-reduced-motion:reduce){.magic-particle,.magic-ripple,.magic-bento-card::after{display:none}.card.product-card.magic-bento-card,.suggestion-item.magic-bento-card,.btn.magic-bento-button{transform:none!important}}
.studio-hero{padding-block:64px;min-height:710px;gap:56px}
.studio-hero .slogan-stack{font-size:clamp(2.65rem,4.1vw,3.7rem);font-weight:900;line-height:1.08;letter-spacing:-.055em;min-height:3.5em;margin-block:8px 24px;align-items:center}
.studio-hero .slogan{align-self:center;overflow:visible}
.studio-hero .studio-lead{max-width:49ch;font-size:1.05rem;line-height:1.8}
.studio-hero .kicker{letter-spacing:.08em;font-size:.875rem;margin-bottom:24px}
.studio-feature-top{letter-spacing:.095em}
.spotlight{border-color:#b9a17b55;background:#121d2a}
.spotlight .studio-feature-info{padding:26px 28px;background:linear-gradient(145deg,#1a2838,#111d2a);border-top:1px solid #8f9cad30}
.spotlight .studio-feature-info h2{font-size:1.8rem;line-height:1.18;margin:12px 0}
.spotlight .studio-feature-info p{font-size:1rem;line-height:1.75}
.spotlight .spotlight-footer{padding:16px 24px}
.spotlight-slides{align-items:start}
.spotlight .studio-feature-image{aspect-ratio:16/10}
.spotlight-dot:focus-visible{outline-offset:3px!important}
.journal-cover{position:relative}
.post-mark{position:absolute;left:16px;bottom:16px;width:clamp(102px,25%,160px);padding:8px 10px;display:block;border:1px solid #ffffff28;border-radius:6px;background:#071019cf;backdrop-filter:blur(8px);pointer-events:none;z-index:2;line-height:0}
.post-mark>img{display:block;width:100%!important;height:auto!important;max-width:100%;object-fit:contain!important;aspect-ratio:auto!important;transform:none!important;filter:none!important;border:0!important;opacity:1!important}
.suggestions .suggestion-image{background:#1b2b3d}
.suggestions-top p{font-size:.875rem}
.suggestion-grid .suggestion-item[hidden]{display:none!important}
.cart-error{margin:16px 20px 0;padding:16px;border:1px solid #cb8a6577;border-radius:8px;background:#3c2720;color:#ffe0ca;flex:none}
.cart-error>p{color:inherit;font-size:.9375rem;line-height:1.65;margin:0;overflow-wrap:anywhere}
.cart-error-actions{display:flex;gap:8px 16px;align-items:center;flex-wrap:wrap;margin-top:12px}
.cart-error .btn{color:#ffe5d0;border-color:#b9896777;background:#6f4b2722;min-height:44px}
.cart-error .text-action{color:#ffe2c6;font-size:.875rem}
#cart-drawer .cart-account{flex:none}
.page-loader{display:none!important}
@media(min-width:1600px){.studio-hero .slogan-stack{font-size:3.85rem}}
@media(max-width:1100px){.studio-hero{gap:32px;min-height:620px}.studio-hero .slogan-stack{font-size:clamp(2.3rem,4.3vw,3.25rem)}.spotlight .studio-feature-info{padding:22px}.spotlight .studio-feature-info h2{font-size:1.65rem}}
@media(max-width:720px){.studio-hero{gap:40px;padding-block:40px;min-height:0}.studio-hero .slogan-stack{font-size:clamp(1.8rem,8.65vw,3.75rem);min-height:3.5em;margin-bottom:20px}.studio-hero .kicker{font-size:.875rem;letter-spacing:.025em;margin-bottom:20px}.studio-hero .studio-lead{font-size:1rem}.hero-ctas{gap:12px}.hero-ctas .btn{flex:1 1 100%;min-height:50px}.spotlight .studio-feature-info{padding:24px}.spotlight .studio-feature-info h2{font-size:1.75rem}.spotlight .spotlight-footer{padding:12px;justify-content:center;flex-wrap:wrap;gap:12px}.spotlight .spotlight-arrows{display:flex}.spotlight .spotlight-dots{gap:5px}.spotlight .spotlight-dot{width:44px;min-width:44px}.post-mark{left:12px;bottom:12px;width:112px}.cart-error{margin-inline:16px}.chroma-grid .feedback-feed,.chroma-grid .studio-rail{padding-top:6px}}
@media(prefers-reduced-motion:reduce){.depth-text__stage{transform:none!important}.studio-reveal{animation:none!important}.magic-bento-card,.magic-bento-button{transform:none!important}}
.studio-hero.container{margin-block:0!important;padding-block:48px}
@media(max-width:720px){.studio-hero.container{padding-block:36px}}
.spotlight .spotlight-dot{background:#182739!important;color:#c4cfde!important;border-color:#7990ae55!important}
.spotlight .spotlight-dot[aria-pressed="true"]{background:#ecd09b!important;color:#1b160d!important;border-color:#f5e0b6!important}
html body.blog-route::before{background:linear-gradient(90deg,transparent 0 calc(50% - 580px),#a0b0c00a calc(50% - 580px) calc(50% - 579px),transparent calc(50% - 579px) calc(50% + 579px),#a0b0c00a calc(50% + 579px) calc(50% + 580px),transparent calc(50% + 580px)),#0b111a!important;opacity:1!important}
html body.blog-route::after{background:repeating-linear-gradient(90deg,transparent 0,transparent calc(25% - 1px),#9cb2d008 calc(25% - 1px),#9cb2d008 25%)!important;mask-image:none;opacity:1}
.blog-route #site-bg,.blog-route #site-bg-gradient,.blog-route #site-bg-image{display:none!important}
.blog-route .blog-article{width:min(1160px,calc(100% - 64px));max-width:1160px;margin:0 auto;padding:0 0 64px}
.blog-route .breadcrumbs{padding-top:32px;margin-bottom:40px;line-height:1.65}
.blog-route .breadcrumbs ol{flex-wrap:wrap;row-gap:8px}
.blog-route .breadcrumbs [aria-current=page]{overflow-wrap:anywhere}
.blog-route .article-header{max-width:none;margin:0 0 48px;padding:0 0 40px;border-bottom:1px solid #a5b8d024}
.article-ribbon{display:flex;align-items:center;justify-content:space-between;gap:16px;margin-bottom:24px;font:650 .875rem/1.5 var(--font-body);letter-spacing:.13em;color:#dfc598}
.article-ribbon>a{min-height:44px;display:inline-flex;align-items:center;gap:12px}
.article-ribbon>a span{color:#8291a4}
.article-ribbon>span{letter-spacing:.05em;text-transform:uppercase;border-left:1px solid #a5b8d030;padding-left:16px;color:#adbacb;font-size:.875rem}
.blog-route .article-header h1{font-family:Georgia,'Times New Roman',serif;font-weight:400;font-size:clamp(2.35rem,4.35vw,3.7rem);line-height:1.12;letter-spacing:-.035em;max-width:25ch;margin:0 0 24px;text-wrap:balance;color:#f3eee4;text-shadow:none}
.blog-route .article-lead{font-size:1.125rem;line-height:1.85;max-width:65ch;margin:0 0 32px;color:#b7c2d1}
.article-meta{display:flex;align-items:center;justify-content:space-between;gap:24px;max-width:860px}
.article-author{display:flex;gap:14px;align-items:center;min-width:0}
.author-monogram{height:44px;width:44px;display:grid;place-items:center;border:1px solid #d0b77f50;border-radius:8px;background:#d0b77f0d;color:#e4cba1;font:400 1.4rem/1 Georgia,serif;flex:none}
.article-author strong{font-size:.9375rem;font-weight:600;color:#e5e9ef;display:block}
.article-author>span:last-child>span{display:block;font-size:.875rem;color:#a2b0c3}
.article-date{display:flex;align-items:center;gap:20px;flex-wrap:wrap;color:#abb9cd;font-size:.875rem}
.article-date>span{display:flex;align-items:center;gap:8px}
.article-date .icon{width:16px;height:16px;color:#d4bc92}
.article-layout{display:grid;grid-template-columns:200px minmax(0,1fr);gap:32px;align-items:start}
.article-sidebar{position:sticky;top:124px;min-width:0}
.article-toc{padding:0 0 24px;border-bottom:1px solid #a5b8d024}
.article-toc>summary{min-height:44px;display:flex;justify-content:space-between;align-items:center;gap:12px;list-style:none;cursor:pointer;font-size:.875rem;letter-spacing:.08em;text-transform:uppercase;font-weight:650;color:#e4d4b6}
.article-toc>summary::-webkit-details-marker{display:none}
.article-toc>summary .icon{height:16px;width:16px;transition:transform .2s}
.article-toc[open]>summary .icon{transform:rotate(180deg)}
.article-toc ol{list-style:none;margin:12px 0 0;padding:0;display:grid;gap:4px}
.article-toc a{display:grid;grid-template-columns:20px minmax(0,1fr);gap:10px;font-size:.875rem;line-height:1.65;color:#a4b1c3;border-left:1px solid #a5b8d01a;padding:10px 8px 10px 12px;min-height:44px;transition:color .2s,border-color .2s}
.article-toc a>span{color:#879bb3;font-size:.875rem;font-variant-numeric:tabular-nums}
.article-toc a:hover,.article-toc a.is-current{color:#edcea0;border-left-color:#e0bc7b;background:linear-gradient(90deg,#e0bc7b09,transparent)}
.article-toc a.is-current>span{color:#e0bc7b}
.article-sidebar-note{padding-top:28px}
.article-sidebar-note .eyebrow{font-size:.875rem;font-weight:600;letter-spacing:.035em;text-transform:none;margin:0 0 8px;color:#d4c09d}
.article-sidebar-note p{font-size:.875rem;line-height:1.75;margin:0;color:#a7b5c9}
.article-sidebar-note .text-action{font-size:.875rem;margin-top:12px}
.article-sidebar-note .icon{width:16px}
.article-paper{background:#141e2a;border:1px solid #a8b9cc28;border-radius:12px;min-width:0;overflow:hidden}
.blog-route .article-figure{margin:0;padding:0}
.article-cover-frame{position:relative;overflow:hidden;background:#192735}
.blog-route .article-cover{width:100%;height:auto;aspect-ratio:16/9;object-fit:cover;border:0;border-radius:0;margin:0;display:block}
.article-cover-frame .post-mark{width:174px;left:20px;bottom:20px;padding:10px 12px}
.blog-route .article-figure figcaption{padding:16px 28px;margin:0;font-size:.875rem;line-height:1.7;color:#a4b3c7;background:#101925;border-bottom:1px solid #a5b8d01c}
.article-copy{padding:40px clamp(24px,3.2vw,48px) 32px}
.blog-route .article-copy .prose{max-width:720px;margin:0 auto;font-size:1.0625rem;line-height:1.9;color:#c6d0dd;overflow-wrap:break-word}
.blog-route .article-copy .prose>p:first-child{font-size:1.125rem;line-height:1.85;color:#e0e5ec;margin-top:0;padding-bottom:28px;border-bottom:1px solid #a5b8d024}
.blog-route .prose p,.blog-route .prose li{font-size:1.0625rem;line-height:1.9;color:#c2cddd}
.blog-route .prose p{margin:0 0 24px}
.blog-route .prose h2{font-family:var(--font-body);font-size:1.6rem;line-height:1.35;font-weight:650;letter-spacing:-.025em;margin:44px 0 20px;color:#f0e8d8;scroll-margin-top:24px;text-wrap:balance}
.blog-route .prose h3{font-size:1.25rem;font-weight:600;line-height:1.5;margin:32px 0 16px;scroll-margin-top:24px;letter-spacing:-.015em}
.blog-route .prose h4{font-size:1.125rem;line-height:1.6;margin:28px 0 16px;scroll-margin-top:24px}
.blog-route .prose strong{color:#ecdfc7;font-weight:650}
.blog-route .prose ul,.blog-route .prose ol{padding-left:24px;margin:24px 0 28px}
.blog-route .prose li{padding-left:8px;margin-bottom:12px}
.blog-route .prose li::marker{color:#cfb682}
.blog-route .prose a{color:#efd29e;text-decoration:underline;text-decoration-color:#efd29e66;text-underline-offset:5px;text-decoration-thickness:1px;overflow-wrap:anywhere}
.blog-route .prose a:hover{text-decoration-color:currentColor;color:#fff0cf}
.blog-route .prose blockquote{margin:32px 0;border:0;border-left:2px solid #cdae79;padding:20px 24px;background:#dbbd8410;border-radius:0 8px 8px 0}
.blog-route .prose blockquote p{font-family:Georgia,serif;font-size:1.3rem;line-height:1.65;color:#e4d9c4;margin:0}
.blog-route .prose blockquote cite{display:block;margin-top:16px;font:normal .875rem/1.7 var(--font-body);color:#b6c4d5}
.blog-route .prose code{font-family:ui-monospace,SFMono-Regular,Consolas,monospace;background:#08111b;color:#e7d2ac;padding:2px 6px;border-radius:4px;font-size:.92em;white-space:break-spaces}
.blog-route .prose pre{margin:28px 0;padding:24px;border:1px solid #a5b8d02c;border-radius:8px;overflow:auto;background:#09131f;font-size:.9375rem;line-height:1.7}
.blog-route .prose pre code{padding:0;white-space:pre;word-break:normal;font-size:inherit}
.blog-route .prose .post-callout{margin:28px 0;padding:20px 24px;background:#d8b7790b;border:1px solid #d8b77940;border-radius:8px}
.blog-route .prose .post-callout p{color:#d7c9af;margin:0}
.blog-route .prose hr{border:0;border-top:1px solid #a5b8d024;margin:40px 0}
.blog-route .prose figure{margin:32px 0}
.blog-route .prose figcaption{font-size:.875rem;line-height:1.7;color:#9fb0c6;margin-top:12px}
.article-footer{max-width:720px;margin:40px auto 0;padding-top:4px;border-top:1px solid #a5b8d02c}
.blog-route .article-tags{margin:24px 0;gap:8px}
.blog-route .article-tags a{font-size:.875rem;line-height:1.5;padding:10px 12px;background:#a5b8d006;color:#bdc9d9;border:1px solid #a5b8d02b;border-radius:6px}
.article-signoff{display:flex;gap:24px;align-items:center;padding:28px 0;border-top:1px solid #a5b8d024}
.article-seal{display:block;width:160px;max-width:45%;height:auto;flex:none}
.article-signoff strong{font-size:.9375rem;font-weight:500;line-height:1.65;color:#d9c6a4}
.article-signoff p{font-size:.875rem;line-height:1.65;color:#a2b3c9;margin:6px 0 0}
.article-end-actions{padding-top:12px;display:flex;gap:12px 24px;align-items:center;justify-content:space-between;flex-wrap:wrap}
.article-end-actions .btn{font-size:.875rem;min-height:44px;padding:10px 16px}
.article-link-fallback{width:100%;min-width:0;font-size:.875rem}
.blog-route .article-next{width:min(1160px,calc(100% - 64px));max-width:1160px;padding:0 0 64px;margin:0 auto}
.article-next .section-head h2{font-size:2rem;line-height:1.25}
.article-next .journal-card h3{font-size:1.25rem;line-height:1.45}
.article-next .journal-body{padding:24px}
@media(max-width:980px){.blog-route .blog-article,.blog-route .article-next{width:calc(100% - 48px)}.article-layout{grid-template-columns:minmax(0,1fr);gap:24px}.article-sidebar{position:static}.article-sidebar-note{display:none}.article-toc{border:1px solid #a5b8d026;padding:12px 20px;background:#101a26;border-radius:8px}.article-toc ol{grid-template-columns:repeat(2,minmax(0,1fr))}.article-header h1{max-width:26ch}.article-copy{padding:36px 40px}.article-meta{max-width:none}}
@media(max-width:600px){.blog-route .blog-article,.blog-route .article-next{width:calc(100% - 32px);padding-bottom:40px}.blog-route .breadcrumbs{padding-top:24px;margin-bottom:24px;font-size:.875rem}.blog-route .article-header{padding-bottom:28px;margin-bottom:28px}.article-ribbon{margin-bottom:20px;gap:8px;letter-spacing:.08em}.article-ribbon>span{font-size:.875rem;padding-left:10px;letter-spacing:0}.blog-route .article-header h1{font-size:2.25rem;line-height:1.18;letter-spacing:-.035em;max-width:none;text-wrap:pretty;margin-bottom:20px}.blog-route .article-lead{font-size:1rem;line-height:1.8;margin-bottom:24px}.article-meta{align-items:flex-start;gap:20px;flex-wrap:wrap}.article-date{gap:16px}.article-toc{padding:10px 16px}.article-toc ol{grid-template-columns:1fr;gap:2px}.article-layout{gap:20px}.article-copy{padding:28px 20px}.blog-route .article-figure figcaption{padding:14px 20px;font-size:.875rem;line-height:1.65}.article-cover-frame .post-mark{width:122px;left:12px;bottom:12px;padding:8px 10px}.blog-route .article-copy .prose>p:first-child{font-size:1.0625rem;line-height:1.85;padding-bottom:24px}.blog-route .prose p,.blog-route .prose li{font-size:1rem;line-height:1.85}.blog-route .prose h2{font-size:1.4rem;line-height:1.4;margin-top:32px;margin-bottom:16px;text-wrap:pretty}.blog-route .prose h3{font-size:1.2rem}.blog-route .prose li{margin-bottom:10px;padding-left:4px}.blog-route .prose ul,.blog-route .prose ol{padding-left:20px}.blog-route .prose blockquote,.blog-route .prose .post-callout{padding:16px 20px}.article-signoff{flex-direction:column;align-items:flex-start;gap:20px}.article-seal{width:156px;max-width:70%}.article-end-actions{gap:16px}.article-end-actions .btn{width:100%}.article-next .section-head h2{font-size:1.8rem}.article-next .journal-body{padding:20px}}
@media(prefers-reduced-motion:reduce){.article-toc a,.article-toc summary .icon{transition:none}}
#announce{display:none!important}
.header-voucher{position:relative;flex:none;font-size:.875rem;line-height:1.4}
.header-voucher>summary{list-style:none;display:flex;align-items:center;justify-content:center;gap:9px;min-height:44px;max-width:238px;padding:9px 12px;color:#f1d7a0;border:1px solid #d9b87a66;border-radius:8px;background:linear-gradient(125deg,#d9b87a18,#d9b87a06);cursor:pointer;white-space:nowrap}
.header-voucher>summary::-webkit-details-marker{display:none}.header-voucher>summary:hover,.header-voucher[open]>summary{border-color:#e7c88d;background:#d9b87a19}
.header-voucher>summary:focus-visible,.suggestions>summary:focus-visible{outline:2px solid #ffe0a0;outline-offset:4px}
.header-voucher>summary>.icon{width:17px;height:17px;flex:none;color:#e8c989}.voucher-label{font-weight:650;text-transform:uppercase;font-size:.875rem}
.voucher-short-code{border-left:1px dashed #d8b77b75;padding-left:9px;font-family:ui-monospace,Consolas,monospace;letter-spacing:.035em;max-width:12ch;overflow:hidden;text-overflow:ellipsis}
.header-voucher:not([open])>.voucher-panel{display:none}
.voucher-panel{position:absolute;right:0;top:calc(100% + 14px);width:354px;max-width:calc(100vw - 32px);padding:24px;white-space:normal;background:#101a27;border:1px solid #8f785855;border-top:2px solid #d8bb83;border-radius:10px;box-shadow:0 16px 48px #0006;z-index:130}
.voucher-panel-heading{display:flex;align-items:center;justify-content:space-between;gap:12px;margin-bottom:8px}.voucher-panel-heading .eyebrow{margin:0;font-size:.875rem;letter-spacing:.025em;text-transform:none;color:#cbbb9d}
.voucher-close{width:44px;height:44px;flex:none;background:transparent;border-color:transparent;margin-right:-8px}.voucher-close .icon{transform:rotate(45deg);width:20px;height:20px}
.voucher-title{font-size:1.65rem!important;line-height:1.2;font-weight:700;color:#f4eddf;margin:0 0 12px!important;letter-spacing:-.03em}.voucher-description{font-size:.9375rem;line-height:1.7;color:#bdc9d8;margin:0 0 20px}
.voucher-ticket{display:flex;align-items:center;justify-content:space-between;gap:12px;padding:16px 12px;border:1px dashed #d5b77988;border-radius:8px;background:#d5b77909}.voucher-ticket>span{min-width:0}.voucher-ticket small{display:block;font-size:.875rem;color:#bdc4cc;margin-bottom:5px}
.voucher-full-code{font:600 1.1rem/1.5 ui-monospace,Consolas,monospace;color:#f6dc9f;letter-spacing:.055em;overflow-wrap:anywhere;user-select:all}.voucher-ticket .btn{font-size:.875rem;gap:7px;padding:10px 12px;min-height:44px;white-space:nowrap;flex:none}.voucher-ticket .icon{width:16px;height:16px}
.voucher-terms{font-size:.875rem;line-height:1.7;margin:16px 0 12px;color:#a9b7c9}.voucher-panel .text-action{min-height:44px;font-size:.9375rem}.voucher-status{margin:0;color:#cce4c7;font-size:.875rem;line-height:1.6}.voucher-status:not(:empty){margin-top:12px}
.studio-hero .hero-search-title{font-size:.9375rem;font-weight:650;letter-spacing:.045em;line-height:1.6;margin:0 0 24px;color:#d8bd88;text-transform:none;text-shadow:none}
.spotlight .studio-feature-info .spotlight-title{font-size:1.8rem;font-weight:750;line-height:1.2;letter-spacing:-.035em;margin:12px 0;color:#f5eee3;display:block;-webkit-line-clamp:unset}
.category-intro{display:flex;justify-content:space-between;align-items:flex-end;gap:24px;margin-bottom:24px}.category-intro .eyebrow{margin-bottom:12px}.category-intro h2{margin:0}.category-intro>p{font-size:.9375rem;color:#adbac9;max-width:28ch;margin:0 0 4px}
.studio-categories{gap:14px}.studio-categories>a.category-card{min-height:276px;padding:20px;gap:44px 8px;border-radius:10px;border-color:#9fadb939;background:#101823;box-shadow:none;align-content:space-between;isolation:isolate;min-width:0}
.studio-categories>a.category-card .category-art{opacity:1;inset:0;z-index:-2;transition:transform .55s ease}.studio-categories .category-art img{width:100%;height:100%;object-fit:cover;object-position:50% 38%;filter:saturate(.9);display:block}
.studio-categories>a.category-card::before{background:linear-gradient(180deg,#07101a14 0%,#07101a00 26%,#07101a42 51%,#07101ade 78%,#07101af5 100%)}.studio-categories>a.category-card:hover{border-color:#d8bb83b3;box-shadow:0 6px 24px #0003;transform:translateY(-3px)}.studio-categories>a.category-card:hover .category-art{opacity:1;transform:scale(1.045)}
.studio-categories .category-icon{width:40px;height:40px;background:#0a14247a;border:1px solid #e1cc9e50;backdrop-filter:blur(8px);border-radius:8px;color:#f5d699}.studio-categories .category-icon .icon{width:22px;height:22px}
.studio-categories .category-card-copy{align-self:end;min-width:0}.studio-categories .category-card-copy small{color:#c5b69a;font-size:.875rem;letter-spacing:.04em;line-height:1.5}.studio-categories .category-card-copy strong{font-size:1.2rem;font-weight:700;letter-spacing:-.025em;margin-top:8px;color:#fff5e7}
.category-subtitle{display:block;font-size:.875rem;line-height:1.55;color:#becbd8;margin-top:7px;max-width:22ch}.studio-categories>a.category-card>.icon{color:#f5d699;filter:drop-shadow(0 1px 3px #0009);height:20px;width:20px}.category-art-note{margin:14px 0 0;font-size:.875rem;line-height:1.6;color:#9baabe}
.post-mark,.article-cover-frame .post-mark{padding:0!important;border:0!important;border-radius:0!important;background:none!important;backdrop-filter:none!important;box-shadow:none!important}.post-mark>img{filter:drop-shadow(0 2px 3px #0008)!important;background:none!important;border:0!important;border-radius:0!important}
.catalog-route .listing-route{padding-top:16px;padding-bottom:48px}.catalog-route .breadcrumbs{padding-top:0;margin:0 0 14px;font-size:.875rem;line-height:1.5}.catalog-route .breadcrumbs li,.catalog-route .breadcrumbs a{min-height:24px;display:inline-flex;align-items:center}
.catalog-route .listing-heading{max-width:none;margin:0 0 18px}.catalog-route .listing-heading h1{font-size:clamp(1.75rem,3vw,2.45rem);line-height:1.18;letter-spacing:-.04em;margin:0 0 9px;text-wrap:pretty}.catalog-route .listing-heading p{font-size:1rem;line-height:1.65;max-width:none;margin:0;color:#afbdcf}
.catalog-route .catalog-tabs{gap:7px;margin:0 0 12px}.catalog-route .catalog-tabs a{min-height:44px;padding:9px 12px;font-size:.875rem;gap:7px;border-color:#7382994a;background:#1722326b}.catalog-route .catalog-tabs a[aria-current=page]{color:#241e12;background:#e2c58b;border-color:#e2c58b}
.catalog-route .suggestions{padding:0 16px;margin:0 0 8px;border:1px solid #c8a97244;background:linear-gradient(110deg,#c8a9720c,#162332b3);border-radius:8px}.catalog-route .suggestions>summary{min-height:60px;font-size:.9375rem;color:#bdc8d5;gap:12px;list-style:none}.suggestions-prompt{font-weight:500;min-width:0}.suggestions-prompt>.icon{width:20px;height:20px;flex:none;color:#e9cc93}
.suggestions-trigger{display:inline-flex;align-items:center;justify-content:center;gap:9px;min-height:44px;border:1px solid #d5b77960;border-radius:6px;padding:9px 13px;background:#d5b7790d;color:#f0d8a7;font-size:.875rem;font-weight:650;flex:none}.suggestions-trigger .icon{width:17px;height:17px;transition:transform .2s}.suggestions>summary:hover .suggestions-trigger{border-color:#ebcb90;background:#d5b77919}
.suggestions-hide{display:none}.suggestions[open] .suggestions-hide{display:inline}.suggestions[open] .suggestions-show{display:none}.suggestions[open] .suggestions-trigger .icon{transform:rotate(45deg)}.catalog-route .suggestions[open]{padding-bottom:16px}.suggestions-top{margin:8px 0 16px;gap:16px}.suggestions-top p{font-size:.875rem;line-height:1.65}.suggestion-title{font-size:1rem;font-weight:650;line-height:1.45;margin:6px 0 12px;color:#f1e6d4}
.catalog-toolbar{display:flex;align-items:center;justify-content:space-between;flex-wrap:wrap;gap:12px 20px;margin:0 0 20px;padding:4px 0 0;min-width:0}.catalog-route .edition-filters{padding:0;margin:0;display:flex;align-items:center;flex-wrap:wrap;gap:8px 18px;background:none;border:0;border-radius:0;backdrop-filter:none}.edition-label-text{color:#aab8c9;font-size:.875rem}.catalog-route .edition-toggle{font-size:.875rem;gap:8px;min-height:44px}
.catalog-route .switch-track{width:34px;height:20px}.catalog-route .switch-track::after{width:12px;height:12px;top:3px;left:3px}.catalog-route .edition-toggle input:checked+.switch-track::after{transform:translateX(14px)}
.catalog-route .catalog-tools{margin:0;display:flex;align-items:center;gap:14px;min-width:0;flex:1 1 260px;justify-content:flex-end}.catalog-route .catalog-search{flex:1 1 200px;max-width:290px;min-width:0;min-height:44px}.catalog-route .catalog-search input{height:44px;min-width:0;font-size:.9375rem;padding-block:8px}.catalog-route [data-catalog-count]{font-size:.875rem;white-space:nowrap;margin:0;color:#b4c0d1}
html body.product-route::before{background:radial-gradient(ellipse at 90% 5%,#cfab6910,transparent 46%),linear-gradient(90deg,transparent calc(50% - 640px),#9cb2cc0c calc(50% - 640px) calc(50% - 639px),transparent calc(50% - 639px) calc(50% + 639px),#9cb2cc0c calc(50% + 639px) calc(50% + 640px),transparent calc(50% + 640px)),#0b121c!important;opacity:1!important}
html body.product-route::after{background:repeating-linear-gradient(90deg,transparent 0,transparent calc(25% - 1px),#b1c4d706 calc(25% - 1px),#b1c4d706 25%)!important;opacity:1;mask-image:none}.product-route #site-bg,.product-route #site-bg-gradient,.product-route #site-bg-image,.checkout-route #site-bg,.checkout-route #site-bg-gradient,.checkout-route #site-bg-image{display:none!important}
.product-route .product-shell{width:min(1280px,calc(100% - 64px));max-width:1280px;padding-bottom:40px}.product-route .breadcrumbs{padding-top:24px;margin-bottom:20px;font-size:.875rem;line-height:1.6}.product-route .breadcrumbs ol{flex-wrap:wrap;row-gap:6px}.product-route .breadcrumbs [aria-current=page]{overflow-wrap:anywhere}
.product-ribbon{display:flex;align-items:center;justify-content:space-between;gap:16px;padding:16px 0;border-top:1px solid #a5b9cc24;border-bottom:1px solid #a5b9cc24;color:#ceb993;font-size:.875rem;line-height:1.6;letter-spacing:.065em}.product-ribbon>span{display:inline-flex;align-items:center;gap:12px}.product-ribbon>span>span{color:#758497}.product-ribbon>span:last-child{color:#aebdcd;letter-spacing:0}.product-ribbon .icon{width:17px;height:17px}
.product-section-nav{display:flex;align-items:center;gap:8px 24px;margin:10px 0 18px;max-width:100%;overflow-x:auto;scrollbar-width:thin}.product-section-nav a{font-size:.875rem;color:#b2c0d0;min-height:44px;display:inline-flex;align-items:center;flex:none;border-bottom:1px solid transparent}.product-section-nav a:hover{color:#f1d49d;border-bottom-color:#d5b879}
.product-route .dynamic-product{grid-template-columns:minmax(0,1.4fr) minmax(0,1fr);gap:32px;padding:0 0 40px}.product-side,.dynamic-gallery{min-width:0}.product-route .dynamic-primary{border:1px solid #a5b9cc38;background:#142130;border-radius:10px;overflow:hidden}.product-route .dynamic-primary img{display:block;width:100%;height:auto;aspect-ratio:16/9;object-fit:cover}
.product-route .buy-panel,.product-route .dynamic-product .buy-panel{background:linear-gradient(140deg,#1b2735,#121c29);border:1px solid #a3b2c133;border-top:2px solid #d4b47b85;border-radius:10px;box-shadow:0 4px 16px #0002;padding:30px}.product-route .dynamic-product .buy-panel h1{font-size:clamp(1.7rem,2.6vw,2.3rem);line-height:1.2;letter-spacing:-.045em;margin:14px 0 16px;color:#f4ecdf;text-wrap:pretty}.product-route .product-lead{font-size:1rem;line-height:1.75;color:#b7c3d3}.product-route .buy-trust{padding-top:18px;margin-top:18px;gap:10px}.product-route .checkout-hint{line-height:1.75}
.product-route .technical-panel{border:1px solid #a5b9cc2c;background:#121d2a;border-radius:10px;margin-top:24px;padding:24px}.product-route .technical-panel .panel-label h2{font-size:1.2rem}.product-route .technical-grid{gap:12px}.product-route .technical-spec{background:#0c1621b8;border:1px solid #a5b9cc1f}.product-route .spec-note{font-size:.875rem;line-height:1.75}
.release-layout{display:grid;grid-template-columns:200px minmax(0,1fr);gap:32px;align-items:start;margin-bottom:40px}.release-aside{border-top:1px solid #adbed130;padding-top:24px;display:flex;flex-direction:column;align-items:flex-start;gap:12px}.release-aside .eyebrow{margin:0;font-size:.875rem;letter-spacing:.04em;color:#cbb68f}.release-aside>p{font-family:Georgia,serif;font-size:1.5rem;line-height:1.4;color:#e6d9c1;margin:0}.release-aside>span:not(.eyebrow){font-size:.875rem;line-height:1.8;color:#a7b8cc}.release-aside .text-action{font-size:.875rem;min-height:44px}
.release-paper{background:#141f2c;border:1px solid #a5b9cc30;border-radius:12px;overflow:hidden;min-width:0}.release-paper .product-videos{margin:0;max-width:none;padding:32px;border-bottom:1px solid #a5b9cc24;background:#111b28}.release-paper .section-head{margin-bottom:20px}.release-paper .section-head h2{font-size:1.7rem}.release-paper .section-head .eyebrow{font-size:.875rem}
.release-paper .product-body{padding:36px 40px 40px}.release-paper .prose{max-width:720px;margin:0 auto;overflow-wrap:break-word;min-width:0}.release-paper .prose>.eyebrow{font-size:.875rem;letter-spacing:.065em;margin-bottom:12px;color:#c8b18a}.release-paper .prose h2{font-size:1.75rem;line-height:1.35;color:#f0e6d2;margin:0 0 24px;letter-spacing:-.025em}.release-paper .prose h3{font-size:1.25rem;line-height:1.5;margin:32px 0 16px}.release-paper .prose p,.release-paper .prose li{font-size:1rem;line-height:1.9;color:#c0ccdc}.release-paper .prose p{margin-bottom:24px}.release-paper .prose img{max-width:100%;height:auto;border-radius:8px}.release-paper .prose a{overflow-wrap:anywhere;color:#f0d09a;text-underline-offset:4px}.release-paper .prose pre{overflow-x:auto;max-width:100%}
.product-route #product-preview,.product-route #specifications,.product-route #release-details,.product-route #showcase,.product-route #reviews{scroll-margin-top:28px}
.checkout-return{display:grid;place-items:center;min-height:65vh;padding:56px 0}.checkout-return-card{width:min(760px,100%);background:linear-gradient(145deg,#192431,#101925);border:1px solid #a5b7ca38;border-top:2px solid #d7bb857d;border-radius:14px;overflow:hidden;box-shadow:0 12px 48px #0002}
.checkout-ribbon{display:flex;justify-content:space-between;align-items:center;gap:16px;padding:18px 28px;background:#0a132045;border-bottom:1px solid #a5b7ca24;font-size:.875rem;letter-spacing:.065em;color:#c6b18b}.checkout-ribbon>span{display:flex;align-items:center;gap:10px}.checkout-ribbon>span>span{color:#7f8fa3}.checkout-ribbon>span:last-child{color:#aab9cb;letter-spacing:0}.checkout-ribbon .icon{width:17px;height:17px}
.checkout-return-body{padding:40px 40px 36px;text-align:center}.checkout-status-icon{width:64px;height:64px;border:1px solid #d5bc8759;background:#d5bc8710;color:#e7ca90;border-radius:16px;display:grid;place-items:center;margin:0 auto 24px}.checkout-status-icon .icon{width:31px;height:31px}.checkout-return [data-checkout-eyebrow]{font-size:.875rem;line-height:1.6;letter-spacing:.065em;color:#c7b58f;margin:0 0 12px}
.checkout-return h1{font-size:clamp(1.9rem,3.4vw,2.65rem);line-height:1.17;letter-spacing:-.045em;color:#f7f0e4;margin:0 0 20px;text-wrap:balance}.checkout-return #checkout-msg{font-size:1rem;line-height:1.8;color:#b8c6d7;max-width:55ch;margin:0 auto 24px}.checkout-account-note{display:inline-block;background:#9dd2ba0a;color:#b9ddcf;border:1px solid #9dd2ba30;border-radius:6px;padding:8px 12px;margin:0 0 24px;font-size:.875rem;overflow-wrap:anywhere;max-width:100%}
.checkout-return-actions{display:flex;justify-content:center;align-items:center;flex-wrap:wrap;gap:12px}.checkout-return-actions .btn{min-height:48px;font-size:.9375rem;padding:12px 18px}.checkout-return-foot{display:flex;align-items:center;justify-content:space-between;gap:16px;padding:12px 28px;border-top:1px solid #a5b7ca24;background:#0a132050;color:#a0b1c6;font-size:.875rem;line-height:1.6}.checkout-return-foot>span,.checkout-return-foot>a{display:flex;align-items:center;gap:8px}.checkout-return-foot a{color:#d9c299;min-height:44px}.checkout-return-foot .icon{width:16px;height:16px;flex:none}
[data-checkout-state=success] .checkout-status-icon{color:#b8e3c8;border-color:#9fd0b04d;background:#8ebfa014}[data-checkout-state=success] [data-checkout-eyebrow]{color:#b3d9c1}[data-checkout-state=error] .checkout-status-icon{color:#e3b586;border-color:#d79f6355;background:#d79f6310}[data-checkout-state=checking] .checkout-status-icon{animation:return-breathe 1.6s ease-in-out infinite}@keyframes return-breathe{50%{opacity:.55}}
@media(min-width:961px) and (max-width:1250px){.site-header .header-in{gap:20px}.header-actions{gap:8px}.header-voucher .voucher-label{display:none}.header-voucher .voucher-short-code{border:0;padding-left:0}.discord-btn{padding-inline:10px}.nav-link{padding-inline:8px}}
@media(max-width:960px){.studio-categories>a.category-card{min-height:252px}.product-route .product-shell{width:calc(100% - 48px)}.product-route .dynamic-product{gap:24px}.product-route .buy-panel,.product-route .dynamic-product .buy-panel{padding:24px}.release-layout{grid-template-columns:160px minmax(0,1fr);gap:24px}.release-paper .product-body{padding:32px}.release-paper .product-videos{padding:24px}.catalog-route .catalog-tools{flex-basis:100%;justify-content:space-between}.catalog-route .catalog-search{max-width:none}.catalog-toolbar{gap:4px;margin-bottom:16px}.header-voucher .voucher-label{display:none}.header-voucher .voucher-short-code{border:0;padding-left:0}}
@media(max-width:720px){.category-intro{align-items:flex-start;flex-direction:column;gap:12px}.category-intro>p{max-width:none}.category-intro .eyebrow{margin-bottom:10px}.studio-categories{gap:12px}.studio-categories>a.category-card{min-height:240px;padding:16px;gap:32px 8px}.studio-categories>a.category-card:last-child{min-height:220px}.studio-categories>a.category-card:last-child .category-art img{object-position:50% 43%}.studio-categories .category-card-copy strong{font-size:1.1rem}.studio-categories .category-card-copy small{letter-spacing:0}.catalog-route .listing-route{padding-top:16px}.catalog-route .breadcrumbs{margin-bottom:12px}.catalog-route .listing-heading{margin-bottom:16px}.catalog-route .listing-heading h1{font-size:1.8rem;line-height:1.22}.catalog-route .listing-heading p{font-size:.9375rem}.catalog-route .catalog-tabs{flex-wrap:nowrap;overflow-x:auto;max-width:100%;padding-bottom:8px;scrollbar-width:thin;scrollbar-color:#b49c6970 transparent;margin-bottom:8px}.catalog-route .catalog-tabs a{flex:none}.catalog-route .suggestions{padding-inline:12px}.catalog-route .suggestions>summary{min-height:58px;gap:8px}.suggestions-prompt>span{display:none}.suggestions-trigger{flex:1;justify-content:space-between;gap:8px;padding-inline:12px}.catalog-route .edition-filters{gap:4px 14px}.edition-label-text{display:none}.catalog-route .catalog-tools{flex-wrap:nowrap;gap:12px}.catalog-route .catalog-search{flex:1 1 160px}.catalog-route [data-catalog-count]{flex:none}.catalog-toolbar{padding-top:0;margin-bottom:16px}.product-route .product-shell{width:calc(100% - 32px)}.product-route .breadcrumbs{padding-top:20px;margin-bottom:16px}.product-ribbon{letter-spacing:.025em;padding:12px 0;flex-wrap:wrap;gap:8px}.product-ribbon>span{gap:8px}.product-section-nav{gap:20px;margin-bottom:16px}.product-route .dynamic-product{display:flex;flex-direction:column;padding-bottom:32px}.product-route .dynamic-product .buy-panel h1{font-size:1.9rem}.product-route .technical-panel{padding:20px}.release-layout{grid-template-columns:minmax(0,1fr);gap:20px;margin-bottom:24px}.release-aside{position:static;padding-top:20px;gap:8px}.release-aside>span:not(.eyebrow){max-width:52ch}.release-paper .product-videos{padding:20px}.release-paper .product-body{padding:28px 22px}.release-paper .prose h2{font-size:1.55rem}.checkout-return{min-height:0;padding:28px 0}.checkout-ribbon{padding:16px 20px;flex-wrap:wrap;gap:8px;letter-spacing:.03em}.checkout-return-body{padding:32px 22px}.checkout-return h1{font-size:1.95rem;line-height:1.2}.checkout-return-actions .btn{flex:1 1 100%;min-height:48px}.checkout-return-foot{padding:16px 20px;flex-direction:column;gap:4px}.checkout-return-foot a{justify-content:center}.checkout-status-icon{width:58px;height:58px;margin-bottom:20px}.article-cover-frame .post-mark{width:122px}}
@media(max-width:600px){.site-header .header-in{width:calc(100% - 32px);gap:8px}.header-actions{gap:5px}.header-actions .icon-btn{min-width:44px;width:44px;height:44px}.header-voucher>summary{padding:9px 8px;gap:6px;max-width:110px}.header-voucher>summary>.icon{display:none}.voucher-short-code{font-size:.875rem;letter-spacing:0;max-width:10ch}.site-header .brand{gap:7px}.site-header .brand-name{font-size:1.1rem;letter-spacing:.1em}.site-header .brand img{width:28px;height:28px}.header-voucher{position:static}.voucher-panel{position:absolute;top:calc(100% - 4px);right:16px;width:354px;padding:20px}.voucher-ticket{padding:14px 10px}.voucher-ticket .btn{padding-inline:10px}}
@media(max-width:374px){.site-header .brand-name{display:none}.studio-categories>a.category-card{min-height:245px;padding:14px}.catalog-route .edition-filters{column-gap:10px}.catalog-route .edition-toggle{gap:6px}}
@media(prefers-reduced-motion:reduce){.studio-categories>a.category-card,.studio-categories>a.category-card .category-art,.suggestions-trigger .icon{transition:none}.studio-categories>a.category-card:hover,.studio-categories>a.category-card:hover .category-art{transform:none}[data-checkout-state=checking] .checkout-status-icon{animation:none}}
