:root{
  --bg:#07111f;
  --bg2:#0b1730;
  --panel:#101d35;
  --panel2:#132544;
  --blue:#65a9ff;
  --blue2:#a8ccff;
  --yellow:#ffd45f;
  --red:#f26b68;
  --text:#f8fbff;
  --muted:#b9c7db;
  --line:#263d62;
  --max:1180px;
}
*{box-sizing:border-box}
html{scroll-behavior:smooth}
body{
  margin:0;font-family:Arial,Helvetica,sans-serif;color:var(--text);
  background:
    radial-gradient(circle at 12% 0%,rgba(101,169,255,.10),transparent 27%),
    radial-gradient(circle at 88% 15%,rgba(255,212,95,.06),transparent 25%),
    linear-gradient(180deg,#07111f,#091527 52%,#050b15);
}
button,input,select{font:inherit}
button{cursor:pointer}
.container{width:min(var(--max),calc(100% - 32px));margin:auto}

.topbar{
  position:sticky;top:0;z-index:50;background:rgba(5,12,24,.90);
  border-bottom:1px solid rgba(101,169,255,.15);backdrop-filter:blur(16px)
}
.nav{min-height:76px;display:flex;align-items:center;gap:24px}
.brand{display:flex;align-items:center;gap:10px;text-decoration:none;color:#fff;white-space:nowrap}
.brand strong{display:block;font-size:14px;letter-spacing:.7px}
.brand small{display:block;color:#8ea3bf;font-size:11px;margin-top:2px}
.brand-mark{
  width:42px;height:42px;border-radius:50%;display:grid;place-items:center;
  border:1px solid rgba(101,169,255,.42);
  background:radial-gradient(circle,rgba(101,169,255,.14),rgba(255,212,95,.04));
  color:var(--yellow)
}
.search{display:flex;flex:1;max-width:650px;margin-left:auto}
.search input{
  width:100%;border:1px solid #304c72;border-right:0;background:#f8fbff;color:#111;
  padding:13px 15px;border-radius:10px 0 0 10px;outline:none
}
.search button{
  border:0;border-radius:0 10px 10px 0;padding:0 22px;font-weight:900;
  color:#07111f;background:linear-gradient(135deg,var(--yellow),#ffe89a)
}

.hero{
  min-height:570px;position:relative;overflow:hidden;display:flex;align-items:center;
  border-bottom:1px solid rgba(101,169,255,.12);
  background:
    radial-gradient(circle at 73% 26%,rgba(101,169,255,.16),transparent 28%),
    radial-gradient(circle at 18% 76%,rgba(242,107,104,.07),transparent 24%),
    linear-gradient(135deg,#08162b,#0b1830 55%,#101f3f)
}
.hero::after{
  content:"";position:absolute;left:0;right:0;bottom:0;height:120px;
  background:linear-gradient(180deg,transparent,rgba(5,11,21,.92))
}
.spark{position:absolute;color:#fff7cf;opacity:.38;animation:twinkle 3s ease-in-out infinite}
.s1{left:8%;top:20%}.s2{left:48%;top:17%;animation-delay:.8s}.s3{right:11%;top:27%;animation-delay:1.6s}
@keyframes twinkle{0%,100%{opacity:.18;transform:scale(.85)}50%{opacity:.85;transform:scale(1.2)}}

.hero-inner{position:relative;z-index:3;display:grid;grid-template-columns:1.08fr .92fr;align-items:center;gap:55px;padding:92px 0 112px}
.eyebrow{font-size:12px;font-weight:900;letter-spacing:2px;color:var(--yellow)}
.hero h1{
  font-family:Georgia,"Times New Roman",serif;font-size:clamp(48px,6vw,76px);
  line-height:1;letter-spacing:-1.5px;max-width:760px;margin:13px 0 20px
}
.hero p{color:var(--muted);font-size:18px;line-height:1.65;max-width:690px}
.hero-actions{display:flex;gap:12px;flex-wrap:wrap;margin-top:26px}
.btn{display:inline-block;padding:14px 20px;border-radius:10px;text-decoration:none;font-weight:900;transition:.2s}
.primary{background:linear-gradient(135deg,var(--yellow),#ffe89a);color:#07111f}
.secondary{border:1px solid rgba(101,169,255,.38);background:rgba(11,26,52,.60);color:#eef6ff}
.btn:hover{transform:translateY(-2px)}
.hero-tags{display:flex;gap:8px;flex-wrap:wrap;margin-top:22px}
.hero-tags span{font-size:12px;color:#c9d8ee;border:1px solid rgba(101,169,255,.18);background:rgba(7,19,38,.55);padding:7px 10px;border-radius:999px}

.hero-art{
  min-height:360px;position:relative;overflow:hidden;border-radius:28px;
  border:1px solid rgba(255,212,95,.18);
  background:radial-gradient(circle at 50% 42%,rgba(255,232,154,.09),transparent 32%),
             linear-gradient(180deg,#10264b,#08152b);
  box-shadow:0 30px 80px rgba(0,0,0,.35)
}
.lamp-head{
  position:absolute;width:72px;height:52px;border-radius:50% 50% 22% 22%;
  background:#dbeaff;left:50%;top:70px;transform:translateX(-50%) rotate(-8deg);
  box-shadow:0 0 35px rgba(219,234,255,.16)
}
.lamp-arm{
  position:absolute;width:10px;background:#aac5e8;border-radius:6px;left:50%;transform-origin:top
}
.arm1{height:92px;top:117px;transform:translateX(-50%) rotate(27deg)}
.arm2{height:85px;top:187px;transform:translateX(9px) rotate(-29deg)}
.lamp-base{
  position:absolute;width:120px;height:18px;border-radius:50%;background:#91afd3;
  left:50%;bottom:69px;transform:translateX(-50%)
}
.light-cone{
  position:absolute;left:50%;top:104px;width:245px;height:235px;transform:translateX(-50%);
  background:linear-gradient(180deg,rgba(255,237,173,.12),transparent);
  clip-path:polygon(37% 0,63% 0,100% 100%,0 100%)
}
.hero-note{position:absolute;left:0;right:0;bottom:24px;text-align:center;color:#e6d79d;font-family:Georgia,"Times New Roman",serif;font-size:18px}

.spotlights{padding:24px 0 8px}
.spot-grid{display:grid;grid-template-columns:1fr 1fr;gap:14px}
.spot-card{border-radius:20px;padding:28px;border:1px solid rgba(255,255,255,.08);position:relative;overflow:hidden}
.spot-card.blue{background:linear-gradient(135deg,#10294e,#0c182d)}
.spot-card.red{background:linear-gradient(135deg,#3a171c,#161725)}
.spot-card h2{font-family:Georgia,"Times New Roman",serif;font-size:30px;margin:7px 0 8px}
.spot-card p{color:var(--muted);line-height:1.6;margin:0 0 18px}
.spot-card button{border:1px solid rgba(255,255,255,.13);border-radius:9px;padding:11px 14px;font-weight:900;background:rgba(255,255,255,.06);color:#fff}

.section{padding:50px 0}
.section-head{display:flex;align-items:end;justify-content:space-between;gap:20px;margin-bottom:22px}
.section-head h2{font-family:Georgia,"Times New Roman",serif;font-size:32px;margin:6px 0 0}
.reset-btn,.sort-select{border:1px solid rgba(101,169,255,.20);background:#0d1d36;color:#eef6ff;border-radius:9px;padding:10px 13px}
.chips{display:flex;gap:9px;flex-wrap:wrap}
.chip{
  border:1px solid rgba(101,169,255,.18);background:rgba(12,27,53,.80);color:#eef6ff;
  padding:11px 15px;border-radius:999px;transition:.2s
}
.chip:hover,.chip.active{
  color:#07111f;background:linear-gradient(135deg,var(--yellow),#ffe89a);
  border-color:transparent
}

.category-grid{display:grid;grid-template-columns:repeat(3,1fr);gap:12px}
.category{
  min-height:120px;text-align:left;border:1px solid rgba(101,169,255,.15);
  background:linear-gradient(180deg,rgba(16,34,64,.85),rgba(7,18,35,.97));
  color:#fff;border-radius:16px;padding:19px;transition:.2s
}
.category:hover,.category.active{transform:translateY(-3px);border-color:rgba(255,212,95,.44);box-shadow:0 16px 40px rgba(0,0,0,.20)}
.category span{display:block;color:var(--yellow);font-size:20px;margin-bottom:11px}
.category b,.category small{display:block}
.category b{font-size:17px;margin-bottom:6px}
.category small{color:var(--muted);font-size:13px;line-height:1.4}

.memory-banner{
  border-top:1px solid rgba(101,169,255,.10);border-bottom:1px solid rgba(255,212,95,.10);
  background:radial-gradient(circle at 20% 50%,rgba(101,169,255,.08),transparent 25%),
             radial-gradient(circle at 88% 20%,rgba(255,212,95,.07),transparent 23%),
             linear-gradient(90deg,#0a172c,#101c36,#0a1629)
}
.memory-inner{display:flex;align-items:center;justify-content:space-between;gap:30px;padding:44px 0}
.memory-inner h2{font-family:Georgia,"Times New Roman",serif;font-size:34px;margin:7px 0 8px}
.memory-inner p{margin:0;color:var(--muted);line-height:1.6}
.memory-actions{display:flex;gap:10px;flex-wrap:wrap}
.memory-actions button{border:1px solid rgba(255,212,95,.30);border-radius:9px;padding:12px 15px;font-weight:900;background:#17233c;color:#fff}

.product-grid{display:grid;grid-template-columns:repeat(4,1fr);gap:16px}
.product-card{
  overflow:hidden;border-radius:16px;border:1px solid rgba(101,169,255,.13);
  background:linear-gradient(180deg,rgba(15,31,59,.94),rgba(7,17,33,.99));transition:.2s
}
.product-card:hover{transform:translateY(-4px);border-color:rgba(255,212,95,.34);box-shadow:0 18px 45px rgba(0,0,0,.25)}
.product-image{aspect-ratio:1/1;display:flex;align-items:center;justify-content:center;overflow:hidden;background:#f6f9ff}
.product-image img{width:100%;height:100%;object-fit:contain}
.placeholder{color:#6f7f97;text-align:center;font-weight:900;font-size:13px;line-height:1.55;padding:20px}
.product-info{padding:15px}
.tag{font-size:11px;color:var(--yellow);font-weight:900;text-transform:uppercase}
.product-info h3{font-size:16px;line-height:1.35;margin:8px 0 10px;min-height:43px}
.store{font-size:13px;color:var(--muted);margin-bottom:14px}
.offer{display:block;text-decoration:none;text-align:center;padding:12px;border-radius:9px;font-weight:900;background:linear-gradient(135deg,var(--yellow),#ffe89a);color:#07111f}
.result-count{color:var(--muted);font-size:14px}
.empty{padding:50px;text-align:center;border:1px dashed rgba(101,169,255,.20);border-radius:15px;color:var(--muted)}

.notice{background:#060c17;border-top:1px solid rgba(101,169,255,.1);border-bottom:1px solid rgba(101,169,255,.1)}
.notice-inner{display:grid;grid-template-columns:.8fr 1.2fr;gap:40px;padding-top:42px;padding-bottom:42px}
.notice h2{font-family:Georgia,"Times New Roman",serif;margin:7px 0 0}
.notice p{margin:0;color:var(--muted);line-height:1.65}
footer{padding:38px 0 46px}
.footer-brand{margin-bottom:15px}
.footer-inner p{max-width:900px;color:var(--muted);font-size:13px;line-height:1.6}

@media(max-width:900px){
  .hero-inner{grid-template-columns:1fr}
  .hero-art{display:none}
}
@media(max-width:800px){
  .container{width:min(100% - 20px,var(--max))}
  .nav{min-height:64px;gap:10px;flex-wrap:wrap;padding:9px 0}
  .brand strong{font-size:13px}.brand-mark{width:36px;height:36px}
  .search{order:2;flex-basis:100%;max-width:none}
  .search input{padding:11px}.search button{padding:0 14px}
  .hero{min-height:430px}.hero-inner{padding:56px 0 76px}
  .hero h1{font-size:42px;letter-spacing:-1px}.hero p{font-size:15px}
  .spot-grid{grid-template-columns:1fr}
  .spot-card{padding:22px}.spot-card h2{font-size:26px}
  .section{padding:36px 0}
  .section-head{align-items:flex-start}.section-head h2{font-size:25px}
  .sort-select,.reset-btn{font-size:12px;padding:9px 10px}
  .chips{gap:7px}.chip{font-size:13px;padding:9px 12px}
  .category-grid{grid-template-columns:repeat(2,1fr);gap:9px}
  .category{min-height:108px;padding:14px}.category b{font-size:15px}.category small{font-size:12px}
  .memory-inner{align-items:flex-start;flex-direction:column;padding:36px 0}
  .memory-inner h2{font-size:27px}
  .product-grid{grid-template-columns:repeat(2,1fr);gap:9px}
  .product-info{padding:11px}.product-info h3{font-size:14px;min-height:57px}
  .offer{padding:11px 7px;font-size:13px}
  .notice-inner{grid-template-columns:1fr;gap:18px}
}
