From 329ec34881be1ff7b5632cdbd712a0850c85f784 Mon Sep 17 00:00:00 2001
From: Ariver <shanghai3168@gmail.com>
Date: Sat, 06 Jun 2026 18:28:23 +0800
Subject: [PATCH] Restore hero stack visual: full design crop with 3D perspective

---
 docs/index-en.html                |   23 ++++++-----
 docs/styles.css                   |   32 ++++++++++++---
 docs/assets/hero-visual-stack.jpg |    0 
 docs/index.html                   |   23 ++++++-----
 4 files changed, 51 insertions(+), 27 deletions(-)

diff --git a/docs/assets/hero-visual-stack.jpg b/docs/assets/hero-visual-stack.jpg
new file mode 100644
index 0000000..4fd0ef5
--- /dev/null
+++ b/docs/assets/hero-visual-stack.jpg
Binary files differ
diff --git a/docs/index-en.html b/docs/index-en.html
index 64ecff2..112082b 100644
--- a/docs/index-en.html
+++ b/docs/index-en.html
@@ -5,7 +5,7 @@
   <meta name="viewport" content="width=device-width, initial-scale=1">
   <title>TagLauncher — Tag-based Mac app launcher</title>
   <meta name="description" content="TagLauncher organizes Mac apps with tags: scrollable grid, multi-tag apps, searchable notes, JSON layout backup—beyond Launchpad folders and pages.">
-  <meta property="og:image" content="https://shanghai3168.github.io/taglauncher/assets/hero-visual.jpg">
+  <meta property="og:image" content="https://shanghai3168.github.io/taglauncher/assets/hero-visual-stack.jpg">
   <link rel="stylesheet" href="styles.css">
   <link rel="alternate" hreflang="en" href="index-en.html">
   <link rel="alternate" hreflang="zh-Hans" href="index.html">
@@ -37,15 +37,18 @@
         <p class="hero__lead">Don't mourn Launchpad on macOS 26 Tahoe. It was never truly good—it was only barely usable.</p>
       </div>
 
-      <figure class="hero__visual">
-        <img
-          src="assets/hero-visual.jpg"
-          alt="TagLauncher App Grid with colorful tags"
-          width="553"
-          height="619"
-          fetchpriority="high"
-          decoding="async">
-      </figure>
+      <div class="hero__visual" aria-hidden="true">
+        <div class="hero__stack-stage">
+          <img
+            class="hero__stack-img"
+            src="assets/hero-visual-stack.jpg"
+            alt=""
+            width="634"
+            height="687"
+            fetchpriority="high"
+            decoding="async">
+        </div>
+      </div>
     </div>
   </section>
 
diff --git a/docs/index.html b/docs/index.html
index 6807fc5..088c383 100644
--- a/docs/index.html
+++ b/docs/index.html
@@ -5,7 +5,7 @@
   <meta name="viewport" content="width=device-width, initial-scale=1">
   <title>TagLauncher — 标签化 Mac 应用启动器</title>
   <meta name="description" content="在全球,这可能是Mac最好用的应用启动台。不用怀念 macOS 26 Tahoe 上消失的 Launchpad,TagLauncher 用标签管理 Mac 应用。">
-  <meta property="og:image" content="https://shanghai3168.github.io/taglauncher/assets/hero-visual.jpg">
+  <meta property="og:image" content="https://shanghai3168.github.io/taglauncher/assets/hero-visual-stack.jpg">
   <link rel="stylesheet" href="styles.css">
   <link rel="alternate" hreflang="en" href="index-en.html">
   <link rel="alternate" hreflang="zh-Hans" href="index.html">
@@ -37,15 +37,18 @@
         <p class="hero__lead">不用怀念 macOS 26 Tahoe 上消失的 Launchpad(启动台),因为他从来都没真的好用过,他从来就勉强可以用</p>
       </div>
 
-      <figure class="hero__visual">
-        <img
-          src="assets/hero-visual.jpg"
-          alt="TagLauncher 应用网格界面:彩色标签分类与可滚动应用图标"
-          width="553"
-          height="619"
-          fetchpriority="high"
-          decoding="async">
-      </figure>
+      <div class="hero__visual" aria-hidden="true">
+        <div class="hero__stack-stage">
+          <img
+            class="hero__stack-img"
+            src="assets/hero-visual-stack.jpg"
+            alt=""
+            width="634"
+            height="687"
+            fetchpriority="high"
+            decoding="async">
+        </div>
+      </div>
     </div>
   </section>
 
diff --git a/docs/styles.css b/docs/styles.css
index a0b71ce..a41b525 100644
--- a/docs/styles.css
+++ b/docs/styles.css
@@ -192,16 +192,30 @@
 }
 
 .hero__visual {
-  margin: 0;
-  line-height: 0;
+  position: relative;
+  min-height: 420px;
+  display: flex;
+  align-items: center;
+  justify-content: flex-end;
 }
 
-.hero__visual img {
+.hero__stack-stage {
+  position: relative;
+  width: 100%;
+  max-width: 620px;
+  margin-left: auto;
+  padding: 12px 0 28px;
+  perspective: 1600px;
+  perspective-origin: 35% 45%;
+}
+
+.hero__stack-img {
   display: block;
   width: 100%;
-  max-width: 560px;
   height: auto;
-  margin-left: auto;
+  transform: rotateY(-11deg) rotateX(4deg) translateZ(0);
+  transform-origin: 40% 50%;
+  filter: drop-shadow(0 28px 48px rgba(30, 45, 90, 0.14));
 }
 
 /* Main content */
@@ -371,9 +385,13 @@
     gap: 32px;
   }
 
-  .hero__visual img {
-    margin-left: 0;
+  .hero__stack-stage {
     max-width: 100%;
+    margin-left: 0;
+  }
+
+  .hero__stack-img {
+    transform: rotateY(-7deg) rotateX(3deg);
   }
 }
 

--
Gitblit v1.9.3