/* hallmark: custom atmospheric; 用户指定 IAMNK 的沉浸空间与鼠标交互。 */
/* critique: 首屏以个人身份为核心，背景为空间视觉，实际内容保持可读。 */
.portal-home {
  --world-bg: #09090d;
  --world-fg: #f8f3ed;
  --world-muted: #bdb3ad;
  --world-accent: #ff835c;
  --world-gold: #ffc881;
  --world-line: rgba(255, 223, 196, .24);
  --world-glass: rgba(25, 20, 22, .64);
  --world-glow: rgba(226, 76, 44, .22);
}
.portal-home .nav { background: rgba(9, 9, 13, .89); border-color: var(--world-line); }
.portal-home .nav-logo, .portal-home .nav-links a:hover, .portal-home .nav-icons a:hover { color: var(--world-fg); }
.portal-home .nav-logo-sub, .portal-home .nav-links a, .portal-home .nav-icons a, .portal-home #lang-toggle { color: var(--world-muted); }
.portal-home .hero-stage { position: relative; isolation: isolate; overflow: hidden; background: radial-gradient(ellipse at 50% 70%, var(--world-glow), transparent 58%), var(--world-bg); color: var(--world-fg); }
.portal-home .world-scene { position: absolute; inset: 0; width: 100%; height: 100%; pointer-events: none; z-index: 0; }
.portal-home .hero-stage > .wrap { position: relative; z-index: 2; }
.portal-home .hero-stage .pointer-trail { z-index: 1; }
.portal-home .hero { min-height: max(650px, calc(100svh - 64px)); padding: 86px 0 110px; display: flex; flex-direction: column; justify-content: center; position: relative; }
.portal-home .hero-grid { display: block; text-align: center; }
.portal-home .hero-content { max-width: 780px; margin: auto; }
.portal-home .world-intro { color: var(--world-gold); font-size: clamp(.9rem, 1.4vw, 1.08rem); }
.portal-home .hero-title { margin: 12px 0 8px; font-size: clamp(5rem, 13vw, 11rem); line-height: .92; letter-spacing: -.065em; font-weight: 700; overflow-wrap: break-word; color: var(--world-fg); text-shadow: 0 5px 60px var(--world-glow); }
.portal-home .world-title-mark { color: var(--world-accent); }
.portal-home .world-statement { font-size: clamp(1.15rem, 2.5vw, 1.8rem); font-weight: 500; color: var(--world-fg); }
.portal-home .hero-summary { max-width: 610px; margin: 18px auto 0; color: var(--world-muted); opacity: 1; }
.portal-home .hero-cta { justify-content: center; margin: 34px auto 0; gap: 12px; }
.portal-home .world-action { min-width: 132px; padding: 13px 24px; border: 1px solid var(--world-line); border-radius: 999px; background: var(--world-glass); color: var(--world-fg); backdrop-filter: blur(16px); transition: transform .25s ease, border-color .25s ease, background .25s ease; }
.portal-home .world-action:hover { transform: translateY(-4px); border-color: var(--world-gold); }
.portal-home .world-action-primary { background: var(--world-accent); border-color: var(--world-accent); color: var(--world-bg); }
.portal-home .world-hint { position: absolute; bottom: 30px; left: 50%; transform: translateX(-50%); color: var(--world-muted); font-size: .75rem; white-space: nowrap; opacity: 0; }
.portal-home .world-ready .world-hint { opacity: .8; }
.portal-home .world-action:focus-visible, .portal-home .nav a:focus-visible, .portal-home .nav button:focus-visible { outline: 2px solid var(--world-gold); outline-offset: 4px; }
.portal-home #services .service-item, .portal-home #projects .service-item { transition: transform .25s ease, border-color .25s ease; }
.portal-home #services .service-item:hover, .portal-home #projects .service-item:hover { transform: translateY(-5px); border-color: var(--world-accent); }
@media (max-width: 820px) {
  .portal-home .hero { min-height: max(610px, calc(100svh - 64px)); padding: 72px 0 100px; }
  .portal-home .hero-title { font-size: clamp(4.8rem, 16vw, 8rem); }
}
@media (max-width: 560px) {
  .portal-home .hero { min-height: max(570px, calc(100svh - 64px)); }
  .portal-home .hero-title { font-size: clamp(4.5rem, 19vw, 6.8rem); }
  .portal-home .world-statement { font-size: 1.15rem; }
  .portal-home .hero-summary { font-size: .9rem; }
  .portal-home .hero-cta { gap: 8px; }
  .portal-home .world-action { min-width: 0; padding: 11px 17px; font-size: .85rem; }
}
@media (hover: none), (prefers-reduced-motion: reduce) { .portal-home .world-ready .world-hint { display: none; } }
@media (prefers-reduced-motion: reduce) { .portal-home .world-action, .portal-home #services .service-item, .portal-home #projects .service-item { transition: none; } }
