/* v58: original artwork; restrained motion and clearer type. */
/* Original base palette and contours are inherited from index.html. */
#opening .far { display:none; } /* Avoid a second drifting outline over distant peaks. */
#opening .land-layer.mid { --flow-duration:190s; }
#opening .land-layer.front { --land-height:60svh; --flow-duration:170s; }
#opening h1 { font-size:clamp(56px,6.1vw,84px); letter-spacing:.14em; text-indent:.14em; }
#opening .classic { color:#8a7042; letter-spacing:.32em; }
#opening .slogan { color:#365549; letter-spacing:.12em; line-height:1.6; margin-top:18px; }
#opening .intro { color:#4e665b; font-size:13px; letter-spacing:.035em; margin-top:8px; }
#opening .actions { text-shadow:none; }
#opening .actions { gap:16px; }
#opening .primary,#opening .secondary {
  display:inline-flex; align-items:center; justify-content:center;
  min-height:46px; padding:12px 24px; border:1px solid #507a64;
  border-radius:999px; font:500 13px/1.5 -apple-system,'PingFang SC',sans-serif;
  letter-spacing:.06em; text-decoration:none; white-space:nowrap;
  transition:background .25s,transform .25s,box-shadow .25s;
}
#opening .primary { background:#3e6b56; color:#faf8ee; box-shadow:0 5px 14px #365c4814; opacity:1; cursor:default; }
#opening .secondary { background:#e8eee2b8; color:#345d48; box-shadow:none; }
#opening .secondary:hover { background:#dbe8db; transform:translateY(-2px); }
#opening .secondary:active { transform:translateY(0); }
#opening .secondary:focus-visible { outline:2px solid #365c48; outline-offset:4px; }
@media (min-width:721px) and (max-aspect-ratio:1.28) {
  #opening .land-layer.front { --land-height:58svh; }
}
@media(max-width:720px) {
  #opening .land-layer.mid { --flow-duration:210s; }
  #opening .land-layer.front { --land-height:56svh; --flow-duration:200s; }
  #opening h1 { font-size:clamp(48px,14.5vw,64px); }
  #opening .slogan { font-size:15px; letter-spacing:.08em; }
  #opening .intro { max-width:310px; font-size:12px; line-height:1.85; }

  #opening .actions { flex-direction:row; gap:10px; flex-wrap:wrap; }
  #opening .primary,#opening .secondary { min-height:44px; padding:10px 15px; font-size:12px; }
}
@media(prefers-reduced-motion:reduce) {
  #opening .secondary { transition:none; }
}
