/* A restrained common photo treatment: no hue shift or heavy saturation. */
.portrait-open img,.story-photo img,.gallery img,.portrait-dialog .profile-grid>img,#large-photo{filter:contrast(1.045) saturate(1.035) brightness(.995)}
.portrait-open:after{box-shadow:inset 0 -22px 30px #0e060e30,inset 0 0 16px #10070d12}
/* Chapter rules maintain the existing centered, uniform type scale. */
body .numbered-title{display:flex;align-items:center;justify-content:center;gap:16px}
body .numbered-title:before,body .numbered-title:after{content:'';display:block;position:static;flex:0 1 62px;width:62px;height:1px;background:linear-gradient(90deg,transparent,#a9415b);pointer-events:none}
body .numbered-title:after{transform:rotate(180deg)}
/* Fine corner engraving on individual pricing cards. */
.plan-ornaments{position:absolute;inset:12px;pointer-events:none;z-index:0}
.plan-ornaments:before,.plan-ornaments:after{content:'';position:absolute;width:27px;height:27px;background:url('../img/thorn-corner.svg') center/contain no-repeat;opacity:.75}
.plan-ornaments:before{left:0;top:0}.plan-ornaments:after{right:0;bottom:0;transform:rotate(180deg)}
.plan{padding:34px 34px 30px;background:radial-gradient(ellipse at 100% 0%,#4e16283b,transparent 65%),#191017}
.plan .plan-index{display:block;font-size:10px;letter-spacing:.22em;margin:0 48px 27px 0;color:#d48d9c}
.plan h3{font-size:25px;font-weight:500;margin:0 0 22px;padding-bottom:16px;line-height:1.7;border-bottom:1px solid #7e304650}
.plan .price{font-size:clamp(44px,4.4vw,58px);line-height:1.3;margin:16px 0 20px;font-weight:500;font-variant-numeric:lining-nums tabular-nums;color:#f35d76;letter-spacing:.015em}
.plan .price span{font-size:14px;letter-spacing:.05em;margin-left:12px;color:#d8b5bf}
.plan>p:not(.price){font-size:13px;line-height:1.9;color:#d1afb9}
.plan .plan-foot{margin-top:30px;padding-top:20px;font-size:12px;line-height:1.9}
#system>.invitation-detail{position:relative;border:1px solid #994058;border-radius:22px;padding:32px 34px;margin:0 0 32px;background:radial-gradient(ellipse at 100% 0%,#4e16283b,transparent 65%),#191017;box-shadow:0 5px 0 #390c1d}
#system .invitation-detail table{border:0;background:transparent;border-radius:0;margin:0 0 16px}
#system .invitation-detail caption{padding:0 0 18px;margin:0;font-size:24px;color:#f5e5e9}
#system .invitation-detail th,#system .invitation-detail td{padding:20px 0 8px;border-top:1px solid #77304770;border-bottom:0}
#system .invitation-detail th{font-size:14px;color:#d1afb9}
#system .invitation-detail td{text-align:right;white-space:nowrap}
#system .invitation-detail .system_item_price{font-size:36px;letter-spacing:.02em;color:#f35d76;font-variant-numeric:lining-nums tabular-nums}
#system .invitation-detail>p{font-size:12px;line-height:1.9;color:#d1afb9;margin:0}
@media(max-width:700px){body .numbered-title{gap:12px}body .numbered-title:before,body .numbered-title:after{flex-basis:42px;width:42px}.plan{padding:32px 27px 28px}.plan h3{font-size:23px}.plan .price{font-size:46px}.plan .price span{font-size:12px;margin-left:8px}#system>.invitation-detail{padding:30px 24px}#system .invitation-detail caption{font-size:22px}#system .invitation-detail th{font-size:12px}#system .invitation-detail .system_item_price{font-size:29px}}
