@font-face {
  font-family:'Memorix Sans';
  font-style:normal;
  font-weight:100 900;
  font-display:swap;
  src:url('assets/memorix-sans.woff') format('woff');
}

:root {
  --bg:#f6f6f2;
  --paper:#fff;
  --ink:#222834;
  --muted:#788089;
  --line:#e0e4e3;
  --violet:#7970a8;
  --lilac:#eeedf7;
  --mint:#dcebe6;
  --green:#477b6b;
  --ease:cubic-bezier(.2,.8,.2,1);
  --shadow:0 20px 65px #30364e0c
}

* {
  box-sizing:border-box
}

html {
  scroll-behavior:smooth;
  scroll-padding-top:110px
}

body {
  margin:0;
  background:var(--bg);
  color:var(--ink);
  font:15px/1.7 'Memorix Sans','Noto Sans KR','Malgun Gothic','Apple SD Gothic Neo',sans-serif;
  -webkit-font-smoothing:antialiased
}

button,input,select,textarea {
  font:inherit;
  color:inherit
}

button,a,input,select {
  -webkit-tap-highlight-color:transparent
}

button,a {
  touch-action:manipulation
}

button {
  cursor:pointer
}

a {
  color:inherit;
  text-decoration:none
}

button {
  border:0;
  background:none;
  padding:0
}

input,select,textarea {
  min-width:0;
  width:100%;
  border:1px solid var(--line);
  border-radius:10px;
  padding:13px 15px;
  background:#fff
}

input[type=checkbox] {
  width:18px;
  height:18px;
  accent-color:var(--violet);
  flex-shrink:0
}

input[type=range] {
  padding:0;
  accent-color:var(--violet)
}

textarea {
  resize:vertical;
  min-height:105px
}

h1,h2,h3,p {
  margin:0
}

h1,h2,h3 {
  font-weight:550;
  line-height:1.4;
  letter-spacing:-.045em
}

h1 {
  font-size:clamp(35px,4vw,59px)
}

h2 {
  font-size:31px
}

h3 {
  font-size:19px
}

small,.small {
  font-size:12px
}

.muted {
  color:var(--muted)
}

.eyebrow {
  font-size:10px;
  letter-spacing:.2em;
  line-height:1.6;
  font-weight:650;
  color:var(--violet)
}

.serif {
  font-family:Georgia,serif;
  font-style:italic;
  font-weight:400;
  letter-spacing:-.04em
}

strong {
  font-weight:600
}

.icon {
  width:20px;
  height:20px;
  fill:none;
  stroke:currentColor;
  stroke-width:1.5;
  stroke-linecap:round;
  stroke-linejoin:round;
  flex-shrink:0;
  vertical-align:middle
}

.wrap {
  max-width:1440px;
  padding:0 64px;
  margin:auto
}

.flex {
  display:flex;
  align-items:center;
  gap:12px
}

.between {
  display:flex;
  align-items:center;
  justify-content:space-between;
  gap:20px
}

.stack>*+* {
  margin-top:16px
}

.btn {
  display:inline-flex;
  gap:12px;
  align-items:center;
  justify-content:center;
  min-height:47px;
  padding:11px 21px;
  border:1px solid var(--line);
  border-radius:8px;
  background:#ffffff99;
  font-size:13px;
  font-weight:500;
  transition:transform .3s var(--ease),background .3s,box-shadow .3s
}

.btn:hover {
  transform:translateY(-2px);
  background:#fff;
  box-shadow:0 8px 24px #30364e0a
}

.btn.primary {
  background:var(--ink);
  color:white;
  border-color:var(--ink)
}

.btn.primary:hover {
  background:#484058
}

.btn.soft {
  background:var(--lilac);
  color:#675d90;
  border-color:transparent
}

.btn.small {
  min-height:35px;
  padding:7px 13px;
  font-size:11px
}

.btn:disabled {
  opacity:.4;
  cursor:not-allowed;
  transform:none
}

.icon-btn {
  display:inline-grid;
  place-items:center;
  width:39px;
  height:39px;
  border-radius:50%;
  transition:background .25s,transform .25s
}

.icon-btn:hover {
  background:#e9e8ee;
  transform:translateY(-1px)
}

.text-btn {
  font-size:12px;
  display:inline-flex;
  align-items:center;
  gap:8px;
  color:var(--muted)
}

.text-btn:hover {
  color:var(--ink)
}

:focus-visible {
  outline:2px solid var(--violet);
  outline-offset:5px
}

.pill {
  display:inline-flex;
  align-items:center;
  gap:6px;
  padding:4px 10px;
  border:1px solid var(--line);
  border-radius:30px;
  font-size:10px;
  white-space:nowrap
}

.pill.green {
  background:#e9f2ed;
  border-color:transparent;
  color:var(--green)
}

.dot {
  display:inline-block;
  width:6px;
  height:6px;
  border-radius:50%;
  background:#75a58f;
  box-shadow:0 0 0 4px #75a58f15;
  animation:beacon 3s infinite
}

.skip {
  position:fixed;
  top:-70px;
  left:12px;
  background:white;
  padding:12px;
  z-index:200
}

.skip:focus {
  top:12px
}

[hidden] {
  display:none!important
}

#ambient {
  position:fixed;
  inset:0;
  width:100%;
  height:100%;
  pointer-events:none;
  z-index:-1;
  opacity:.5
}

.header {
  position:sticky;
  top:0;
  z-index:30;
  border-bottom:1px solid #dddfe180;
  background:#f6f6f2eb;
  backdrop-filter:blur(18px)
}

.header-inner {
  height:86px;
  display:flex;
  align-items:center;
  gap:54px
}

.brand {
  font-family:Arial,sans-serif;
  font-size:27px;
  font-weight:600;
  letter-spacing:-1.5px;
  display:inline-flex;
  align-items:center;
  gap:10px
}

.brand-symbol {
  width:30px;
  height:31px;
  color:var(--violet)
}

.brand-symbol path {
  fill:none;
  stroke:currentColor;
  stroke-width:1.65;
  stroke-linecap:round
}

.brand sup {
  font-size:9px;
  letter-spacing:0;
  align-self:start;
  margin-top:6px;
  margin-left:-6px
}

.header nav {
  display:flex;
  align-items:center;
  gap:29px;
  flex:1;
  height:100%;
  font-size:12px;
  color:#71747b
}

.header nav a {
  height:100%;
  display:flex;
  align-items:center;
  position:relative;
  white-space:nowrap
}

.header nav a[aria-current=page] {
  color:var(--ink)
}

.header nav a[aria-current=page]:after {
  content:'';
  position:absolute;
  left:0;
  right:0;
  bottom:0;
  background:var(--violet);
  height:2px
}

.header-actions {
  display:flex;
  align-items:center;
  gap:6px
}

.header-actions .btn {
  margin-left:12px;
  min-height:38px;
  font-size:11px;
  padding:7px 17px
}

.count-badge {
  position:absolute;
  top:0;
  right:-2px;
  font-size:8px;
  color:white;
  background:var(--violet);
  min-width:14px;
  border-radius:12px;
  padding:0 3px
}

.header-actions .icon-btn {
  position:relative
}

.mobile-menu {
  display:none
}

.page {
  min-height:60vh;
  animation:pageEnter .6s var(--ease) both
}

.hero {
  position:relative;
  display:grid;
  grid-template-columns:1fr 1.08fr;
  min-height:550px;
  align-items:center;
  isolation:isolate
}

.hero:before {
  content:'';
  position:absolute;
  z-index:-2;
  inset:30px -50px 0 30%;
  background:radial-gradient(ellipse at 68% 45%,#e1e4f58c,transparent 67%)
}

.hero-copy {
  padding:46px 0 64px;
  position:relative;
  z-index:2
}

.hero-kicker {
  display:flex;
  align-items:center;
  gap:12px;
  color:#788882;
  font-size:10px;
  letter-spacing:.15em
}

.hero h1 {
  margin:25px 0 19px;
  line-height:1.42;
  font-weight:500;
  letter-spacing:-.065em
}

.hero h1 em {
  font-style:normal;
  color:#8680a9
}

.hero-copy>p {
  font-size:13px;
  line-height:2;
  color:var(--muted)
}

.hero-actions {
  display:flex;
  gap:24px;
  align-items:center;
  margin-top:31px
}

.hero-proof {
  display:flex;
  gap:20px;
  align-items:center;
  margin-top:36px;
  font-size:10px;
  color:#88918e
}

.hero-proof .icon {
  width:13px;
  height:13px;
  margin-right:4px
}

.hero-art {
  position:relative;
  align-self:stretch;
  min-height:490px
}

.neural-canvas {
  position:absolute;
  inset:0;
  width:100%;
  height:100%
}

.orbit-label {
  position:absolute;
  font:9px/1.6 monospace;
  letter-spacing:.1em;
  color:#9c9caf;
  pointer-events:none
}

.orbit-label.top {
  top:35px;
  right:5px
}

.orbit-label.bottom {
  bottom:32px;
  left:40%
}

.float-note {
  position:absolute;
  background:#ffffffe6;
  border:1px solid #ffffffaa;
  box-shadow:0 12px 35px #7f7e9810;
  backdrop-filter:blur(10px);
  border-radius:12px;
  padding:12px 17px;
  animation:float 7s ease-in-out infinite;
  font-size:10px;
  color:#787c8b
}

.float-note.one {
  top:115px;
  left:2%
}

.float-note.two {
  right:-2%;
  bottom:108px;
  animation-delay:-3s
}

.float-note strong {
  display:block;
  font-size:16px;
  font-weight:500;
  color:#53576b
}

.float-note .mini-wave {
  display:inline-flex;
  height:20px;
  align-items:center;
  gap:3px;
  margin-left:14px
}

.mini-wave i {
  height:calc(6px + var(--n)*2px);
  width:2px;
  background:#9d97bb;
  animation:wave 1.8s ease-in-out infinite;
  animation-delay:calc(var(--n)*-.15s)
}

.art-caption {
  position:absolute;
  left:12%;
  bottom:40px;
  font-size:9px;
  color:#9397a3;
  letter-spacing:.17em
}

.stats {
  display:grid;
  grid-template-columns:1.25fr 1fr 1fr 1fr;
  border-top:1px solid var(--line);
  border-bottom:1px solid var(--line);
  padding:28px 0
}

.stat {
  padding:0 32px;
  border-left:1px solid var(--line)
}

.stat:first-child {
  padding-left:0;
  border-left:0
}

.stat:last-child {
  padding-right:0
}

.stat span {
  display:block;
  font-size:11px;
  color:var(--muted);
  margin-bottom:5px
}

.stat strong {
  font-family:Arial,sans-serif;
  font-size:28px;
  font-weight:400;
  letter-spacing:-.04em;
  font-variant-numeric:tabular-nums
}

.stat small {
  font-size:10px;
  color:#77a08d;
  margin-left:11px
}

.stat-intro {
  font-size:12px;
  color:#747986;
  display:flex;
  gap:13px;
  align-items:center
}

.stat-intro .symbol {
  font-size:35px;
  color:#a6a2bc;
  font-family:Georgia,serif
}

.stat-intro b {
  display:block;
  font-weight:500;
  color:var(--ink)
}

.section {
  padding:68px 0 0
}

.section-head {
  display:flex;
  justify-content:space-between;
  align-items:end;
  gap:20px;
  margin-bottom:27px
}

.section-head h2 {
  font-size:28px;
  margin-top:8px
}

.section-head p {
  margin-top:9px;
  color:var(--muted);
  font-size:12px
}

.category-row {
  display:flex;
  align-items:center;
  flex-wrap:wrap;
  gap:8px;
  margin-bottom:25px
}

.chip {
  border:1px solid var(--line);
  background:#ffffff88;
  font-size:11px;
  padding:8px 18px;
  border-radius:30px;
  color:#777f87;
  transition:all .25s;
  white-space:nowrap
}

.chip:hover {
  border-color:#aaa4c3;
  transform:translateY(-1px)
}

.chip.active {
  background:var(--ink);
  border-color:var(--ink);
  color:#fff
}

.chip .chip-symbol {
  margin-right:5px;
  opacity:.7
}

.grid {
  display:grid;
  grid-template-columns:repeat(4,minmax(0,1fr));
  gap:27px 21px
}

.memory-card {
  position:relative;
  min-width:0;
  border-radius:12px;
  transition:transform .45s var(--ease),box-shadow .4s;
  background:transparent
}

.memory-card:hover {
  transform:translateY(-6px)
}

.card-art {
  position:relative;
  display:block;
  aspect-ratio:1.39;
  border-radius:11px;
  overflow:hidden;
  background:#dee2e2;
  isolation:isolate
}

.card-art>svg {
  width:100%;
  height:100%;
  display:block;
  transition:transform .9s var(--ease),filter .6s
}

.memory-card:hover .card-art>svg {
  transform:scale(1.06);
  filter:saturate(1.15)
}

.card-art:after {
  content:'';
  position:absolute;
  inset:0;
  pointer-events:none;
  background:linear-gradient(160deg,#fff1,transparent 60%,#141a2930)
}

.art-tag {
  position:absolute;
  top:13px;
  left:13px;
  background:#ffffffc9;
  backdrop-filter:blur(10px);
  border-radius:4px;
  padding:3px 8px;
  font-size:8px;
  color:#4d525b;
  letter-spacing:.08em;
  z-index:2
}

.card-save {
  position:absolute;
  right:11px;
  top:11px;
  width:29px;
  height:29px;
  border-radius:50%;
  background:#ffffffcc;
  display:grid;
  place-items:center;
  z-index:3;
  color:#565965;
  transition:transform .25s
}

.card-save:hover {
  transform:scale(1.12)
}

.card-save .icon {
  width:15px;
  height:15px
}

.card-save[aria-pressed=true] {
  background:#fff;
  color:#8b749f
}

.card-save[aria-pressed=true] .icon {
  fill:#8b749f
}

.card-art .art-no {
  position:absolute;
  bottom:13px;
  left:14px;
  font-family:monospace;
  font-size:8px;
  letter-spacing:.13em;
  color:#ffffffdb;
  z-index:2
}

.card-quick {
  position:absolute;
  bottom:12px;
  right:12px;
  color:white;
  font-size:9px;
  z-index:3;
  padding:4px 10px;
  border-radius:20px;
  background:#30314150;
  backdrop-filter:blur(5px);
  opacity:0;
  transform:translateY(6px);
  transition:.3s
}

.memory-card:hover .card-quick,.card-quick:focus-visible {
  opacity:1;
  transform:none
}

.card-info {
  padding:14px 1px 0
}

.card-topline {
  display:flex;
  justify-content:space-between;
  font-size:9px;
  color:var(--muted);
  margin-bottom:5px
}

.card-info h3 {
  font-size:15px;
  font-weight:500;
  line-height:1.6;
  letter-spacing:-.035em;
  white-space:nowrap;
  overflow:hidden;
  text-overflow:ellipsis
}

.card-info>p {
  font-size:10px;
  color:var(--muted);
  margin-top:3px
}

.card-bottom {
  border-top:1px solid var(--line);
  display:flex;
  justify-content:space-between;
  align-items:center;
  margin-top:13px;
  padding-top:11px
}

.card-price {
  font-size:13px;
  font-family:Arial,sans-serif;
  letter-spacing:-.02em;
  font-weight:500
}

.card-price small {
  font-family:'Memorix Sans',sans-serif;
  font-size:10px
}

.card-social {
  color:#94929e;
  font-size:9px;
  display:flex;
  gap:4px;
  align-items:center
}

.card-social .icon {
  width:11px;
  height:11px
}

.compare-toggle {
  font-size:9px;
  color:#9b9baa;
  padding:3px 0;
  margin-top:6px
}

.compare-toggle[aria-pressed=true] {
  color:var(--violet)
}

.spotlight {
  margin-top:73px;
  display:grid;
  grid-template-columns:1fr 1fr;
  border:1px solid #e4e4ea;
  border-radius:16px;
  overflow:hidden;
  background:#f0f0f6
}

.spotlight-art {
  position:relative;
  min-height:370px;
  overflow:hidden
}

.spotlight-art>svg {
  position:absolute;
  width:100%;
  height:100%;
  object-fit:cover
}

.spotlight-copy {
  padding:45px 48px;
  display:flex;
  flex-direction:column;
  align-items:start;
  justify-content:center
}

.spotlight-copy h2 {
  font-size:32px;
  line-height:1.6;
  margin:13px 0
}

.spotlight-copy>p {
  font-size:12px;
  color:var(--muted);
  line-height:1.9;
  margin-bottom:24px
}

.spotlight-art .float-note {
  bottom:28px;
  left:27px;
  animation:none
}

.collection-grid {
  display:grid;
  grid-template-columns:repeat(3,1fr);
  gap:20px
}

.collection-card {
  padding:29px 27px;
  min-height:165px;
  border-radius:12px;
  position:relative;
  overflow:hidden;
  background:#ebe9f1;
  text-align:left;
  transition:transform .35s
}

.collection-card:nth-child(2) {
  background:#e4ece9
}

.collection-card:nth-child(3) {
  background:#ebe8e1
}

.collection-card:hover {
  transform:translateY(-4px)
}

.collection-card .orb {
  position:absolute;
  right:-20px;
  top:-15px;
  width:170px;
  height:170px;
  border-radius:50%;
  border:1px solid #ffffff70;
  box-shadow:0 0 0 15px #ffffff14,0 0 0 35px #ffffff1b,0 0 0 50px #ffffff15;
  animation:float 9s infinite;
  pointer-events:none
}

.collection-card h3 {
  position:relative;
  font-size:22px;
  margin:13px 0 7px
}

.collection-card p {
  position:relative;
  font-size:10px;
  color:#747580
}

.collection-card>.icon {
  position:absolute;
  right:22px;
  bottom:25px
}

.trust-band {
  display:grid;
  grid-template-columns:1fr 1fr 1fr;
  margin-top:64px;
  padding:32px 0;
  border-top:1px solid var(--line);
  border-bottom:1px solid var(--line);
  gap:35px
}

.trust-band h3 {
  font-size:13px;
  letter-spacing:-.02em;
  margin:8px 0
}

.trust-band p {
  font-size:11px;
  color:var(--muted)
}

.trust-band>.trust-item>.icon {
  color:#9791b1;
  width:24px;
  height:24px
}

.footer {
  margin-top:75px;
  padding:37px 0 30px;
  background:#eaece8;
  border-top:1px solid #e0e3df
}

.footer-top {
  display:flex;
  justify-content:space-between;
  align-items:start;
  gap:30px
}

.footer .brand {
  font-size:24px
}

.footer-top>div>p {
  margin-top:13px;
  color:var(--muted);
  font-size:11px
}

.footer-links {
  display:flex;
  gap:35px;
  font-size:11px;
  color:#797d83
}

.footer-bottom {
  margin-top:35px;
  padding-top:20px;
  border-top:1px solid #d8ddd8;
  display:flex;
  justify-content:space-between;
  gap:16px;
  font-size:9px;
  color:#969b9e
}

.footer-note {
  margin-top:10px;
  font-size:9px;
  color:#989ea0
}

.page-intro {
  padding:52px 0 32px
}

.page-intro h1 {
  font-size:39px;
  margin:12px 0
}

.page-intro>p {
  font-size:13px;
  color:var(--muted)
}

.search-box {
  display:flex;
  align-items:center;
  gap:12px;
  background:#fff;
  border:1px solid var(--line);
  border-radius:10px;
  padding:0 17px;
  max-width:660px
}

.search-box input {
  border:0;
  background:none;
  padding:15px 0;
  font-size:13px;
  outline:none
}

.search-box .icon {
  width:18px;
  color:#9698a5
}

.search-box kbd {
  font-size:10px;
  border:1px solid var(--line);
  border-radius:4px;
  padding:0 5px;
  color:#a6a6af
}

.search-filters {
  display:flex;
  justify-content:space-between;
  align-items:center;
  gap:20px;
  margin:15px 0 25px
}

.search-filters .search-box {
  flex:1
}

.search-filters .btn {
  height:49px
}

.filter-panel {
  padding:22px;
  background:#ededea;
  border-radius:12px;
  margin-bottom:24px;
  display:grid;
  grid-template-columns:1fr 1fr 1fr;
  gap:25px
}

.field label {
  display:block;
  font-size:11px;
  color:var(--muted);
  margin-bottom:7px
}

.field input,.field select {
  font-size:12px
}

.result-bar {
  display:flex;
  align-items:center;
  justify-content:space-between;
  gap:20px;
  margin:30px 0 20px;
  font-size:11px;
  color:var(--muted)
}

.result-bar select {
  width:auto;
  border:0;
  background:transparent;
  font-size:11px;
  padding:4px 18px
}

.result-bar strong {
  color:var(--ink);
  font-weight:500
}

.load-wrap {
  text-align:center;
  margin-top:40px
}

.load-wrap p {
  font-size:10px;
  color:var(--muted);
  margin-top:10px
}

.empty {
  padding:80px 25px;
  text-align:center;
  border:1px dashed var(--line);
  border-radius:15px;
  grid-column:1/-1
}

.empty h3 {
  margin:16px 0 10px
}

.empty p {
  color:var(--muted);
  font-size:12px;
  margin-bottom:20px
}

.breadcrumb {
  font-size:10px;
  color:#969aa3;
  padding:28px 0 23px;
  display:flex;
  gap:10px;
  align-items:center
}

.detail-hero {
  display:grid;
  grid-template-columns:1.13fr 1fr;
  gap:55px;
  align-items:start
}

.detail-art {
  border-radius:15px;
  overflow:hidden;
  position:relative;
  min-height:365px;
  aspect-ratio:1.25;
  background:#dce3dd
}

.detail-art>svg {
  position:absolute;
  width:100%;
  height:100%
}

.detail-art .art-tag {
  font-size:9px;
  top:20px;
  left:20px
}

.art-overlay {
  position:absolute;
  bottom:0;
  left:0;
  right:0;
  padding:35px 25px 25px;
  color:#fff;
  background:linear-gradient(transparent,#252d3450);
  display:flex;
  align-items:end;
  justify-content:space-between
}

.art-overlay span {
  font-size:10px;
  letter-spacing:.15em
}

.art-overlay p {
  font-size:23px;
  margin:3px 0
}

.art-overlay .btn {
  background:#ffffff25;
  color:#fff;
  border-color:#ffffff45
}

.detail-title {
  padding-top:6px
}

.detail-title h1 {
  font-size:39px;
  margin:18px 0 14px
}

.detail-title>p {
  font-size:13px;
  color:var(--muted);
  line-height:1.95;
  max-width:440px
}

.tag-row {
  display:flex;
  gap:6px;
  flex-wrap:wrap;
  margin:20px 0
}

.seller {
  display:flex;
  align-items:center;
  gap:14px;
  padding:21px 0;
  border-top:1px solid var(--line);
  border-bottom:1px solid var(--line);
  margin-top:25px
}

.portrait {
  width:52px;
  height:52px;
  border-radius:50%;
  overflow:hidden;
  background:#e8e6ec;
  flex-shrink:0;
  position:relative;
  display:grid;
  place-items:center;
  color:#a39aad
}

.portrait img {
  width:100%;
  height:100%;
  object-fit:cover
}

.portrait .icon {
  width:35px;
  height:35px
}

.portrait:after {
  content:'';
  position:absolute;
  inset:0;
  border-radius:inherit;
  border:1px solid #3832420c
}

.seller-name {
  font-size:13px
}

.seller-sub {
  font-size:10px;
  color:var(--muted)
}

.seller .text-btn {
  margin-left:auto
}

.detail-meta {
  display:grid;
  grid-template-columns:1fr 1fr;
  gap:16px;
  margin-top:23px
}

.detail-meta dt {
  font-size:10px;
  color:var(--muted);
  margin-bottom:5px
}

.detail-meta dd {
  margin:0;
  font-size:12px
}

.detail-tabs {
  position:sticky;
  top:86px;
  z-index:15;
  background:#f6f6f2ef;
  backdrop-filter:blur(14px);
  display:flex;
  gap:35px;
  border-bottom:1px solid var(--line);
  margin-top:45px
}

.detail-tabs button {
  font-size:12px;
  padding:20px 0;
  border-bottom:2px solid transparent
}

.detail-tabs button:hover {
  border-color:var(--violet)
}

.detail-body {
  padding:42px 0;
  display:grid;
  grid-template-columns:1fr 300px;
  gap:70px
}

.detail-body h2 {
  font-size:24px;
  margin:8px 0 20px
}

.detail-body .body-copy {
  font-size:13px;
  color:var(--muted);
  line-height:2.1
}

.timeline {
  display:grid;
  grid-template-columns:repeat(3,1fr);
  gap:18px;
  margin-top:26px
}

.timeline article {
  padding:20px 18px;
  border-top:1px solid #cac9d7
}

.timeline h3 {
  font-size:15px;
  margin:11px 0
}

.timeline p {
  font-size:11px;
  color:var(--muted);
  line-height:1.9
}

.signal-panel {
  border:1px solid var(--line);
  border-radius:13px;
  padding:23px;
  background:#fff8
}

.signal-panel>p {
  font-size:10px;
  color:var(--muted)
}

.signal-panel h3 {
  font-size:16px;
  margin-top:9px
}

.signal-bar {
  height:5px;
  border-radius:4px;
  background:#e8e9eb;
  overflow:hidden;
  margin-top:8px
}

.signal-bar i {
  height:100%;
  display:block;
  background:linear-gradient(90deg,#c6bfdc,#8daea5);
  border-radius:4px;
  animation:growBar 1.5s var(--ease) both;
  transform-origin:left
}

.signal-line {
  margin-top:17px;
  font-size:10px;
  display:flex;
  justify-content:space-between;
  color:#797e86
}

.license {
  display:flex;
  gap:28px;
  align-items:center;
  padding:33px 36px;
  border:1px solid #ddd9e8;
  background:#eeedf5;
  border-radius:13px;
  margin:18px 0 37px;
  scroll-margin-top:157px
}

.license .license-one {
  font:italic 76px/1 Georgia,serif;
  color:#b2acc8;
  min-width:70px;
  text-align:center
}

.license h2 {
  font-size:25px;
  margin:4px 0 8px
}

.license p {
  font-size:12px;
  color:#81808f;
  line-height:1.9
}

.purchase-section {
  display:grid;
  grid-template-columns:1.2fr 1fr;
  gap:50px;
  padding:5px 0 35px;
  scroll-margin-top:157px
}

.purchase-box {
  padding:32px;
  border:1px solid #dcdae4;
  background:#fff;
  border-radius:14px;
  box-shadow:var(--shadow)
}

.purchase-box .price {
  font-family:Arial,sans-serif;
  font-size:43px;
  letter-spacing:-.055em;
  font-weight:400;
  margin:11px 0 16px
}

.purchase-box .price small {
  font-size:18px;
  font-family:'Memorix Sans',sans-serif;
  letter-spacing:-.02em;
  margin-left:5px
}

.live-line {
  font-size:11px;
  color:#81828e;
  display:flex;
  align-items:center;
  gap:10px
}

.counter-row {
  display:flex;
  gap:35px;
  margin:21px 0;
  padding:17px 0;
  border-top:1px solid var(--line);
  border-bottom:1px solid var(--line)
}

.counter-row span {
  display:block;
  color:var(--muted);
  font-size:10px
}

.counter-row strong {
  font:400 22px/1.6 Arial,sans-serif;
  display:block;
  font-variant-numeric:tabular-nums
}

.buy-buttons {
  display:flex;
  gap:9px
}

.buy-buttons>.primary {
  flex:1
}

.buy-buttons>.btn {
  padding:12px 15px
}

.purchase-box>p {
  font-size:10px;
  margin-top:12px;
  color:#95949f
}

.ownership-note {
  padding:24px 0
}

.ownership-note h3 {
  font-size:17px;
  margin-bottom:12px
}

.ownership-note p {
  font-size:12px;
  color:var(--muted);
  line-height:2
}

.ownership-note .warning {
  border-left:2px solid #b7b1c9;
  padding-left:17px;
  margin-top:25px
}

.ownership-note .text-btn {
  margin-top:15px
}

.reviews {
  padding:36px 0;
  border-top:1px solid var(--line);
  scroll-margin-top:150px
}

.reviews h2 {
  font-size:25px
}

.review-grid {
  display:grid;
  grid-template-columns:repeat(3,1fr);
  gap:22px;
  margin-top:23px
}

.review {
  border:1px solid var(--line);
  padding:22px;
  border-radius:10px;
  background:#ffffff77
}

.review>p {
  font-size:12px;
  color:#777f87;
  line-height:1.9;
  margin:14px 0
}

.review>span {
  font-size:10px;
  color:#9697a2
}

.stars {
  color:#b7a8c5;
  font-size:12px;
  letter-spacing:2px
}

.compare-bar {
  position:fixed;
  bottom:25px;
  left:50%;
  transform:translateX(-50%);
  width:min(790px,calc(100% - 34px));
  background:#282a36ed;
  backdrop-filter:blur(20px);
  border:1px solid #ffffff18;
  box-shadow:0 12px 35px #25243c30;
  padding:14px 21px;
  color:#fff;
  border-radius:13px;
  z-index:40;
  display:flex;
  align-items:center;
  gap:20px;
  animation:slideUp .35s var(--ease)
}

.compare-bar>span {
  font-size:11px;
  flex:1;
  overflow:hidden;
  white-space:nowrap;
  text-overflow:ellipsis
}

.compare-bar .btn {
  background:#eeeaf7;
  color:#4e4764;
  border:0;
  min-height:36px;
  font-size:10px
}

.compare-bar .icon-btn {
  color:#fff
}

.has-compare .footer {
  padding-bottom:120px
}

dialog {
  border:1px solid #ffffffaa;
  border-radius:17px;
  width:min(650px,calc(100vw - 35px));
  max-height:88vh;
  max-height:88dvh;
  padding:0;
  color:var(--ink);
  background:#fafaf7;
  box-shadow:0 35px 130px #25283b33;
  overflow:auto
}

dialog::backdrop {
  background:#27283950;
  backdrop-filter:blur(7px)
}

dialog[open] {
  animation:modalEnter .35s var(--ease)
}

.dialog-head {
  position:sticky;
  top:0;
  padding:20px 26px 15px;
  background:#fafaf7f5;
  backdrop-filter:blur(12px);
  display:flex;
  align-items:center;
  justify-content:space-between;
  gap:12px;
  border-bottom:1px solid var(--line);
  z-index:4
}

.dialog-head h2 {
  font-size:19px
}

.dialog-body {
  padding:26px
}

.dialog-body>p {
  font-size:12px;
  color:var(--muted);
  line-height:1.9
}

.dialog-body .btn {
  margin-top:15px
}

.dialog-actions {
  display:flex;
  gap:10px;
  flex-wrap:wrap;
  margin-top:15px
}

.dialog-body .preview-art {
  aspect-ratio:2;
  overflow:hidden;
  border-radius:10px;
  margin-bottom:20px
}

.preview-art>svg {
  width:100%;
  height:100%
}

.preview-price {
  font-size:26px;
  font-family:Arial,sans-serif;
  margin-top:19px
}

.quick-meta {
  display:grid;
  grid-template-columns:90px 1fr;
  gap:10px;
  font-size:12px;
  margin:22px 0
}

.quick-meta dt {
  color:var(--muted)
}

.quick-meta dd {
  margin:0
}

.table-scroll {
  overflow:auto
}

table {
  border-collapse:collapse;
  width:100%;
  font-size:12px;
  text-align:left
}

th,td {
  border-bottom:1px solid var(--line);
  padding:18px 14px;
  min-width:145px;
  vertical-align:top
}

th {
  font-weight:500
}

th:first-child {
  min-width:85px;
  color:var(--muted)
}

td .btn {
  white-space:nowrap
}

#compare-dialog {
  width:min(950px,calc(100vw - 35px))
}

.photo-large {
  width:min(100%,420px);
  aspect-ratio:4/5;
  background:linear-gradient(135deg,#e5e3eb,#dfe8e2);
  margin:0 auto;
  border-radius:9px;
  overflow:hidden;
  display:grid;
  place-items:center;
  position:relative
}

.photo-large img {
  width:100%;
  height:100%;
  object-fit:cover
}

.photo-large .icon {
  width:150px;
  height:150px;
  color:#b3afb9;
  stroke-width:.55
}

.photo-caption {
  font-size:11px;
  text-align:center;
  margin:15px 0 5px;
  color:#8a8791
}

.checkout {
  max-width:780px;
  margin:0 auto;
  padding:50px 0
}

.steps {
  display:flex;
  gap:20px;
  justify-content:center;
  font-size:10px;
  color:#a1a3ae;
  margin-bottom:33px
}

.steps span.active {
  color:var(--violet)
}

.checkout>h1 {
  font-size:35px;
  text-align:center
}

.checkout>p {
  font-size:12px;
  color:var(--muted);
  text-align:center;
  margin:14px 0 27px
}

.order-box {
  padding:32px;
  background:#fff;
  border:1px solid var(--line);
  border-radius:15px
}

.order-heading {
  display:flex;
  gap:20px;
  align-items:center;
  margin-bottom:22px
}

.order-thumb {
  width:120px;
  height:83px;
  border-radius:7px;
  overflow:hidden;
  flex-shrink:0
}

.order-thumb svg {
  width:100%;
  height:100%
}

.order-heading h2 {
  font-size:22px
}

.order-heading p {
  font-size:11px;
  color:var(--muted);
  margin-top:6px
}

.order-row {
  display:flex;
  justify-content:space-between;
  gap:20px;
  padding:14px 0;
  border-top:1px solid var(--line);
  font-size:12px
}

.order-row strong {
  font-family:Arial,sans-serif;
  font-size:16px
}

.consents {
  padding-top:20px;
  margin-top:6px;
  border-top:1px solid var(--line)
}

.consents label {
  display:flex;
  align-items:start;
  gap:10px;
  font-size:11px;
  color:#81828d;
  margin-bottom:13px
}

.consents input {
  margin-top:3px
}

.checkout-actions {
  display:flex;
  justify-content:space-between;
  gap:20px;
  align-items:center;
  margin-top:26px
}

.checkout-hint {
  font-size:10px;
  color:#9695a2;
  margin-top:13px
}

.success {
  max-width:730px;
  margin:0 auto;
  padding:70px 0;
  text-align:center
}

.success-circle {
  display:grid;
  place-items:center;
  width:75px;
  height:75px;
  margin:0 auto 25px;
  border-radius:50%;
  background:#e7eee9;
  color:#709182;
  box-shadow:0 0 0 12px #edf0ec;
  animation:successIn .8s var(--ease)
}

.success-circle .icon {
  width:32px;
  height:32px
}

.success h1 {
  font-size:38px
}

.success>p {
  font-size:13px;
  color:var(--muted);
  margin:19px 0 30px
}

.success .order-box {
  text-align:left
}

.success .dialog-actions {
  justify-content:center
}

.calendar-form {
  margin-top:26px;
  padding-top:20px;
  border-top:1px solid var(--line)
}

.calendar-form h3 {
  font-size:18px;
  margin-bottom:15px
}

.form-grid {
  display:grid;
  grid-template-columns:1fr 1fr;
  gap:17px
}

.form-grid label {
  font-size:11px;
  color:var(--muted);
  display:block
}

.form-grid input,.form-grid select {
  margin-top:7px;
  font-size:12px
}

.insight-layout {
  display:grid;
  grid-template-columns:1.5fr 1fr;
  gap:27px;
  margin-top:35px
}

.panel {
  background:#fff9;
  border:1px solid var(--line);
  border-radius:14px;
  padding:30px
}

.panel h2 {
  font-size:22px
}

.chart {
  width:100%;
  height:190px;
  margin-top:26px
}

.chart-labels {
  display:flex;
  justify-content:space-between;
  font-size:9px;
  color:var(--muted)
}

.ranking-row {
  display:grid;
  grid-template-columns:24px 1fr auto;
  align-items:center;
  gap:14px;
  padding:16px 0;
  border-bottom:1px solid var(--line);
  width:100%;
  text-align:left
}

.ranking-row:last-child {
  border:0
}

.ranking-row>.rank {
  font:italic 22px Georgia;
  color:#9b93b4
}

.ranking-row h3 {
  font-size:13px
}

.ranking-row p {
  font-size:10px;
  color:var(--muted)
}

.ranking-row>strong {
  font-size:11px;
  font-weight:400;
  color:#7e998a
}

.about-hero {
  text-align:center;
  max-width:820px;
  margin:30px auto 45px;
  padding:30px 0
}

.about-hero h1 {
  font-size:45px;
  margin:16px 0 23px
}

.about-hero>p {
  color:var(--muted);
  font-size:13px;
  line-height:2
}

.about-grid {
  display:grid;
  grid-template-columns:repeat(3,1fr);
  gap:22px
}

.about-grid .panel {
  min-height:240px
}

.about-grid h3 {
  font-size:20px;
  margin:19px 0 14px
}

.about-grid p {
  font-size:12px;
  color:var(--muted);
  line-height:2
}

.faq {
  margin-top:30px
}

.faq details {
  padding:19px 0;
  border-top:1px solid var(--line);
  font-size:13px
}

.faq summary {
  cursor:pointer;
  list-style:none;
  display:flex;
  justify-content:space-between;
  align-items:center
}

.faq summary:after {
  content:'+';
  font-size:20px;
  color:#a5a0b7
}

.faq details[open] summary:after {
  content:'−'
}

.faq details p {
  font-size:12px;
  line-height:1.95;
  color:var(--muted);
  margin:15px 35px 0 0
}

.sell-layout {
  display:grid;
  grid-template-columns:1fr 1fr;
  gap:55px;
  align-items:start;
  margin-top:20px
}

.sell-form {
  padding:30px;
  border:1px solid var(--line);
  border-radius:15px;
  background:#fff9
}

.sell-form .field {
  margin-bottom:17px
}

.sell-form input,.sell-form select,.sell-form textarea {
  font-size:12px
}

.estimate {
  background:var(--lilac);
  border-radius:12px;
  padding:25px
}

.estimate h3 {
  font-size:19px;
  margin:12px 0
}

.estimate p {
  font-size:11px;
  color:var(--muted)
}

.estimate .value {
  font-size:32px;
  font-family:Arial,sans-serif;
  color:#817497;
  margin:15px 0 6px
}

.sell-steps {
  margin:30px 0
}

.sell-steps>div {
  display:flex;
  gap:15px;
  margin:23px 0;
  font-size:12px
}

.sell-steps b {
  font-size:16px;
  color:#aaa2bd;
  font-family:Georgia,serif
}

.sell-steps p {
  font-size:11px;
  color:var(--muted);
  margin-top:5px
}

.search-suggestions {
  display:flex;
  flex-wrap:wrap;
  gap:8px;
  margin:20px 0
}

.search-item {
  display:flex;
  width:100%;
  text-align:left;
  align-items:center;
  gap:15px;
  padding:13px 0;
  border-bottom:1px solid var(--line)
}

.search-item h3 {
  font-size:13px
}

.search-item p {
  font-size:10px;
  color:var(--muted)
}

.search-item .icon {
  margin-left:auto;
  color:#9292a0
}

.notification {
  padding:18px 0;
  border-bottom:1px solid var(--line)
}

.notification>span {
  font-size:9px;
  color:var(--violet)
}

.notification h3 {
  font-size:14px;
  margin:5px 0
}

.notification p {
  font-size:11px;
  color:var(--muted)
}

.notification .text-btn {
  margin-top:7px
}

.toast {
  position:fixed;
  bottom:30px;
  left:50%;
  transform:translate(-50%,25px);
  padding:13px 23px;
  border-radius:10px;
  background:#272a36ed;
  color:white;
  font-size:12px;
  box-shadow:0 10px 35px #25243c22;
  opacity:0;
  pointer-events:none;
  transition:all .3s;
  z-index:150;
  max-width:90vw;
  text-align:center
}

.toast.show {
  opacity:1;
  transform:translate(-50%,0)
}

.has-compare .toast {
  bottom:103px
}

.shoot-title {
  color:#6f6688
}

.shoot-grid {
  display:grid;
  grid-template-columns:1fr 1fr;
  gap:15px
}

.shoot-grid label {
  font-size:11px;
  color:var(--muted)
}

.shoot-grid input,.shoot-grid select {
  font-size:12px;
  margin-top:5px
}

.shoot-section {
  padding:19px 0;
  border-top:1px solid var(--line);
  margin-top:18px
}

.shoot-section h3 {
  font-size:14px;
  margin-bottom:13px
}

.shoot-section>p {
  font-size:10px;
  color:var(--muted);
  margin-bottom:13px
}

.scene-buttons {
  display:flex;
  flex-wrap:wrap;
  gap:8px
}

.shoot-toggle {
  display:flex;
  align-items:center;
  justify-content:space-between;
  font-size:12px;
  margin:13px 0;
  gap:15px
}

.shoot-toggle input {
  width:19px
}

.shortcut {
  display:flex;
  justify-content:space-between;
  font-size:10px;
  color:var(--muted);
  margin:8px 0
}

kbd {
  font-family:monospace;
  font-size:10px;
  background:#efeff2;
  border:1px solid #dddde4;
  padding:2px 6px;
  border-radius:4px
}

.portrait-actions {
  display:flex;
  flex-wrap:wrap;
  gap:8px
}

.file-button {
  position:relative;
  overflow:hidden
}

.file-button input {
  position:absolute;
  inset:0;
  opacity:0;
  cursor:pointer
}

.progress-track {
  height:6px;
  border-radius:5px;
  background:#eae7f0;
  overflow:hidden;
  margin-top:20px
}

.progress-track i {
  display:block;
  width:0;
  height:100%;
  background:#a89cc2;
  transition:width .5s
}

.preview-player {
  padding:30px 20px;
  background:#252b3a;
  color:white;
  border-radius:12px;
  text-align:center
}

.preview-player .playing-orb {
  width:120px;
  height:120px;
  border-radius:50%;
  margin:12px auto 25px;
  background:radial-gradient(circle at 35% 30%,#e1dee8,#8ea4b3 40%,#53526e 67%,#353a51);
  box-shadow:0 0 45px #a09aba33,inset -10px -10px 25px #21223466;
  animation:float 6s infinite
}

.preview-player p {
  font-size:12px;
  color:#c4c6d5
}

.preview-player h3 {
  font-size:20px;
  color:#eeeaf5;
  margin-bottom:12px
}

.preview-player .mini-wave {
  display:flex;
  height:35px;
  align-items:center;
  justify-content:center;
  gap:4px;
  margin:10px 0 20px
}

.preview-player .mini-wave i {
  background:#c4bcde;
  width:2px
}

.preview-player .btn {
  background:#ffffff15;
  color:#d3cce5;
  border-color:#ffffff20
}

.splash {
  position:fixed;
  inset:0;
  background:#ececf0;
  z-index:200;
  display:grid;
  place-items:center;
  opacity:0;
  pointer-events:none
}

.splash.play {
  animation:splash 3.5s both
}

.splash .brand {
  font-size:60px;
  color:#60586f
}

.splash .brand-symbol {
  width:55px;
  height:60px
}

.splash p {
  text-align:center;
  font-size:10px;
  letter-spacing:.25em;
  color:#9890a5;
  margin-top:20px
}

.reveal {
  opacity:0;
  transform:translateY(22px);
  transition:opacity .85s var(--ease),transform .85s var(--ease);
  transition-delay:var(--delay,0ms)
}

.reveal.visible {
  opacity:1;
  transform:none
}

.bump {
  animation:countBump .55s var(--ease)
}

.paused *, .paused *:before,.paused *:after {
  animation-play-state:paused!important
}

.reduced-motion *, .reduced-motion *:before,.reduced-motion *:after {
  animation:none!important;
  transition:none!important;
  scroll-behavior:auto!important
}

.reduced-motion .reveal {
  opacity:1;
  transform:none
}

.reduced-motion .splash {
  display:none
}

.low-motion .float-note,.low-motion .orb,.low-motion .mini-wave i {
  animation:none
}

.film-cursorless {
  cursor:none
}

.film-cursorless * {
  cursor:none!important
}

.sr-only {
  position:absolute;
  width:1px;
  height:1px;
  padding:0;
  margin:-1px;
  overflow:hidden;
  clip:rect(0,0,0,0);
  white-space:nowrap;
  border:0
}

body.large-type {
  font-size:17px
}

body.large-type .detail-title h1 {
  font-size:46px
}

body.large-type .license h2 {
  font-size:30px
}

body.large-type .purchase-box .price {
  font-size:52px
}

@keyframes float {
  0%,100% {
    transform:translateY(0)
  }
  50% {
    transform:translateY(-11px)
  }
}

@keyframes wave {
  0%,100% {
    transform:scaleY(.6)
  }
  50% {
    transform:scaleY(1.2)
  }
}

@keyframes beacon {
  50% {
    box-shadow:0 0 0 6px #75a58f06;
    opacity:.6
  }
}

@keyframes pageEnter {
  from {
    opacity:0;
    transform:translateY(9px)
  }
  to {
    opacity:1;
    transform:none
  }
}

@keyframes modalEnter {
  from {
    opacity:0;
    transform:translateY(18px) scale(.98)
  }
  to {
    opacity:1;
    transform:none
  }
}

@keyframes countBump {
  0% {
    color:#8c7cac;
    transform:translateY(3px)
  }
  50% {
    color:#8c7cac
  }
  100% {
    transform:none
  }
}

@keyframes growBar {
  from {
    transform:scaleX(0)
  }
  to {
    transform:scaleX(1)
  }
}

@keyframes slideUp {
  from {
    opacity:0;
    bottom:8px
  }
  to {
    opacity:1;
    bottom:25px
  }
}

@keyframes successIn {
  from {
    transform:scale(.6);
    opacity:0
  }
  to {
    transform:scale(1);
    opacity:1
  }
}

@keyframes splash {
  0% {
    opacity:0
  }
  15%,70% {
    opacity:1
  }
  100% {
    opacity:0
  }
}

.card-art>a {
  display:block
}

.card-art>a>svg {
  width:100%;
  height:100%;
  display:block;
  transition:transform .9s var(--ease),filter .6s
}

.memory-card:hover .card-art>a>svg {
  transform:scale(1.06);
  filter:saturate(1.1)
}

.search-item>div>svg {
  width:100%;
  height:100%
}

.btn[aria-pressed=true] {
  border-color:#a398bc;
  color:#847498;
  background:#f1edf7
}

.btn[aria-pressed=true] .icon {
  fill:#b0a1c530
}

.preview-player.stopped .mini-wave i,.preview-player.stopped .playing-orb {
  animation-play-state:paused
}

.card-art:hover:after {
  opacity:.7
}

@media(min-width:1600px) {
  .hero {
    min-height:620px
  }
  .hero-art {
    min-height:550px
  }
  .hero h1 {
    font-size:60px
  }
  .wrap {
    max-width:1540px
  }
  .hero-copy {
    padding-bottom:70px
  }
}

@media(max-width:1180px) {
  .wrap {
    padding:0 35px
  }
  .header-inner {
    gap:30px
  }
  .header nav {
    gap:19px
  }
  .hero {
    min-height:500px
  }
  .hero-art {
    min-height:460px
  }
  .hero h1 {
    font-size:44px
  }
  .float-note.one {
    left:0
  }
  .float-note.two {
    right:0
  }
  .hero-proof {
    gap:12px
  }
  .hero-actions {
    gap:17px
  }
  .card-info h3 {
    font-size:14px
  }
  .detail-hero {
    gap:30px
  }
  .detail-body {
    gap:35px
  }
  .detail-title h1 {
    font-size:34px
  }
  .spotlight-copy {
    padding:35px
  }
  .stat {
    padding:0 23px
  }
}

@media(max-width:900px) {
  .header-inner {
    gap:20px;
    height:72px
  }
  .header nav {
    gap:15px;
    font-size:11px
  }
  .header nav a:nth-child(3) {
    display:none
  }
  .header-actions .btn {
    display:none
  }
  .hero {
    min-height:480px;
    grid-template-columns:1.1fr 1fr
  }
  .hero-art {
    min-height:440px
  }
  .hero h1 {
    font-size:37px
  }
  .hero-copy>p {
    font-size:11px
  }
  .float-note {
    padding:9px 12px;
    font-size:8px
  }
  .float-note strong {
    font-size:13px
  }
  .hero-proof {
    font-size:8px;
    gap:8px
  }
  .hero-actions .btn {
    font-size:11px;
    padding:10px 17px
  }
  .hero-actions .text-btn {
    font-size:10px
  }
  .grid {
    grid-template-columns:repeat(3,minmax(0,1fr))
  }
  .stats {
    grid-template-columns:1fr 1fr 1fr
  }
  .stat-intro {
    display:none
  }
  .stat:nth-child(2) {
    padding-left:0;
    border:0
  }
  .stat strong {
    font-size:25px
  }
  .stat span {
    font-size:10px
  }
  .stat small {
    display:none
  }
  .spotlight-copy h2 {
    font-size:27px
  }
  .spotlight-art {
    min-height:330px
  }
  .detail-tabs {
    top:72px
  }
  .detail-hero {
    grid-template-columns:1fr 1fr;
    gap:25px
  }
  .detail-art {
    min-height:340px
  }
  .detail-title h1 {
    font-size:29px
  }
  .detail-title>p {
    font-size:11px
  }
  .seller {
    margin-top:17px;
    padding:14px 0
  }
  .detail-meta {
    gap:9px;
    margin-top:17px
  }
  .detail-meta dd {
    font-size:10px
  }
  .detail-body {
    grid-template-columns:1fr 220px;
    gap:25px
  }
  .purchase-section {
    gap:27px
  }
  .purchase-box {
    padding:25px
  }
  .purchase-box .price {
    font-size:38px
  }
  .buy-buttons .btn {
    font-size:11px;
    padding:11px
  }
  .timeline {
    gap:8px
  }
  .timeline article {
    padding:15px 9px
  }
  .insight-layout {
    grid-template-columns:1.3fr 1fr
  }
  .about-grid {
    gap:13px
  }
  .about-grid .panel {
    padding:22px
  }
  .sell-layout {
    gap:27px
  }
}

@media(max-width:680px) {
  .wrap {
    padding:0 21px
  }
  .header-inner {
    height:67px;
    gap:10px
  }
  .brand {
    font-size:25px
  }
  .brand-symbol {
    width:26px
  }
  .header nav {
    display:none;
    position:absolute;
    left:0;
    right:0;
    top:67px;
    height:auto;
    padding:18px 23px;
    background:#f6f6f2;
    box-shadow:0 10px 20px #33333310;
    border-bottom:1px solid var(--line);
    flex-direction:column;
    align-items:stretch;
    gap:0
  }
  .header nav.mobile-open {
    display:flex
  }
  .header nav a,.header nav a:nth-child(3) {
    display:block;
    padding:12px 0
  }
  .header nav a[aria-current=page]:after {
    display:none
  }
  .header-actions {
    margin-left:auto;
    gap:0
  }
  .header-actions .icon-btn {
    width:34px
  }
  .header-actions .bell-btn {
    display:none
  }
  .mobile-menu {
    display:grid
  }
  .hero {
    display:flex;
    flex-direction:column;
    min-height:0;
    align-items:stretch
  }
  .hero-copy {
    padding:38px 0 0
  }
  .hero h1 {
    font-size:39px;
    margin-top:20px
  }
  .hero-copy>p {
    font-size:12px
  }
  .hero-actions {
    margin-top:25px;
    gap:23px
  }
  .hero-proof {
    margin-top:25px;
    font-size:9px;
    gap:14px
  }
  .hero-art {
    height:335px;
    min-height:335px;
    margin-top:-5px
  }
  .hero:before {
    inset:210px -20px 0;
    background:radial-gradient(ellipse at center,#e1e4f5a0,transparent 70%)
  }
  .float-note.one {
    top:84px;
    left:5%
  }
  .float-note.two {
    right:0;
    bottom:66px
  }
  .orbit-label.top {
    top:20px;
    right:0
  }
  .orbit-label.bottom {
    bottom:17px
  }
  .art-caption {
    bottom:24px;
    left:8%;
    font-size:7px
  }
  .stats {
    padding:23px 0
  }
  .stat {
    padding:0 13px
  }
  .stat strong {
    font-size:23px
  }
  .stat span {
    font-size:8px;
    letter-spacing:-.02em
  }
  .section {
    padding-top:42px
  }
  .section-head h2 {
    font-size:25px
  }
  .section-head {
    gap:12px;
    align-items:center
  }
  .section-head .text-btn {
    font-size:10px
  }
  .section-head p {
    font-size:11px
  }
  .category-row {
    gap:7px;
    margin-bottom:20px;
    flex-wrap:nowrap;
    overflow-x:auto;
    padding-bottom:4px;
    scrollbar-width:none
  }
  .chip {
    padding:7px 15px;
    font-size:10px
  }
  .grid {
    grid-template-columns:repeat(2,minmax(0,1fr));
    gap:24px 13px
  }
  .card-art {
    aspect-ratio:1.08;
    border-radius:8px
  }
  .card-info h3 {
    font-size:13px
  }
  .card-info>p {
    font-size:9px
  }
  .card-info {
    padding-top:10px
  }
  .card-topline {
    font-size:8px
  }
  .card-price {
    font-size:12px
  }
  .card-social {
    font-size:8px
  }
  .card-bottom {
    margin-top:9px;
    padding-top:8px
  }
  .card-price small {
    font-size:9px
  }
  .art-tag {
    font-size:7px;
    padding:3px 6px;
    top:9px;
    left:9px
  }
  .card-save {
    width:25px;
    height:25px;
    top:7px;
    right:7px
  }
  .card-art .art-no {
    font-size:6px;
    left:10px;
    bottom:10px
  }
  .card-quick {
    opacity:1;
    font-size:8px;
    bottom:8px;
    right:7px;
    transform:none;
    padding:3px 8px
  }
  .spotlight {
    grid-template-columns:1fr;
    margin-top:40px
  }
  .spotlight-art {
    min-height:270px
  }
  .spotlight-copy {
    padding:30px
  }
  .spotlight-copy h2 {
    font-size:29px
  }
  .collection-grid {
    grid-template-columns:1fr;
    gap:12px
  }
  .collection-card {
    min-height:146px;
    padding:23px
  }
  .collection-card h3 {
    font-size:23px
  }
  .collection-card .orb {
    width:150px;
    height:150px;
    right:20px
  }
  .trust-band {
    grid-template-columns:1fr;
    margin-top:40px;
    gap:24px;
    padding:27px 0
  }
  .trust-item {
    padding-left:38px;
    position:relative
  }
  .trust-band>.trust-item>.icon {
    position:absolute;
    left:0;
    top:8px
  }
  .trust-band h3 {
    margin-top:0
  }
  .footer {
    margin-top:43px
  }
  .footer-top {
    flex-direction:column;
    gap:25px
  }
  .footer-links {
    gap:20px;
    flex-wrap:wrap;
    font-size:10px
  }
  .footer-bottom {
    font-size:8px;
    flex-direction:column;
    gap:6px
  }
  .page-intro {
    padding-top:33px
  }
  .page-intro h1 {
    font-size:32px
  }
  .page-intro>p {
    font-size:12px
  }
  .search-filters {
    gap:10px
  }
  .search-filters .btn {
    padding:10px 13px;
    font-size:11px
  }
  .search-box {
    padding:0 12px
  }
  .search-box input {
    font-size:11px
  }
  .search-box kbd {
    display:none
  }
  .filter-panel {
    grid-template-columns:1fr;
    padding:18px;
    gap:14px
  }
  .result-bar {
    font-size:10px;
    margin-top:22px;
    gap:5px
  }
  .result-bar select {
    font-size:10px;
    max-width:125px
  }
  .breadcrumb {
    font-size:9px;
    padding:23px 0 18px
  }
  .detail-hero {
    grid-template-columns:1fr;
    gap:27px
  }
  .detail-art {
    min-height:310px;
    aspect-ratio:1.2
  }
  .detail-title h1 {
    font-size:33px
  }
  .detail-title>p {
    font-size:12px
  }
  .seller {
    padding:20px 0
  }
  .detail-meta dd {
    font-size:11px
  }
  .detail-meta {
    gap:15px
  }
  .detail-tabs {
    top:67px;
    gap:27px;
    justify-content:space-between;
    margin-top:25px
  }
  .detail-tabs button {
    font-size:11px;
    padding:15px 0
  }
  .detail-body {
    grid-template-columns:1fr;
    padding-top:30px;
    gap:22px
  }
  .timeline {
    gap:8px
  }
  .timeline h3 {
    font-size:13px
  }
  .timeline p {
    font-size:10px
  }
  .signal-panel {
    padding:20px
  }
  .license {
    padding:22px 18px;
    gap:14px
  }
  .license .license-one {
    font-size:64px;
    min-width:35px
  }
  .license h2 {
    font-size:21px
  }
  .license p {
    font-size:11px
  }
  .purchase-section {
    grid-template-columns:1fr;
    gap:13px
  }
  .purchase-box {
    padding:25px
  }
  .purchase-box .price {
    font-size:43px
  }
  .ownership-note {
    padding:20px 3px
  }
  .review-grid {
    grid-template-columns:1fr;
    gap:11px
  }
  .review {
    padding:20px
  }
  .review>p {
    margin:9px 0
  }
  .compare-bar {
    padding:10px 13px;
    gap:10px;
    bottom:15px
  }
  .compare-bar>span {
    font-size:10px
  }
  .compare-bar .btn {
    font-size:9px;
    padding:8px 11px
  }
  .compare-bar .icon-btn {
    width:25px
  }
  .dialog-head {
    padding:16px 20px 11px
  }
  .dialog-body {
    padding:20px
  }
  .dialog-head h2 {
    font-size:17px
  }
  .shoot-grid {
    gap:12px
  }
  .shoot-grid label {
    font-size:10px
  }
  .shoot-grid input {
    padding:10px
  }
  .portrait-actions .btn {
    font-size:10px;
    padding:9px 11px
  }
  .checkout {
    padding:30px 0
  }
  .checkout>h1 {
    font-size:29px
  }
  .order-box {
    padding:23px 19px
  }
  .order-heading h2 {
    font-size:18px
  }
  .order-thumb {
    width:80px;
    height:73px
  }
  .order-row {
    font-size:11px
  }
  .consents label {
    font-size:10px
  }
  .checkout-actions {
    gap:10px
  }
  .checkout-actions>.btn {
    font-size:11px;
    padding:11px 15px
  }
  .success h1 {
    font-size:31px
  }
  .success {
    padding-top:48px
  }
  .form-grid {
    grid-template-columns:1fr
  }
  .insight-layout {
    grid-template-columns:1fr;
    gap:20px
  }
  .panel {
    padding:25px
  }
  .about-hero h1 {
    font-size:33px
  }
  .about-grid {
    grid-template-columns:1fr
  }
  .about-grid .panel {
    min-height:0;
    padding:27px
  }
  .about-grid h3 {
    margin:12px 0
  }
  .sell-layout {
    grid-template-columns:1fr;
    gap:27px
  }
  .sell-form {
    padding:24px
  }
  .toast {
    font-size:11px;
    padding:11px 17px;
    width:max-content;
    max-width:90vw
  }
  .steps {
    gap:10px;
    font-size:9px
  }
  .license,.purchase-section {
    scroll-margin-top:135px
  }
  .preview-player {
    padding:25px 15px
  }
}

@media(prefers-reduced-motion:reduce) {
  html {
    scroll-behavior:auto
  }
  .reveal {
    opacity:1;
    transform:none
  }
  *,*:before,*:after {
    animation-duration:.01ms!important;
    animation-iteration-count:1!important;
    transition-duration:.01ms!important;
    scroll-behavior:auto!important
  }
  .splash {
    display:none
  }
}

.paused .page,.paused dialog,.paused .reveal {
  animation:none!important;
  opacity:1;
  transform:none
}

.paused .reveal {
  transition:none
}

.paused .splash {
  display:none
}

.detail-hero>* {
  min-width:0
}

.detail-art {
  width:100%;
  min-height:0
}

.insight-layout>* {
  min-width:0
}

@media(max-width:1180px) {
  .hero:before {
    right:-20px
  }
}

:root {
  --bg:#FFFFFF;
  --paper:#FFFFFF;
  --ink:#17212E;
  --muted:#65707C;
  --line:#E5E8EC;
  --violet:#756895;
  --lilac:#F7F8FA;
  --mint:#F4F5F7;
  --shadow:0 12px 38px #18223607
}

html,body {
  background:#FFFFFF
}

.header {
  background:#FFFFFFf5;
  border-bottom-color:#E9ECF0
}

.header nav {
  color:#586372
}

.hero {
  min-height:490px
}

.hero:before {
  display:none
}

.hero-copy {
  padding-top:40px;
  padding-bottom:45px
}

.hero h1 {
  font-size:clamp(36px,3.7vw,55px);
  font-weight:500;
  line-height:1.4
}

.hero h1 em {
  color:var(--ink)
}

.hero-kicker {
  color:#697480
}

.hero-copy>p {
  font-size:14px;
  line-height:1.95;
  max-width:460px
}

.hero-proof {
  color:#687580;
  font-size:11px;
  gap:21px
}

.hero-art {
  min-height:450px
}

.neural-canvas {
  opacity:.50
}

.float-note {
  background:#FFFFFFf0;
  border:1px solid #ECEEF2;
  box-shadow:0 9px 28px #17212e06;
  color:#64707B;
  border-radius:9px
}

.float-note strong {
  color:#374352;
  font-size:14px
}

.float-note.one {
  left:2%;
  top:120px
}

.float-note.two {
  right:2%;
  bottom:95px
}

.art-caption {
  left:auto;
  right:7%;
  bottom:38px;
  font-size:8px;
  color:#9098A2;
  letter-spacing:.09em
}

.orbit-label {
  display:none
}

#ambient {
  opacity:.12
}

.btn {
  background:#FFFFFF
}

.btn.primary:hover {
  background:#354052
}

.btn.soft {
  background:#F4F5F7;
  border-color:#E8EBF0;
  color:#576271
}

.icon-btn:hover {
  background:#F4F5F7
}

.btn[aria-pressed=true] {
  background:#F7F8FA;
  border-color:#C4BACF;
  color:var(--violet)
}

.pill.green {
  background:#F3F7F5
}

.chip {
  background:#FFFFFF;
  color:#66717C
}

.chip:hover {
  background:#F7F8FA;
  border-color:#CCD1D8
}

.stats {
  grid-template-columns:repeat(4,minmax(0,1fr));
  padding:31px 0;
  background:#FFFFFF
}

.stat {
  padding:0 30px;
  min-width:0;
  border-left:1px solid var(--line)
}

.stat:first-child {
  padding-left:0;
  border-left:0
}

.stat:nth-child(2) {
  padding-left:30px;
  border-left:1px solid var(--line)
}

.stat strong {
  font-size:34px;
  font-weight:500;
  letter-spacing:-.035em;
  color:var(--ink)
}

.stat span {
  font-size:11px;
  color:#65717E
}

.stat small {
  display:block;
  font-size:9px;
  color:#87909A;
  margin:5px 0 0
}

.section-head h2 {
  font-size:27px
}

.section-head p {
  color:var(--muted)
}

.section {
  padding-top:61px
}

.eyebrow {
  letter-spacing:.15em
}

.market-pulse {
  display:grid;
  grid-template-columns:repeat(4,minmax(0,1fr));
  border:1px solid #EBEEF2;
  background:#F7F8FA;
  border-radius:9px;
  margin:0 0 24px;
  padding:17px 0
}

.market-pulse>div {
  padding:0 22px;
  border-left:1px solid #E2E6EC;
  min-width:0
}

.market-pulse>div:first-child {
  border:0
}

.market-pulse span {
  display:block;
  font-size:10px;
  color:#76818E;
  margin-bottom:4px
}

.market-pulse strong {
  font:500 20px/1.5 Arial,sans-serif;
  color:#33404F;
  letter-spacing:-.02em;
  font-variant-numeric:tabular-nums
}

.market-pulse small {
  font-size:9px;
  color:#87909B;
  margin-left:5px
}

.memory-card:hover {
  transform:translateY(-3px)
}

.card-art {
  border-radius:9px;
  background:#F4F5F7
}

.card-art>a>svg {
  filter:saturate(.72)
}

.memory-card:hover .card-art>a>svg {
  transform:scale(1.035);
  filter:saturate(.87)
}

.art-tag {
  font-size:8px;
  letter-spacing:.05em
}

.card-info h3 {
  font-size:16px;
  color:var(--ink);
  font-weight:550
}

.card-info>p {
  font-size:11px;
  color:#6F7A87
}

.card-info .card-period {
  font-size:10px;
  line-height:1.6;
  margin-top:5px;
  color:#838C97;
  overflow:hidden;
  text-overflow:ellipsis;
  white-space:nowrap
}

.card-topline {
  font-size:9px;
  gap:5px
}

.card-topline span:last-child {
  white-space:nowrap
}

.card-price {
  font-size:17px;
  font-weight:550;
  color:#17212E;
  letter-spacing:-.03em
}

.card-price small {
  font-size:11px;
  font-weight:400
}

.card-social {
  font-size:10px;
  color:#7C8694
}

.compare-toggle {
  font-size:10px;
  color:#7F8A97
}

.card-bottom {
  margin-top:12px;
  padding-top:11px
}

.collection-card,.collection-card:nth-child(2),.collection-card:nth-child(3) {
  background:#FFFFFF;
  border:1px solid #E5E8EE
}

.collection-card .orb {
  border-color:#E8EBF0;
  box-shadow:0 0 0 15px #F7F8FA,0 0 0 35px #FAFBFC,0 0 0 50px #FDFDFE
}

.collection-card:hover {
  box-shadow:0 8px 25px #17212e05
}

.collection-card h3 {
  font-size:21px
}

.collection-card p {
  color:#75808E
}

.footer {
  background:#FFFFFF;
  border-top:1px solid #E5E8EC
}

.footer-bottom {
  border-color:#E5E8EC
}

.header nav.mobile-open {
  background:#FFFFFF
}

.detail-tabs {
  background:#FFFFFFf5
}

.license {
  background:#F7F8FA;
  border-color:#E4E8EF
}

.license .license-one {
  color:#B6BEC9
}

.license p {
  color:#687583
}

.purchase-box {
  border-color:#E0E5EC
}

.signal-panel,.panel {
  background:#FFFFFF
}

.signal-bar i {
  background:linear-gradient(90deg,#B5ABC9,#8396A2)
}

.portrait {
  background:#F4F5F7;
  color:#8F97A3
}

.photo-large {
  background:#F4F5F7
}

.photo-large .icon {
  color:#B4BCC6
}

.estimate {
  background:#F7F8FA;
  border:1px solid #E6EAF0
}

.estimate .value {
  color:#344153
}

.filter-panel {
  background:#F7F8FA
}

dialog,.dialog-head {
  background:#FFFFFF
}

.dialog-head {
  border-bottom-color:#E5E8ED
}

.preview-player {
  background:#26313F
}

.preview-player .playing-orb {
  background:radial-gradient(circle at 35% 30%,#E3E7ED,#A7B3BF 40%,#647384 67%,#394A5A);
  box-shadow:0 0 30px #C6CFDA18,inset -10px -10px 25px #19273944
}

.success-circle {
  background:#F1F5F3;
  box-shadow:0 0 0 12px #FAFBFA
}

.ranking-shelf {
  display:grid;
  grid-template-columns:repeat(2,minmax(0,1fr));
  gap:0 32px;
  border-top:1px solid var(--line)
}

.rank-tile {
  display:flex;
  gap:22px;
  align-items:center;
  padding:24px 0;
  border-bottom:1px solid var(--line);
  min-width:0
}

.rank-no {
  font:400 27px/1 Arial,sans-serif;
  color:#A2ABB8;
  min-width:31px
}

.rank-tile>div {
  min-width:0;
  flex:1
}

.rank-seller {
  font-size:10px;
  color:#788491
}

.rank-tile h3 {
  font-size:16px;
  font-weight:500;
  overflow:hidden;
  text-overflow:ellipsis;
  white-space:nowrap;
  margin:3px 0 8px
}

.rank-tile p {
  display:flex;
  gap:18px;
  justify-content:space-between;
  align-items:center;
  font-size:11px
}

.rank-price {
  color:#334052;
  font-family:Arial,sans-serif;
  font-size:13px
}

.rank-interest {
  color:#83909E;
  font-size:9px
}

.rank-interest strong {
  font-weight:400
}

.rank-tile:hover h3 {
  color:var(--violet)
}

.experience-summary {
  display:flex;
  gap:50px;
  justify-content:space-between;
  align-items:center;
  padding:35px 0;
  margin-top:61px;
  border-top:1px solid var(--line);
  border-bottom:1px solid var(--line)
}

.experience-summary h2 {
  font-size:25px;
  margin:8px 0
}

.experience-summary p {
  font-size:11px;
  color:#77828E
}

.experience-score>span {
  font-size:10px;
  color:#75818F
}

.experience-score>strong {
  display:block;
  font:500 34px/1.5 Arial,sans-serif;
  letter-spacing:-.03em
}

.experience-score .stars {
  font-size:11px;
  letter-spacing:1px;
  margin-right:7px
}

.experience-score p {
  font-size:9px
}

.experience-summary>.text-btn {
  align-self:end;
  font-size:11px
}

.trust-band {
  gap:32px
}

.trust-band h3 {
  font-size:14px
}

.trust-band p {
  font-size:11px;
  line-height:1.9
}

.reviews .service-review-count {
  font-weight:500;
  color:#4C596A
}

.bump {
  animation:countBump .65s var(--ease)
}

@media(max-width:1180px) {
  .hero h1 {
    font-size:43px
  }
  .stat {
    padding-left:22px;
    padding-right:22px
  }
  .stat:nth-child(2) {
    padding-left:22px
  }
  .stat strong {
    font-size:30px
  }
  .hero-proof {
    gap:12px;
    font-size:10px
  }
  .market-pulse>div {
    padding:0 17px
  }
  .card-price {
    font-size:16px
  }
}

@media(max-width:900px) {
  .hero h1 {
    font-size:36px
  }
  .hero-copy>p {
    font-size:12px
  }
  .hero-proof {
    font-size:9px;
    gap:9px
  }
  .hero-art {
    min-height:420px
  }
  .stat strong {
    font-size:27px
  }
  .stat small {
    font-size:8px;
    display:block
  }
  .stat span {
    font-size:9px
  }
  .market-pulse strong {
    font-size:18px
  }
  .card-info h3 {
    font-size:14px
  }
  .card-info .card-period {
    font-size:9px
  }
  .card-price {
    font-size:15px
  }
  .rank-tile {
    gap:14px
  }
  .rank-tile p {
    gap:8px
  }
  .rank-interest {
    font-size:8px
  }
  .experience-summary {
    gap:25px
  }
}

@media(max-width:680px) {
  .hero {
    min-height:0
  }
  .hero-copy {
    padding:38px 0 0
  }
  .hero h1 {
    font-size:38px
  }
  .hero-copy>p {
    font-size:12px
  }
  .hero-art {
    height:260px;
    min-height:260px;
    margin-top:12px
  }
  .float-note.one {
    top:61px;
    left:3%;
    padding:9px 12px
  }
  .float-note.two {
    right:2%;
    bottom:47px;
    padding:9px 12px
  }
  .float-note strong {
    font-size:12px
  }
  .art-caption {
    bottom:14px;
    right:4%;
    font-size:7px
  }
  .hero-proof {
    font-size:9px;
    gap:13px;
    margin-top:25px
  }
  .hero-proof .icon {
    width:11px;
    height:11px;
    margin-right:2px
  }
  .stats {
    grid-template-columns:repeat(2,minmax(0,1fr));
    gap:23px 0;
    padding:24px 0
  }
  .stat {
    padding-left:20px;
    padding-right:10px;
    border:0
  }
  .stat:nth-child(2),.stat:nth-child(4) {
    padding-left:20px;
    border-left:1px solid var(--line)
  }
  .stat:nth-child(3) {
    padding-left:0
  }
  .stat strong {
    font-size:30px
  }
  .stat span {
    font-size:10px
  }
  .stat small {
    font-size:8px;
    margin-top:1px
  }
  .section {
    padding-top:41px
  }
  .section-head h2 {
    font-size:24px
  }
  .section-head .text-btn {
    font-size:10px
  }
  .market-pulse {
    grid-template-columns:repeat(2,minmax(0,1fr));
    gap:14px 0;
    padding:15px 0
  }
  .market-pulse>div {
    padding:0 14px
  }
  .market-pulse>div:nth-child(3) {
    border:0
  }
  .market-pulse span {
    font-size:9px
  }
  .market-pulse strong {
    font-size:18px
  }
  .card-info h3 {
    font-size:13px
  }
  .card-info>p {
    font-size:9px
  }
  .card-info .card-period {
    font-size:8px
  }
  .card-price {
    font-size:14px
  }
  .card-price small {
    font-size:9px
  }
  .card-social {
    font-size:8px
  }
  .compare-toggle {
    font-size:9px
  }
  .card-info {
    padding-top:11px
  }
  .card-topline {
    font-size:8px
  }
  .card-topline span:last-child {
    font-size:7px
  }
  .ranking-shelf {
    grid-template-columns:1fr
  }
  .rank-tile {
    padding:19px 0
  }
  .rank-tile h3 {
    font-size:15px
  }
  .rank-tile p {
    font-size:11px
  }
  .rank-interest {
    font-size:9px
  }
  .experience-summary {
    display:grid;
    grid-template-columns:1fr auto;
    gap:21px 13px;
    margin-top:41px;
    padding:27px 0
  }
  .experience-summary>div:first-child {
    grid-column:1/-1
  }
  .experience-summary h2 {
    font-size:23px
  }
  .experience-score>strong {
    font-size:30px
  }
  .experience-summary>.text-btn {
    align-self:center
  }
  .experience-summary p {
    font-size:10px
  }
  .collection-card h3 {
    font-size:21px
  }
  .collection-card .orb {
    right:0
  }
  .trust-band h3 {
    font-size:13px
  }
  .buy-buttons .btn {
    font-size:11px
  }
  .header nav {
    background:#FFFFFF
  }
}

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

.dream-background {
  position:fixed;
  inset:0;
  overflow:hidden;
  pointer-events:none;
  z-index:0
}

.dream-bloom {
  position:absolute;
  width:700px;
  height:700px;
  border-radius:50%;
  filter:blur(65px);
  opacity:.20;
  animation:dreamDrift 26s ease-in-out infinite alternate;
  will-change:transform
}

.dream-bloom.one {
  top:-280px;
  right:-150px;
  background:radial-gradient(circle,#ECE9FA 0%,#F0EFFA 30%,transparent 68%)
}

.dream-bloom.two {
  top:40%;
  left:-400px;
  background:radial-gradient(circle,#EDF4FA 0%,#F0F7F8 35%,transparent 68%);
  animation-duration:30s;
  animation-delay:-12s
}

.dream-bloom.three {
  bottom:-370px;
  right:10%;
  background:radial-gradient(circle,#F7EDF2 0%,#EEF7F3 38%,transparent 68%);
  animation-duration:24s;
  animation-delay:-7s
}

@keyframes dreamDrift {
  from {
    transform:translate3d(-25px,-25px,0) scale(.98)
  }
  to {
    transform:translate3d(65px,55px,0) scale(1.08)
  }
}

#ambient {
  z-index:0;
  opacity:.13
}

.hero-art {
  isolation:isolate
}

.neural-canvas {
  opacity:.36;
  position:absolute;
  inset:0;
  z-index:1
}

.memory-halo {
  position:absolute;
  border-radius:50%;
  border:1px solid #D9DAE840;
  pointer-events:none;
  z-index:0;
  animation:haloFloat 24s ease-in-out infinite alternate
}

.memory-halo.one {
  width:370px;
  height:370px;
  top:42px;
  left:19%;
  background:radial-gradient(circle at 70% 35%,#EDEAF94D,transparent 64%);
  box-shadow:inset 0 0 50px #EDEAF31C
}

.memory-halo.two {
  width:315px;
  height:315px;
  top:99px;
  left:25%;
  border-color:#E1E6EB55;
  background:linear-gradient(130deg,#FFFFFF00,#F2F7F93A);
  animation-delay:-11s;
  animation-duration:29s
}

@keyframes haloFloat {
  from {
    transform:translate(-8px,-7px) rotate(-4deg)
  }
  to {
    transform:translate(9px,12px) rotate(6deg)
  }
}

.float-note {
  z-index:2;
  background:#FFFFFFC9;
  backdrop-filter:blur(14px);
  -webkit-backdrop-filter:blur(14px);
  border-color:#E6E9F1B3;
  box-shadow:0 8px 28px #17212E05
}

.market-pulse {
  background:#F7F8FACF;
  backdrop-filter:blur(10px)
}

.photo-frame {
  position:relative;
  width:100%;
  height:100%;
  overflow:hidden;
  background:#F4F5F7
}

.memory-photo {
  position:absolute;
  inset:0;
  width:100%;
  height:100%;
  object-fit:cover;
  display:block;
  opacity:0;
  transition:opacity .4s ease,transform .75s cubic-bezier(.2,.8,.2,1),filter .75s ease
}

.photo-loaded>.memory-photo {
  opacity:1
}

.photo-placeholder {
  position:absolute;
  inset:0;
  display:flex;
  align-items:center;
  justify-content:center;
  gap:11px;
  flex-direction:column;
  background:linear-gradient(145deg,#F7F8FA,#F0F2F5);
  color:#A8AFBA
}

.placeholder-symbol {
  width:34px;
  height:37px;
  fill:none;
  stroke:currentColor;
  stroke-width:1;
  opacity:.65
}

.photo-placeholder>span {
  font:400 8px/1.4 Arial,sans-serif;
  letter-spacing:.2em;
  color:#A3ABB8
}

.card-art {
  isolation:isolate;
  background:#F4F5F7;
  border-radius:10px
}

.card-art:after {
  content:'';
  position:absolute;
  inset:0;
  background:linear-gradient(180deg,#17212E10,transparent 32%,transparent 65%,#17212E30);
  pointer-events:none;
  z-index:1
}

.card-art>.photo-frame,.card-art>a>.photo-frame {
  position:absolute;
  inset:0
}

.card-art .art-tag,.card-art .card-save,.card-art .art-no,.card-art .card-quick {
  z-index:2
}

.memory-card:hover .memory-photo {
  transform:scale(1.045);
  filter:brightness(1.035)
}

.memory-card:hover {
  transform:translateY(-2px)
}

.card-art .art-tag {
  background:#FFFFFFD9;
  backdrop-filter:blur(9px);
  -webkit-backdrop-filter:blur(9px);
  color:#4E5968;
  border:1px solid #FFFFFF60;
  font-size:8px;
  letter-spacing:.08em;
  padding:4px 7px;
  border-radius:4px
}

.card-art .art-no {
  font-size:8px;
  color:#FFFFFFE6;
  letter-spacing:.08em;
  font-weight:500;
  text-shadow:0 1px 5px #17212E33
}

.card-save {
  background:#FFFFFFDE;
  backdrop-filter:blur(9px)
}

.card-quick {
  background:#FFFFFFDE;
  backdrop-filter:blur(9px);
  color:#3C4857
}

.card-info {
  background:#FFFFFFD9;
  padding-bottom:1px
}

.memory-card.reveal {
  transform:translateY(12px);
  transition:opacity .55s ease,transform .65s cubic-bezier(.2,.8,.2,1);
  transition-delay:var(--delay,0ms)
}

.memory-card.reveal.visible {
  transform:translateY(0)
}

.memory-card.reveal.visible:hover {
  transform:translateY(-2px);
  transition-delay:0ms
}

.memory-visual {
  min-width:0
}

.detail-art {
  aspect-ratio:1.25;
  min-height:0;
  position:relative;
  overflow:hidden;
  isolation:isolate
}

.memory-photo-open {
  position:absolute;
  inset:0;
  width:100%;
  height:100%;
  display:block
}

.memory-photo-open:focus-visible {
  outline-offset:-5px
}

.detail-art>.art-tag {
  position:absolute;
  z-index:2;
  background:#FFFFFFD9;
  backdrop-filter:blur(10px);
  color:#4E5968;
  border:1px solid #FFFFFF55
}

.detail-art .art-overlay {
  z-index:2;
  pointer-events:none;
  align-items:end;
  background:linear-gradient(transparent,#17212E20);
  padding:24px
}

.detail-art .art-overlay .btn {
  pointer-events:auto;
  background:#FFFFFFC9;
  color:#3D4A5A;
  border-color:#FFFFFF90;
  font-size:10px;
  backdrop-filter:blur(10px)
}

.photo-caption {
  font:400 8px Arial,sans-serif;
  letter-spacing:.18em;
  color:#FFFFFFD9;
  text-shadow:0 1px 6px #17212E44
}

.memory-gallery {
  display:flex;
  gap:9px;
  margin-top:10px
}

.gallery-thumbnail {
  position:relative;
  flex:1;
  max-width:110px;
  aspect-ratio:1.3;
  border:2px solid transparent;
  border-radius:5px;
  padding:2px;
  background:white;
  overflow:hidden;
  transition:border-color .25s
}

.gallery-thumbnail .photo-frame {
  border-radius:2px
}

.gallery-thumbnail.active {
  border-color:#9B90B7
}

.gallery-thumbnail:hover {
  border-color:#B6ABCA
}

.gallery-thumbnail .photo-placeholder>span {
  display:none
}

.gallery-thumbnail .placeholder-symbol {
  width:18px;
  height:20px
}

.preview-art {
  background:#F4F5F7;
  position:relative
}

.preview-art .photo-frame {
  position:absolute;
  inset:0
}

.search-item>div:first-child,.compare-table .compare-art {
  position:relative
}

.search-item>div:first-child .photo-frame {
  position:absolute;
  inset:0
}

.editorial-grid {
  grid-template-columns:repeat(3,minmax(0,1fr));
  gap:27px 24px
}

.collection-card.editorial-card {
  padding:0;
  min-height:0;
  background:#FFFFFF;
  border:1px solid #E7E9ED;
  overflow:hidden;
  border-radius:11px;
  display:block;
  color:#17212E
}

.editorial-card:before,.editorial-card:after {
  display:none
}

.editorial-image {
  height:195px;
  position:relative;
  overflow:hidden
}

.editorial-image .photo-frame {
  position:absolute;
  inset:0
}

.editorial-card:hover .memory-photo {
  transform:scale(1.04)
}

.editorial-copy {
  padding:23px 24px 21px
}

.editorial-copy .eyebrow {
  font-size:8px
}

.editorial-copy h3 {
  font-size:19px;
  margin:8px 0 9px;
  line-height:1.5;
  word-break:keep-all
}

.editorial-copy p {
  font-size:11px;
  line-height:1.9;
  min-height:39px;
  color:#7C8693
}

.editorial-link {
  display:flex;
  align-items:center;
  justify-content:space-between;
  font-size:10px;
  color:#788391;
  margin-top:20px
}

.editorial-link .icon {
  width:16px;
  height:16px
}

.editorial-hero {
  display:grid;
  grid-template-columns:1.2fr 1fr;
  min-height:360px;
  border:1px solid #E7E9EF;
  border-radius:12px;
  overflow:hidden;
  background:#FFFFFF
}

.editorial-hero>div:first-child {
  min-height:360px;
  position:relative
}

.editorial-hero>div:first-child .photo-frame {
  position:absolute;
  inset:0
}

.editorial-hero-copy {
  padding:48px;
  display:flex;
  flex-direction:column;
  justify-content:center
}

.editorial-hero-copy h1 {
  font-size:37px;
  line-height:1.5;
  margin:15px 0;
  word-break:keep-all
}

.editorial-hero-copy p {
  color:#7A8592;
  font-size:13px;
  line-height:1.9;
  margin-bottom:35px
}

.sell-layout {
  grid-template-columns:minmax(0,1.4fr) minmax(0,1fr);
  gap:75px;
  align-items:start
}

.sell-form {
  background:#FFFFFF;
  border:1px solid #E7EAEF;
  border-radius:12px;
  padding:30px
}

.sell-form .field label {
  font-size:12px;
  color:#455160
}

.sell-form .form-grid {
  gap:17px
}

.sell-form input,.sell-form select,.sell-form textarea {
  border-radius:7px;
  font-size:12px
}

.sell-form input::placeholder,.sell-form textarea::placeholder {
  color:#A1A9B3
}

.sell-form>div.field,.sell-form>.form-grid {
  margin-bottom:21px
}

.valuation-details {
  border-top:1px solid #E7EAEF;
  border-bottom:1px solid #E7EAEF;
  padding:15px 0;
  margin:26px 0
}

.valuation-details>summary {
  font-size:11px;
  color:#697588;
  cursor:pointer
}

.valuation-details .field {
  margin-top:20px
}

.valuation-details .estimate {
  margin:20px 0 7px;
  padding:21px
}

.valuation-details .estimate .value {
  font-size:26px;
  margin:5px 0 10px
}

.valuation-details .estimate p {
  font-size:10px;
  line-height:1.9
}

.upload-section {
  border-top:1px solid #E7EAEF;
  padding:25px 0 5px;
  margin-top:24px
}

.upload-heading {
  display:flex;
  align-items:center;
  justify-content:space-between;
  gap:15px;
  margin-bottom:15px
}

.upload-heading h3 {
  font-size:13px;
  color:#334150;
  letter-spacing:-.02em
}

.upload-heading h3 .muted {
  font-size:9px;
  margin-left:7px;
  font-weight:400
}

.upload-heading p {
  font-size:10px;
  color:#85909D;
  margin-top:6px;
  line-height:1.85
}

.required-mark {
  font-size:8px;
  font-weight:400;
  color:#8E819E;
  margin-left:6px
}

.main-upload-preview {
  margin-bottom:13px;
  max-width:350px
}

.upload-empty {
  height:155px;
  border:1px dashed #DCE1E8;
  background:#FAFBFC;
  border-radius:8px;
  display:flex;
  align-items:center;
  justify-content:center;
  flex-direction:column;
  gap:10px;
  color:#A3ACB8
}

.upload-empty .icon {
  width:23px;
  height:23px
}

.upload-empty span {
  font-size:10px
}

.upload-item {
  position:relative;
  border-radius:8px;
  overflow:hidden;
  aspect-ratio:1.45;
  min-width:0
}

.upload-item .photo-frame {
  position:absolute;
  inset:0
}

.upload-remove {
  position:absolute;
  right:7px;
  top:7px;
  z-index:2;
  width:26px;
  height:26px;
  background:#FFFFFFE6;
  color:#586371;
  backdrop-filter:blur(8px)
}

.upload-remove .icon {
  width:15px;
  height:15px
}

.upload-item>span {
  position:absolute;
  bottom:0;
  left:0;
  right:0;
  z-index:1;
  padding:6px 10px;
  background:linear-gradient(transparent,#17212E80);
  color:white;
  font-size:8px;
  white-space:nowrap;
  overflow:hidden;
  text-overflow:ellipsis
}

.additional-upload-preview {
  display:grid;
  grid-template-columns:repeat(2,minmax(0,1fr));
  gap:10px;
  margin-bottom:13px
}

.profile-upload-preview {
  margin-bottom:13px
}

.profile-upload-preview .upload-item {
  width:96px;
  height:96px;
  aspect-ratio:1
}

.profile-upload-preview .upload-item .photo-frame {
  border-radius:50%
}

.profile-upload-preview .upload-item>span {
  display:none
}

.profile-empty {
  display:flex;
  align-items:center;
  gap:14px;
  color:#99A3AF;
  font-size:10px;
  padding:7px 0
}

.profile-empty .icon {
  width:42px;
  height:42px;
  background:#F4F5F7;
  border-radius:50%;
  padding:10px
}

.photo-url-option {
  margin-top:13px;
  font-size:10px;
  color:#8994A2
}

.photo-url-option summary {
  cursor:pointer
}

.photo-url-row {
  display:flex;
  gap:8px;
  align-items:center;
  margin-top:11px
}

.photo-url-row input {
  padding:8px 12px;
  font-size:10px
}

.photo-url-row .btn {
  flex-shrink:0;
  font-size:10px
}

.image-rights-note {
  font-size:10px;
  line-height:1.9;
  color:#8A95A2;
  margin:24px 0 12px;
  padding:14px;
  background:#F7F8FA;
  border-radius:6px
}

.sell-preview-aside {
  position:sticky;
  top:117px;
  min-width:0
}

.live-card-panel {
  border:1px solid #E7EAEF;
  border-radius:12px;
  padding:26px;
  background:#FFFFFF
}

.live-card-panel>h3 {
  font-size:18px;
  margin:8px 0
}

.live-card-panel>p {
  font-size:10px;
  color:#87919F;
  line-height:1.9;
  margin-bottom:22px
}

.sell-preview-card .card-art {
  aspect-ratio:1.45
}

.sell-preview-card .card-info h3 {
  font-size:18px
}

.sell-preview-card .card-info>p {
  font-size:11px
}

.sell-preview-card .card-topline {
  font-size:9px
}

.sell-preview-card .card-price {
  font-size:21px
}

.preview-seller {
  display:flex;
  align-items:center;
  gap:11px;
  border-top:1px solid #E8EBF0;
  padding:20px 0;
  margin-top:22px
}

.preview-seller .portrait {
  height:37px;
  width:37px;
  display:flex;
  align-items:center;
  justify-content:center
}

.preview-seller strong {
  display:block;
  font-size:11px;
  color:#4A5766
}

.preview-seller span:not(.portrait) {
  display:block;
  font-size:8px;
  color:#8C96A3;
  margin-top:2px
}

.preview-verification-note {
  border-top:1px solid #E8EBF0;
  padding-top:16px;
  margin-top:18px!important;
  font-size:9px!important;
  margin-bottom:0!important
}

.live-card-panel>.text-btn {
  font-size:10px
}

.sell-steps {
  margin-top:27px
}

.submission-status {
  display:flex;
  align-items:center;
  gap:15px;
  color:#8A94A2;
  font-size:10px;
  margin:3px 0 24px
}

.submission-note {
  font-size:11px;
  line-height:1.9;
  color:#80909E;
  background:#F7F8FA;
  border:1px solid #E7EBF0;
  border-radius:7px;
  padding:18px;
  margin:24px 0
}

.submitted-detail {
  margin-bottom:45px
}

.submission-list-photo {
  width:90px;
  height:68px;
  flex-shrink:0;
  border-radius:6px;
  overflow:hidden;
  position:relative
}

.submission-list-content {
  flex:1;
  min-width:0
}

.submission-list {
  align-items:center;
  gap:20px
}

.submission-list h3 {
  overflow:hidden;
  text-overflow:ellipsis;
  white-space:nowrap
}

.photo-credits {
  margin-top:25px
}

.photo-credits>a {
  padding:12px 0;
  border-top:1px solid #E8EBF0;
  display:flex;
  justify-content:space-between;
  align-items:center;
  gap:20px;
  font-size:11px
}

.photo-credits small {
  font-size:9px;
  color:#929BA8;
  flex-shrink:0
}

#media-dialog {
  width:min(900px,calc(100vw - 40px));
  max-width:900px
}

.lightbox-photo {
  position:relative;
  aspect-ratio:1.45;
  max-height:65vh;
  background:#F4F5F7;
  border-radius:7px;
  overflow:hidden
}

.lightbox-photo .memory-photo {
  object-fit:contain;
  background:#F4F5F7
}

.lightbox-meta {
  display:flex;
  justify-content:space-between;
  align-items:center;
  font-size:9px;
  color:#929BA7;
  margin-top:15px
}

.lightbox-thumbnails {
  justify-content:center;
  margin:16px 0 0
}

.lightbox-thumbnails .gallery-thumbnail {
  height:62px;
  flex:none;
  width:80px
}

.submission-preview h2 {
  font-size:26px;
  margin:10px 0
}

.submission-preview>.small {
  margin-bottom:24px
}

.submission-preview .detail-art {
  aspect-ratio:1.5
}

.preview-description {
  font-size:12px!important;
  color:#70808D;
  line-height:1.95;
  margin:24px 0 15px!important
}

.preview-sale-price {
  font:500 23px Arial,sans-serif;
  color:#233043
}

.preview-player {
  isolation:isolate;
  overflow:hidden;
  position:relative;
  background:#25313F
}

.preview-player>.preview-memory-image {
  position:absolute;
  inset:0;
  z-index:-2;
  opacity:.4
}

.preview-player:after {
  content:'';
  position:absolute;
  inset:0;
  z-index:-1;
  background:linear-gradient(#17212E99,#17212ECD)
}

.preview-player>.preview-memory-image .memory-photo {
  filter:blur(1px);
  transform:scale(1.02)
}

.preview-player .playing-orb {
  display:none
}

.preview-player>h3 {
  margin-top:85px;
  position:relative
}

.paused .dream-bloom,.paused .memory-halo,.reduced-motion .dream-bloom,.reduced-motion .memory-halo {
  animation-play-state:paused
}

.low-motion .dream-bloom {
  animation-duration:30s
}

.paused .memory-photo,.reduced-motion .memory-photo {
  transition:none
}

@media(max-width:1180px) {
  .sell-layout {
    gap:35px
  }
  .sell-form {
    padding:25px
  }
  .live-card-panel {
    padding:22px
  }
  .editorial-image {
    height:175px
  }
  .editorial-copy {
    padding:21px
  }
  .editorial-copy h3 {
    font-size:17px
  }
  .editorial-hero-copy {
    padding:32px
  }
  .editorial-hero-copy h1 {
    font-size:31px
  }
  .memory-halo.one {
    left:13%;
    width:320px;
    height:320px
  }
  .memory-halo.two {
    left:18%;
    width:270px;
    height:270px
  }
}

@media(max-width:900px) {
  .sell-layout {
    gap:24px;
    grid-template-columns:minmax(0,1.15fr) minmax(0,1fr)
  }
  .sell-form {
    padding:21px
  }
  .live-card-panel {
    padding:19px
  }
  .live-card-panel>h3 {
    font-size:15px
  }
  .sell-preview-card .card-info h3 {
    font-size:16px
  }
  .editorial-grid {
    gap:20px 15px
  }
  .editorial-image {
    height:155px
  }
  .editorial-copy {
    padding:17px
  }
  .editorial-copy h3 {
    font-size:15px
  }
  .editorial-copy p {
    font-size:10px
  }
  .memory-halo.one {
    width:270px;
    height:270px;
    top:80px;
    left:8%
  }
  .memory-halo.two {
    width:235px;
    height:235px;
    top:120px;
    left:13%
  }
  .submission-list-photo {
    width:70px;
    height:60px
  }
  .submission-list {
    gap:12px
  }
  .editorial-hero-copy h1 {
    font-size:27px
  }
}

@media(max-width:680px) {
  .dream-bloom {
    width:460px;
    height:460px;
    filter:blur(45px);
    opacity:.14
  }
  .dream-bloom.one {
    right:-250px;
    top:-150px
  }
  .dream-bloom.two {
    left:-290px
  }
  .dream-bloom.three {
    right:-200px;
    bottom:-200px
  }
  .memory-halo.one {
    width:230px;
    height:230px;
    left:20%;
    top:17px
  }
  .memory-halo.two {
    width:190px;
    height:190px;
    left:25%;
    top:52px
  }
  .card-art .art-tag {
    font-size:6px;
    letter-spacing:.03em;
    padding:3px 5px;
    top:8px;
    left:8px
  }
  .card-art .art-no {
    font-size:6px;
    bottom:9px;
    left:9px;
    letter-spacing:.04em
  }
  .card-quick {
    font-size:8px
  }
  .detail-art .art-overlay {
    padding:17px
  }
  .detail-art .art-overlay .btn {
    font-size:9px;
    padding:6px 10px
  }
  .photo-caption {
    font-size:7px
  }
  .memory-gallery {
    gap:6px;
    margin-top:8px
  }
  .gallery-thumbnail {
    max-width:85px;
    padding:1px;
    border-width:1.5px
  }
  .editorial-grid {
    grid-template-columns:1fr;
    gap:18px
  }
  .editorial-image {
    height:198px
  }
  .editorial-copy {
    padding:20px 22px
  }
  .editorial-copy h3 {
    font-size:21px;
    margin:7px 0 8px
  }
  .editorial-copy p {
    font-size:11px;
    min-height:0
  }
  .editorial-link {
    margin-top:18px
  }
  .editorial-hero {
    grid-template-columns:1fr
  }
  .editorial-hero>div:first-child {
    min-height:225px
  }
  .editorial-hero-copy {
    padding:25px
  }
  .editorial-hero-copy h1 {
    font-size:29px;
    margin:12px 0
  }
  .editorial-hero-copy p {
    font-size:11px;
    margin-bottom:20px
  }
  .sell-layout {
    grid-template-columns:1fr;
    gap:27px
  }
  .sell-form {
    padding:22px 18px
  }
  .sell-preview-aside {
    position:static;
    order:-1
  }
  .live-card-panel {
    padding:22px
  }
  .live-card-panel>h3 {
    font-size:18px
  }
  .live-card-panel>p {
    font-size:10px
  }
  .sell-preview-card .card-info h3 {
    font-size:18px
  }
  .sell-preview-card .card-price {
    font-size:21px
  }
  .sell-preview-card .card-topline {
    font-size:10px
  }
  .sell-preview-card .card-info>p {
    font-size:11px
  }
  .live-card-panel .preview-verification-note {
    font-size:9px!important
  }
  .sell-preview-aside .sell-steps,.sell-preview-aside>.text-btn {
    display:none
  }
  .upload-heading p {
    font-size:10px
  }
  .upload-heading h3 {
    font-size:13px
  }
  .sell-form .form-grid {
    gap:12px
  }
  .sell-form .field label {
    font-size:11px
  }
  .sell-form input,.sell-form select,.sell-form textarea {
    font-size:11px
  }
  .upload-section {
    margin-top:21px;
    padding-top:21px
  }
  .main-upload-preview {
    max-width:none
  }
  .submission-status {
    gap:10px;
    font-size:8px;
    flex-wrap:wrap
  }
  .submission-list {
    flex-wrap:wrap
  }
  .submission-list-content {
    min-width:150px
  }
  .submission-list h3 {
    font-size:15px
  }
  .submission-list .btn {
    margin-left:auto
  }
  .photo-credits>a {
    align-items:start;
    flex-direction:column;
    gap:3px
  }
  .photo-credits small {
    font-size:8px
  }
  #media-dialog {
    width:calc(100vw - 26px)
  }
  #media-body {
    padding:18px
  }
  .lightbox-photo {
    aspect-ratio:1.12;
    max-height:55vh
  }
  .lightbox-thumbnails {
    gap:5px
  }
  .lightbox-thumbnails .gallery-thumbnail {
    width:calc((100% - 20px)/5);
    height:auto;
    aspect-ratio:1.3
  }
  .lightbox-meta {
    font-size:8px
  }
  .submission-preview h2 {
    font-size:23px
  }
  .submission-preview .detail-art {
    aspect-ratio:1.25
  }
}

@media(prefers-reduced-motion:reduce) {
  .dream-bloom,.memory-halo {
    animation:none;
    will-change:auto
  }
  .memory-photo {
    transition:none
  }
}

.file-button:has(input:disabled) {
  opacity:.55;
  cursor:wait
}


/* Memorix filming: denser discovery fold at 1920×1080, without changing 4-column grid. */
@media (min-width: 1200px) {
  #main:has(#results) .page-intro { padding: 24px 0 17px; }
  #main:has(#results) .page-intro h1 { margin: 5px 0 6px; font-size: 34px; line-height: 1.35; }
  #main:has(#results) .page-intro > p { line-height: 1.55; }
  #main:has(#results) .market-pulse { padding: 10px 0; margin-bottom: 13px; }
  #main:has(#results) .market-pulse span { margin-bottom: 1px; }
  #main:has(#results) .market-pulse strong { line-height: 1.3; }
  #main:has(#results) .search-filters { margin: 10px 0 12px; }
  #main:has(#results) .search-box input { padding: 10px 0; }
  #main:has(#results) .search-filters .btn { height: 41px; }
  #main:has(#results) .category-row { margin-bottom: 10px; }
  #main:has(#results) .result-bar { margin: 12px 0 12px; }
}
/* Card information should remain readable on a camera without competing with title/price. */
.card-info .card-seller {
  font-size: 12px;
  line-height: 1.55;
  font-weight: 560;
  color: #414d5a;
  margin-top: 5px;
}
.card-info .card-seller span { font-size: 11px; font-weight: 400; color: #687584; }
.card-info .card-period {
  font-size: 11px;
  line-height: 1.55;
  color: #576675;
  margin-top: 5px;
  white-space: normal;
  overflow: visible;
  overflow-wrap: anywhere;
}
.card-info .card-period span { color: #697684; font-weight: 500; margin-right: 5px; }
.card-info h3 { line-height: 1.4; font-weight: 600; }
.card-info .card-bottom { margin-top: 9px; padding-top: 8px; }
.card-art .art-no { font-family: 'Memorix Sans', sans-serif; font-size: 10px; letter-spacing: 0; font-weight: 600; text-shadow: 0 1px 5px #0009; }
@media (max-width: 900px) {
  .card-info .card-seller { font-size: 11px; }
  .card-info .card-seller span { font-size: 10px; }
  .card-info .card-period { font-size: 10px; }
}
