.vph .wrap{max-width:1080px}.vph .hero{text-align:center;justify-content:center;align-items:center;height:100svh;min-height:620px;padding:0;display:flex;overflow:hidden}.vph .hero-bg{z-index:0;position:absolute;inset:0}.vph .hero-bg img{object-fit:cover;will-change:transform;width:100%;height:100%;animation:24s ease-in-out infinite alternate kenburns;position:absolute;inset:0;transform:scale(1.12)}.vph .hero-img-m{display:none}@keyframes kenburns{0%{transform:scale(1.12)translate(0)}to{transform:scale(1.22)translate(-2%,-2%)}}.vph .hero-bg:after{content:"";background:radial-gradient(at 50% 60%,#0000 0%,#06060c8c 70%,#06060cf2 100%),linear-gradient(#06060c80 0%,#0000 30% 55%,#06060cf5 100%);position:absolute;inset:0}.vph .hero-inner{z-index:3;opacity:0;padding:0 24px;animation:1.4s cubic-bezier(.2,.7,.2,1) .2s forwards heroIn;position:relative;transform:translateY(24px)}@keyframes heroIn{to{opacity:1;transform:none}}.vph .hero h1{letter-spacing:-.02em;text-shadow:0 2px 40px #0009;opacity:1;font-family:DM Serif Display,serif;font-size:clamp(54px,9vw,108px);font-style:italic;font-weight:400;line-height:1;animation:none;transform:none}.vph .hero h1 .a{color:var(--vp-accent);text-shadow:0 0 50px var(--vp-accent-glow);margin-top:6px;display:block}.vph .hero-sub{color:var(--vp-light);opacity:.86;max-width:540px;margin:34px auto 0;font-size:clamp(16px,1.9vw,20px);font-style:italic;line-height:1.6}.vph .hero-sub .sig{color:var(--vp-accent);margin-top:12px;font-style:italic;display:block}.vph .scroll{z-index:3;letter-spacing:.5em;text-transform:uppercase;color:var(--vp-muted);opacity:0;font-size:10px;animation:1.2s 1s forwards heroIn;position:absolute;bottom:30px;left:50%;transform:translate(-50%)}.vph .scroll:after{content:"";background:linear-gradient(var(--vp-accent),transparent);width:1px;height:38px;margin:12px auto 0;animation:2.2s ease-in-out infinite pulse;display:block}@keyframes pulse{0%,to{opacity:.3;transform:scaleY(.7)}50%{opacity:1;transform:scaleY(1)}}.vph section{padding:clamp(90px,13vw,160px) 0}.vph .chars{gap:clamp(40px,7vw,90px);margin-top:64px;display:grid}.vph .char{grid-template-columns:300px 1fr;align-items:center;gap:48px;display:grid}.vph .char.rev{grid-template-columns:1fr 300px}.vph .char.rev .photo{order:2}.vph .char.rev .ct{text-align:right;order:1}.vph .photo{aspect-ratio:3/4;box-shadow:0 30px 80px #0000008c,0 0 50px var(--vp-accent-soft);border-radius:3px;position:relative;overflow:hidden}.vph .photo img{object-fit:cover;width:100%;height:100%;transition:transform 1.1s cubic-bezier(.2,.7,.2,1);display:block}.vph .photo:hover img{transform:scale(1.07)}.vph .photo:after{content:"";background:linear-gradient(160deg,#0000 50%,#06060c73);position:absolute;inset:0}.vph .char.cold .photo{box-shadow:0 30px 80px #0009,0 0 50px #3a0d1a80}.vph .cname{color:var(--vp-accent);letter-spacing:-.01em;font-family:DM Serif Display,serif;font-size:clamp(34px,4vw,46px);font-style:italic}.vph .crole{letter-spacing:.4em;text-transform:uppercase;color:var(--vp-muted);margin:10px 0 18px;font-size:10px;font-weight:700}.vph .cdesc{max-width:30ch;font-size:clamp(17px,1.7vw,20px);font-style:italic;line-height:1.6}.vph .char.rev .cdesc{margin-left:auto}.vph .cdesc .sig{margin-top:10px;display:block}.vph .music{text-align:center}.vph .music h2{letter-spacing:-.02em;margin:40px 0;font-family:DM Serif Display,serif;font-size:clamp(38px,6vw,66px);font-style:italic;font-weight:400;line-height:1.08}.vph .music h2 .a{color:var(--vp-accent)}.vph .music-body{text-align:left;max-width:520px;margin:0 auto}.vph .music-body p{margin-bottom:22px;font-size:clamp(17px,1.7vw,19px);line-height:1.8}.vph .music-body .sig{margin-left:6px}.vph .btn{background:var(--vp-accent);color:var(--vp-bg);letter-spacing:.32em;text-transform:uppercase;border-radius:3px;margin-top:46px;padding:19px 44px;font-size:12px;font-weight:700;text-decoration:none;transition:transform .25s,box-shadow .35s,background .25s;display:inline-block;position:relative;overflow:hidden}.vph .btn:hover{background:var(--vp-accent-deep);box-shadow:0 0 50px var(--vp-accent-glow);transform:translateY(-2px)}.vph .btn:before{content:"";background:linear-gradient(100deg,#0000,#ffffff59,#0000);width:60%;height:100%;transition:left .7s;position:absolute;top:0;left:-120%;transform:skew(-18deg)}.vph .btn:hover:before{left:140%}.vph .interlude{text-align:center;border-top:1px solid var(--vp-accent-soft);border-bottom:1px solid var(--vp-accent-soft)}.vph .interlude img{opacity:.75;width:48px;height:48px;margin-bottom:34px}.vph .iq{max-width:18ch;margin:0 auto;font-family:DM Serif Display,serif;font-size:clamp(28px,4.2vw,46px);font-style:italic;line-height:1.3}.vph .iq .sig{margin-top:24px;font-family:DM Sans,sans-serif;font-size:.5em;display:block}.vph .jcards{gap:26px;margin-top:60px;display:grid}.vph .jcard{color:inherit;background:var(--vp-bg-card);border-left:2px solid var(--vp-accent);border-radius:0 3px 3px 0;align-items:center;gap:30px;padding:26px 32px;text-decoration:none;transition:transform .35s,background .35s,box-shadow .35s;display:flex;overflow:hidden}.vph .jcard:hover{background:#1a1018;transform:translate(6px);box-shadow:0 20px 50px #0006}.vph .jthumb{border-radius:3px;flex:0 0 150px;width:150px;height:150px;overflow:hidden}.vph .jthumb img{object-fit:cover;width:100%;height:100%;transition:transform 1s;display:block}.vph .jcard:hover .jthumb img{transform:scale(1.08)}.vph .jmeta{letter-spacing:.32em;text-transform:uppercase;color:var(--vp-muted);margin-bottom:12px;font-size:10px;font-weight:700}.vph .jmeta span{color:var(--vp-accent)}.vph .jtitle{margin-bottom:12px;font-family:DM Serif Display,serif;font-size:clamp(22px,2.6vw,30px);font-style:italic;line-height:1.15}.vph .jsnip{color:var(--vp-muted);margin-bottom:16px;font-size:16px;font-style:italic;line-height:1.6}.vph .jlink{letter-spacing:.4em;text-transform:uppercase;color:var(--vp-accent);font-size:11px;font-weight:700}.vph .jlink:after{content:" →";transition:margin-left .25s}.vph .jcard:hover .jlink:after{margin-left:6px}.vph .invite{text-align:center}.vph .invite-what{max-width:30ch;margin:28px auto 0;font-size:clamp(18px,2vw,21px);font-style:italic;line-height:1.65}.vph .invite-text{color:var(--vp-muted);max-width:34ch;margin:22px auto 0;font-size:18px;font-style:italic}.vph .closing{color:var(--vp-muted);margin-top:40px;font-size:16px;font-style:italic}.vph .closing .sig{margin-top:6px;display:block}.vph .foot{text-align:center;margin-top:80px;padding-bottom:80px}.vph .foot img{opacity:.5;width:40px;height:40px}.vph .music-note{border-left:1px solid var(--vp-accent);color:var(--vp-muted);letter-spacing:.01em;margin:14px 0;padding:3px 0 3px 18px;font-size:13.5px;font-style:italic;line-height:1.8}.vph .music-note .em,.vph .music-note .sig{color:var(--vp-accent)}.vph .vfoot{text-align:center;margin-top:70px;padding-bottom:74px}.vph .vfoot>img{opacity:.5;width:40px;height:40px;margin-bottom:30px}.vph .listen{justify-content:center;align-items:center;gap:18px;margin-bottom:26px;display:flex}.vph .listen-label{letter-spacing:.4em;text-transform:uppercase;color:var(--vp-muted);font-size:10px;font-weight:700}.vph .social{flex-wrap:wrap;justify-content:center;align-items:center;gap:24px;margin-bottom:30px;display:flex}.vph .ico{color:var(--vp-muted);transition:color .25s,transform .25s;display:inline-flex}.vph .ico:hover{color:var(--vp-accent);transform:translateY(-2px)}.vph .ico svg{fill:currentColor;width:22px;height:22px;display:block}.vph .listen .ico svg{width:25px;height:25px}.vph .foot-note{color:var(--vp-muted);font-size:13px;font-style:italic;line-height:1.6}.vph .foot-note a{color:var(--vp-accent);text-decoration:none}.vph .foot-note a:hover{text-decoration:underline}@media (max-width:760px){.vph .hero{align-items:flex-end;height:70svh;min-height:440px;max-height:540px}.vph .hero-inner{padding-bottom:8vh}.vph .hero-img-d{display:none}.vph .hero-img-m{display:block}.vph .hero-bg img{object-position:top center;animation:none;transform:none}.vph .scroll{display:none}.vph .hero-bg:after{background:linear-gradient(#06060c4d 0%,#0000 20% 38%,#06060cdb 76%,#06060c 100%)}.vph .char,.vph .char.rev{grid-template-columns:1fr;gap:24px;max-width:380px;margin:0 auto}.vph .char.rev .ct,.vph .char.rev .cdesc{text-align:center;margin:0 auto}.vph .char .ct{text-align:center}.vph .char .cdesc{margin:0 auto}.vph .photo{max-width:300px;margin:0 auto}.vph .jcard{text-align:center;flex-direction:column}.vph .jthumb{flex-basis:auto;width:100%;height:200px}}
