.store-page { background:#080a0c; color:#f5f1e8; }
.family-return {
  display:flex; align-items:center; justify-content:space-between; gap:1rem;
  min-height:34px; padding:.35rem clamp(1rem,3vw,3rem);
  background:#050607; border-bottom:1px solid rgba(214,171,79,.22);
  color:#9e9a92; font-size:.67rem; letter-spacing:.06em;
}
.family-return a { color:var(--gold); text-decoration:none; font-weight:700; }
.family-return a:hover { color:#fff; }
.store-header { top:0; }
.store-hero {
  display:grid; grid-template-columns:minmax(0,1.45fr) minmax(260px,.55fr); gap:3rem;
  align-items:end; padding:clamp(2.2rem,5vw,5rem) clamp(1.3rem,5vw,5.2rem);
  background:radial-gradient(circle at 80% 15%,rgba(214,171,79,.08),transparent 26%),#080a0c;
  border-bottom:1px solid var(--line);
}
.store-hero h1 { margin:0; max-width:850px; font-family:var(--serif); font-size:clamp(2rem,3.4vw,4.1rem); font-weight:400; line-height:.98; letter-spacing:-.045em; }
.store-hero p:not(.section-kicker) { max-width:760px; margin:1rem 0 0; color:#bcb8b0; font-size:.92rem; }
.store-hero-note { padding:1.1rem 1.2rem; border:1px solid rgba(214,171,79,.28); background:#0d1014; }
.store-hero-note strong,.store-hero-note span { display:block; }
.store-hero-note strong { color:var(--gold); font-family:var(--serif); font-size:1.05rem; }
.store-hero-note span { margin-top:.45rem; color:#aaa; font-size:.76rem; line-height:1.5; }
.store-section { padding:clamp(2rem,4vw,4rem) clamp(1.3rem,5vw,5.2rem); }
.store-section-heading { display:grid; grid-template-columns:1fr .7fr; gap:2rem; align-items:end; margin-bottom:1.25rem; }
.store-section-heading h2,.order-process h2,.order-section h2 { margin:0; font-family:var(--serif); font-weight:400; font-size:clamp(1.55rem,2vw,2.25rem); line-height:1; }
.store-section-heading > p { margin:0; color:#8f8b84; font-size:.78rem; max-width:520px; }
.store-tools { display:flex; align-items:center; justify-content:space-between; gap:1rem; margin:1rem 0 .5rem; }
.store-filters { display:flex; flex-wrap:wrap; gap:.45rem; margin:0; }
.catalog-search { margin-left:auto; min-width:min(280px,100%); }
.catalog-search input { width:100%; padding:.52rem .7rem; border:1px solid rgba(255,255,255,.18); background:#0d1014; color:#f1eee8; font:inherit; font-size:.72rem; }
.catalog-search input:focus { outline:2px solid var(--aqua); outline-offset:1px; }
.catalog-count { margin:.45rem 0 1.15rem; color:#777d84; font-size:.64rem; letter-spacing:.04em; }
.filter-button { padding:.48rem .78rem; border:1px solid rgba(255,255,255,.18); background:#0d1014; color:#c9c6bf; font:inherit; font-size:.72rem; cursor:pointer; }
.filter-button:hover,.filter-button.active { color:#080a0c; background:var(--gold); border-color:var(--gold); }
.store-grid { display:grid; grid-template-columns:repeat(auto-fill,minmax(190px,1fr)); gap:12px; background:transparent; border:0; }
.product-card { display:flex; flex-direction:column; min-width:0; background:#0b0e11; border:1px solid var(--line); }
.product-image { height:190px; overflow:hidden; background:#090b0e; display:flex; align-items:center; justify-content:center; }
.product-image img { width:100%; height:100%; object-fit:contain; transition:transform .25s ease; }
.product-card:hover .product-image img { transform:scale(1.025); }
.product-info { display:flex; flex:1; flex-direction:column; padding:.65rem; }
.product-kicker { color:var(--orange); font-size:.58rem; font-weight:700; letter-spacing:.13em; text-transform:uppercase; }
.product-info h3 { margin:.32rem 0 .24rem; font-family:var(--serif); font-size:.88rem; font-weight:400; line-height:1.1; }
.product-artist { color:#aaa; font-size:.69rem; }
.product-meta { min-height:2.2em; margin:.6rem 0; color:#8f8f8f; font-size:.66rem; line-height:1.45; }
.product-price { margin-top:auto; padding-top:.55rem; color:#f4f0e8; font-size:.78rem; font-weight:700; }
.product-status { display:inline-block; margin-left:.35rem; color:var(--aqua); font-size:.6rem; font-weight:700; letter-spacing:.08em; text-transform:uppercase; }
.product-actions { display:flex; gap:.4rem; margin-top:.72rem; }
.product-actions button { flex:1; min-height:30px; padding:.45rem .55rem; border:1px solid rgba(255,255,255,.22); background:transparent; color:#f1eee8; font:inherit; font-size:.67rem; font-weight:700; cursor:pointer; }
.product-actions button:hover { border-color:var(--gold); color:var(--gold); }
.product-actions .request-button { color:#080a0c; background:var(--aqua); border-color:var(--aqua); }
.product-actions .request-button:hover { background:#fff; color:#080a0c; border-color:#fff; }
.store-empty { padding:2rem; border:1px solid var(--line); color:#9b978f; text-align:center; }
.order-process { display:grid; grid-template-columns:.7fr 1.3fr; gap:3rem; padding:clamp(2rem,4vw,4rem) clamp(1.3rem,5vw,5.2rem); border-top:1px solid var(--line); border-bottom:1px solid var(--line); background:#090c10; }
.order-steps { display:grid; grid-template-columns:repeat(4,1fr); gap:1px; background:var(--line); border:1px solid var(--line); }
.order-steps article { min-height:135px; padding:.85rem; background:#0d1014; }
.order-steps span { color:var(--gold); font-family:var(--serif); font-size:.76rem; }
.order-steps strong { display:block; margin:.55rem 0 .35rem; font-family:var(--serif); font-size:.92rem; font-weight:400; }
.order-steps p { margin:0; color:#92969b; font-size:.66rem; line-height:1.45; }
.order-section { display:grid; grid-template-columns:.72fr 1.28fr; gap:clamp(2rem,5vw,5rem); padding:clamp(2.3rem,5vw,5rem) clamp(1.3rem,5vw,5.2rem); }
.order-copy > p:not(.section-kicker) { color:#aaa69e; font-size:.84rem; line-height:1.55; }
.payment-note { margin-top:1.25rem; padding:1rem; background:#0d1014; border:1px solid rgba(214,171,79,.24); }
.payment-note strong { color:var(--gold); font-family:var(--serif); }
.payment-note p { margin:.45rem 0 0; color:#9f9b94; font-size:.72rem; line-height:1.5; }
.payment-buttons { display:flex; flex-wrap:wrap; gap:.45rem; margin-top:.75rem; }
.payment-buttons a,.payment-buttons span { padding:.45rem .65rem; border:1px solid rgba(255,255,255,.18); color:#ddd; font-size:.66rem; text-decoration:none; }
.order-form { display:grid; gap:.8rem; padding:1.2rem; background:#0d1014; border:1px solid var(--line); }
.form-row { display:grid; grid-template-columns:1fr 1fr; gap:.8rem; }
.order-form label { display:grid; gap:.35rem; color:#a7a39b; font-size:.68rem; font-weight:700; letter-spacing:.04em; }
.order-form input,.order-form select,.order-form textarea { width:100%; padding:.68rem .72rem; border:1px solid rgba(255,255,255,.18); background:#080a0c; color:#f5f1e8; font:inherit; font-size:.78rem; border-radius:0; }
.order-form textarea { resize:vertical; }
.order-form input:focus,.order-form select:focus,.order-form textarea:focus { outline:2px solid var(--aqua); outline-offset:1px; }
.consent-line { grid-template-columns:auto 1fr !important; align-items:start; gap:.6rem !important; font-weight:400 !important; line-height:1.45; }
.consent-line input { width:auto; margin-top:.18rem; }
.form-help { margin:0; color:#85817a; font-size:.64rem; }
.order-summary { padding:.8rem; background:#080a0c; border:1px solid rgba(38,214,200,.25); color:#bbb; font-size:.7rem; white-space:pre-wrap; }
@media (max-width:1050px) { .store-grid{grid-template-columns:repeat(auto-fill,minmax(180px,1fr))} .order-steps{grid-template-columns:repeat(2,1fr)} }
@media (max-width:820px) {
  .family-return span{display:none}
  .store-tools{align-items:stretch;flex-direction:column}
  .catalog-search{margin-left:0;min-width:0;width:100%}
  .store-hero,.store-section-heading,.order-process,.order-section{grid-template-columns:1fr}
  .store-grid{grid-template-columns:repeat(2,minmax(0,1fr))}
  .store-hero{gap:1.5rem}
  .order-process{gap:1.5rem}
}
@media (max-width:560px) {
  .store-grid,.order-steps,.form-row{grid-template-columns:1fr}
  .store-hero h1{font-size:2rem}
  .product-info{padding:.75rem}
}
