:root{--ink:#1a1a1a;--muted:#555;--bg:#fbfaf7;--accent:#6b5b4a;--ink-length:1000;--draw-duration:1s;--draw-visible:.55s;--fill-duration:2s;--fill-gap:.1s;--tagline-gap:50ms}*{box-sizing:border-box}html,body{height:100%;margin:0}body{background:var(--bg);color:var(--ink);-webkit-font-smoothing:antialiased;text-rendering:optimizelegibility;font-family:Cormorant Garamond,Georgia,serif}.stage{text-align:center;flex-direction:column;justify-content:center;align-items:center;gap:1.5rem;min-height:100%;padding:2rem;display:flex}.title{width:min(680px,90vw);height:auto;overflow:visible}.title-text{fill:var(--ink);stroke:var(--ink);stroke-width:1px;stroke-dasharray:var(--ink-length);stroke-dashoffset:var(--ink-length);fill-opacity:0;animation:draw var(--draw-duration) ease forwards, fill var(--fill-duration) ease forwards;animation-delay:0s, calc(var(--draw-visible) + var(--fill-gap));font-family:Great Vibes,cursive;font-size:132px}@keyframes draw{to{stroke-dashoffset:0}}@keyframes fill{to{fill-opacity:1}}.tagline{opacity:0;max-width:42rem}.tagline.show{animation:1s forwards fadeUp}.tagline p{color:var(--muted);letter-spacing:.01em;margin:.35rem 0;font-size:clamp(1.1rem,1rem + .8vw,1.5rem)}.tagline a{color:var(--accent);border-bottom:1px solid #6b5b4a66;text-decoration:none;transition:border-color .2s}.tagline a:hover{border-color:var(--accent)}@keyframes fadeUp{0%{opacity:0;transform:translateY(8px)}to{opacity:1;transform:translateY(0)}}@media (prefers-reduced-motion:reduce){.title-text{stroke-dashoffset:0;fill-opacity:1;animation:none}.tagline{opacity:1;animation:none}}
