/* Home composition only. Sizes, spacing and materials inherit the original site. */
.home-template .new-copy { text-align: left; min-width: 0; }
.hero-title-layout { --title-size: clamp(44px,5vw,72px); position: relative; margin: 28px 0 24px; }
.home-template .new-copy h1 { display: flex; flex-direction: column; gap: 0; margin: 0; font-size: var(--title-size); line-height: 1.28; letter-spacing: .015em; color: var(--text); background: none; text-wrap: nowrap; }
.home-template .title-first { display: block; }
.home-template .title-second { display: block; margin-left: 1.26em; color: #c5cccf; }
.home-template .new-copy .hero-note { position: absolute; display: block; max-width: none; margin: 0; color: var(--text-sub); font-size: 11px; line-height: 1.65; letter-spacing: 0; }
.hero-note-mirror { left: calc(var(--title-size) * 4.18 + 10px); top: calc(var(--title-size) * .14); width: 76px; }
.home-template .new-copy .hero-note-space { left: 0; top: calc(var(--title-size) * 1.52); width: calc(var(--title-size) * 1.2); font-size: 10px; }
.hero-note-space > span { white-space: nowrap; }

/* The initial action is a single glass button. The result card appears after casting. */
.home-template .new-art:not(.is-hex) .hex-panel { border: 0; background: none; box-shadow: none; backdrop-filter: none; -webkit-backdrop-filter: none; }
.home-template .hex-panel .hex-dock { background: none; }

.home-template .feature-copy { text-align: center; }
.home-template .feature-copy h3::before { content: ''; display: inline-block; width: 4px; height: 4px; margin: 0 12px 4px 0; background: var(--gold); }
.home-template .role-mini .rm-name { margin-top: 0; }

/* Preserve the reference's left introduction and single right-hand glass panel. */
.home-template .faq-section { grid-template-columns: minmax(0,1fr) minmax(0,1.4fr); align-items: center; padding: 0; background: none; border: 0; border-radius: 0; box-shadow: none; backdrop-filter: none; -webkit-backdrop-filter: none; }
.home-template .faq-intro h2 { line-height: 1.55; }
.home-template .faq-list { padding: 16px 26px; border-radius: 20px; }

@media (max-width: 1050px) {
  .hero-title-layout { --title-size: 56px; }
  .hero-note-mirror { left: calc(var(--title-size) * 4.12 + 8px); width: 64px; }
  .home-template .new-copy .hero-note-mirror { font-size: 10px; }
}
@media (max-width: 860px) {
  .home-template .new-copy { width: min(100%,500px); justify-self: center; }
  .hero-title-layout { --title-size: 48px; }
  .home-template .new-copy .hero-note-space { position: static; width: auto; margin-top: 18px; font-size: 12px; }
  .hero-note-space br { display: none; }
  .home-template .faq-section { grid-template-columns: minmax(0,1fr); gap: 28px; }
  .home-template .faq-intro h2 br { display: none; }
  .home-template .faq-list { padding: 8px 22px; }
}
@media (max-width: 560px) {
  .hero-title-layout { --title-size: 40px; }
  .home-template .new-copy .hero-note { font-size: 10px; }
}
