@import url(lay2-common.css?v=1);
.lay-pivoine{--c1:#1C2F5C;--c2:#9B2C3A;--c3:#C9A24B;--c4:#FFFDFB;--ink:#2C2F45;--serif:"Cormorant Garamond",Georgia,serif;--script:"Parisienne","Brush Script MT",cursive;
  --bg:var(--c4);--fg:var(--ink);--acc:var(--c2);--acc-ink:#fff;--ln:color-mix(in srgb,var(--c1) 22%,transparent);--r:10px;--r2:10px;--lf:#5F8068}
.lay-pivoine{font-family:"Jost",system-ui,sans-serif}
.lay-pivoine .bl-a{fill:var(--c2)}
.lay-pivoine .bl-b{fill:color-mix(in srgb,var(--c2) 78%,#fff)}
.lay-pivoine .bl-c{fill:color-mix(in srgb,var(--c2) 80%,#000)}
.lay-pivoine .bl-d{fill:var(--c3)}
.lay-pivoine .fl-leaf{fill:var(--lf);opacity:.9}
.lay-pivoine .fl-berry{fill:var(--c1)}
.lay-pivoine .floral{position:absolute;pointer-events:none}
.lay-pivoine .gate{background:radial-gradient(80% 50% at 50% 30%,color-mix(in srgb,var(--c1) 85%,#fff 8%),var(--c1));flex-direction:column;gap:0;overflow:hidden;color:#fff}
.lay-pivoine .pv-env{position:absolute;inset:0;pointer-events:none}
.lay-pivoine .pv-flap{position:absolute;left:0;right:0;top:0;height:46%;background:linear-gradient(color-mix(in srgb,var(--c1) 80%,#000),var(--c1));clip-path:polygon(0 0,100% 0,50% 100%);box-shadow:0 8px 30px rgba(0,0,0,.4)}
.lay-pivoine .gate>*{position:relative;z-index:2}
.lay-pivoine .gate .pv-env{position:absolute;z-index:0}
.lay-pivoine .pv-gs{font-size:11px;letter-spacing:.32em;text-transform:uppercase;color:var(--c3);margin-bottom:6px;text-align:center;padding:0 24px;margin-top:-30px}
.lay-pivoine .pv-gfl{position:relative;width:min(90vw,380px);margin:6px auto -74px}
.lay-pivoine .pv-seal{position:relative;z-index:3;width:92px;height:92px;border-radius:50%;border:0;cursor:pointer;background:radial-gradient(circle at 34% 30%,#F4DE9A,#C9A24B 55%,#8B6A25);box-shadow:0 10px 26px rgba(0,0,0,.55),inset 0 0 0 5px rgba(255,255,255,.18);color:var(--c1);font-family:var(--serif);font-weight:600;font-size:26px;animation:pvpulse 2.4s ease-in-out infinite}
.lay-pivoine .pv-seal span{display:block;line-height:92px}
@keyframes pvpulse{50%{transform:scale(1.07)}}
.lay-pivoine .pv-gn{font-family:var(--script);font-size:clamp(40px,12vw,56px);line-height:1.1;margin-top:26px;text-align:center}
.lay-pivoine .pv-gf{font-size:15px;margin-top:6px}
.lay-pivoine .pv-gh{font-size:11px;letter-spacing:.24em;text-transform:uppercase;opacity:.75;margin-top:18px}
.lay-pivoine .gate{transition:opacity .9s ease .5s}
.lay-pivoine .gate.is-open{opacity:0}
.lay-pivoine .gate.is-open .pv-seal{transform:scale(1.5);animation:none}

.lay-pivoine .pv-hero{position:relative;overflow:hidden;background:var(--c4);text-align:center}
.lay-pivoine .pv-photo{height:min(70svh,500px);background:var(--cover) center/cover,linear-gradient(var(--c1),var(--c2));-webkit-mask-image:linear-gradient(#000 62%,transparent);mask-image:linear-gradient(#000 62%,transparent)}
.lay-pivoine .pv-fl1{width:270px;top:-16px;left:-56px;transform:rotate(-8deg)}
.lay-pivoine .pv-hin{max-width:520px;margin:-90px auto 0;padding:0 22px 52px;position:relative}
.lay-pivoine .pv-verse{font-family:var(--serif);font-style:italic;font-size:clamp(17px,4.6vw,20px);line-height:1.5;opacity:.85}
.lay-pivoine .pv-tag{margin-top:20px;font-size:12px;letter-spacing:.3em;text-transform:uppercase;color:var(--c3);font-weight:600}
.lay-pivoine .pv-names{font-family:var(--script);font-weight:400;font-size:clamp(52px,16vw,78px);line-height:1.15;color:var(--c2);margin:10px 0 12px;display:flex;flex-direction:column}
.lay-pivoine .pv-names em{font-style:normal;color:var(--c3);font-size:.6em;line-height:1}
.lay-pivoine .pv-intro{font-family:var(--serif);font-size:18px;line-height:1.6}
.lay-pivoine .pv-outro{margin-top:12px;font-family:var(--serif);font-size:18px;line-height:1.6;font-style:italic}
.lay-pivoine .pv-msg{margin-top:20px;font-size:16px;line-height:1.8;opacity:.9}
.lay-pivoine .pv-navy{position:relative;overflow:hidden;background:linear-gradient(var(--c1),color-mix(in srgb,var(--c1) 85%,#000));color:#fff;padding:60px 20px 56px;text-align:center;clip-path:polygon(0 18px,8% 4px,20% 14px,34% 3px,50% 12px,66% 2px,80% 14px,92% 4px,100% 16px,100% calc(100% - 14px),90% calc(100% - 4px),74% calc(100% - 14px),58% calc(100% - 3px),40% calc(100% - 13px),24% calc(100% - 3px),10% calc(100% - 12px),0 calc(100% - 4px))}
.lay-pivoine .pv-fl2{width:190px;right:-44px;bottom:-34px;opacity:.95}
.lay-pivoine .pv-fl3{width:250px;left:50%;bottom:-48px;margin-left:-125px;opacity:.95}
.lay-pivoine .pv-sd{font-family:var(--script);font-weight:400;font-size:clamp(40px,12vw,54px);color:var(--c3);margin-bottom:18px;position:relative;line-height:1.15}
.lay-pivoine .pv-calw{position:relative;max-width:320px;margin:0 auto;border:1px solid color-mix(in srgb,#fff 35%,transparent);border-radius:14px;padding:6px 6px 14px}
.lay-pivoine .pv-calw .cal-m{background:var(--c2);color:#fff;text-transform:uppercase;letter-spacing:.2em;font-size:15px;font-family:"Jost",sans-serif;padding:8px 0;margin-bottom:10px;border-radius:4px}
.lay-pivoine .pv-calw .cal-g{color:#fff}
.lay-pivoine .pv-calw .cal-g .on em{background:var(--c2);color:#fff}
.lay-pivoine .pv-light{max-width:560px;margin:0 auto;padding:44px 22px;text-align:center}
.lay-pivoine .pv-wide{max-width:760px}
.lay-pivoine .pv-cd{max-width:420px;margin:0 auto;gap:6px}
.lay-pivoine .pv-cd b{font-family:var(--serif);font-weight:600;font-size:clamp(34px,10vw,48px);color:var(--c1);letter-spacing:.02em}
.lay-pivoine .pv-cd span{font-size:9px;letter-spacing:.14em;text-transform:uppercase;opacity:.7}
.lay-pivoine .pv-place{margin-bottom:30px}
.lay-pivoine .pv-place h3{font-family:var(--serif);font-size:clamp(22px,6vw,27px);color:var(--c2);font-weight:600;line-height:1.3}
.lay-pivoine .pv-place h3 small{display:block;font-family:"Jost",sans-serif;font-size:13px;letter-spacing:.2em;text-transform:uppercase;color:var(--c1);margin-top:4px;font-weight:500}
.lay-pivoine .pv-place p{margin:8px 0 12px;font-size:15px;line-height:1.6}
.lay-pivoine .pv-btn{display:inline-flex;align-items:center;gap:8px;background:var(--c1);color:#fff;border-radius:10px;padding:12px 24px;font-size:13px;letter-spacing:.06em;text-decoration:none;font-weight:500}
.lay-pivoine .pv-btn:hover{background:var(--c2)}
.lay-pivoine .pv-h{font-family:var(--script);font-weight:400;font-size:clamp(38px,11vw,50px);color:var(--c2);margin-bottom:14px;line-height:1.15}
.lay-pivoine .pv-rs{padding-bottom:110px}
.lay-pivoine .pv-dl{position:relative;font-size:13px;opacity:.85;margin-bottom:12px}
.lay-pivoine .pv-card{position:relative;z-index:2;background:#fff;color:var(--ink);border-radius:16px;padding:22px 18px;text-align:left;max-width:460px;margin:0 auto}
.lay-pivoine .pv-pass{background:#fff;border:1px solid var(--ln);border-radius:16px;padding:20px 16px;text-align:left}
.lay-pivoine .pi-name{color:var(--c2)}
.lay-pivoine .pv-gal figure{border-radius:16px;overflow:hidden}
.lay-pivoine .pv-end{text-align:center;padding:36px 22px 30px;font-family:var(--script);font-size:clamp(30px,8.5vw,40px);color:var(--c2);line-height:1.3}
.lay-pivoine .pv-end .foot{font-family:"Jost",sans-serif;font-size:14px;color:var(--ink)}
.lay-pivoine .mus{--acc:var(--c2);--acc-ink:#fff}
