/* Original collection: six compositions, each shaped by its own artwork. */
.theme-wedding.is-collection-design{background:var(--paper);color:var(--ink)}
.theme-wedding.is-collection-design .hero,.theme-wedding.is-collection-design .invitation-cover{width:100%;height:900px;min-height:0;color:var(--ink);background:var(--paper)}
.is-collection-design .hero-art{object-fit:fill}
.theme-wedding.is-collection-design :is(.cover-wedding-heading>span,.cover-wedding-heading .flourish,.wedding-top>span,.couple-names>i,.section-label,.countdown-digits b,.agenda time,.venue-date b,.closing-signature){color:var(--ink)}
.theme-wedding.is-collection-design :is(.details,.invitation-footer){color:var(--ink);background:var(--paper)}
.theme-wedding.is-collection-design :is(.invitation-actions button,.footer-contact){color:var(--ink)}
.theme-wedding.is-collection-design :is(.invitation-countdown,.chapter-heading,.agenda li,.invitation-actions button,.invitation-footer){border-color:color-mix(in srgb,var(--ink) 24%,transparent)}
.theme-wedding.is-collection-design .venue-block{background:color-mix(in srgb,var(--accent) 9%,var(--paper));border-color:color-mix(in srgb,var(--ink) 28%,transparent)}
.theme-wedding.is-collection-design .venue-block>a{color:var(--ink);background:transparent}
.theme-wedding.is-collection-design .wax-seal{background:var(--accent);color:var(--paper);box-shadow:inset 0 0 0 3px #00000012,inset 0 0 0 5px #ffffff50,0 3px 7px #0002}
.theme-wedding.is-collection-design .cover-button>span:not(.wax-seal){color:var(--ink);background:color-mix(in srgb,var(--paper) 91%,transparent)}
.theme-wedding.is-collection-design :is(.cover-bottom-note,.wedding-bottom){color:var(--ink);background:color-mix(in srgb,var(--paper) 92%,transparent);border-color:color-mix(in srgb,var(--ink) 30%,transparent)}
.is-collection-design .cover-wedding-heading{top:14%;left:16%;right:16%}
.is-collection-design .cover-wedding-heading>h2{font-size:calc(37px * var(--name-scale));line-height:1.65;overflow-wrap:anywhere}
.is-collection-design .cover-wedding-heading>p{margin-top:25px;font-size:10px}
.is-collection-design .cover-wedding-heading>div{font-size:11px;margin-top:20px}
.theme-wedding.is-collection-design .cover-button{top:52%;white-space:normal;text-align:center;min-width:170px}
.is-collection-design .wedding-top{top:12%}
.is-collection-design .wedding-copy{top:28%;left:17%;right:17%}
.is-collection-design .couple-names>span{font-size:calc(52px * var(--name-scale));overflow-wrap:anywhere}
.is-collection-design .wedding-copy .hero-tagline{font-size:10px;max-width:270px;margin:21px auto 0;line-height:1.9}
.is-collection-design[data-tone=dark] .letter-sprig{color:var(--accent)}
.is-collection-design[data-tone=dark] :is(.flourish,.footer-wordmark){color:var(--ink)}
.is-collection-design[data-tone=dark] .invitation-actions button:hover{background:#ffffff0d}

/* A fine arch encloses the letter without covering the illustration. */
.theme-wedding.is-collection-design[data-layout=arched] .cover-wedding-heading{top:12%;left:15%;right:15%;padding:10% 6% 5%;border:1px solid color-mix(in srgb,var(--ink) 36%,transparent);border-radius:250px 250px 4px 4px}
.is-collection-design[data-layout=arched] .cover-wedding-heading>span{font-size:20px;margin-bottom:14px}
.is-collection-design[data-layout=arched] .cover-wedding-heading>p{margin-top:18px}
.is-collection-design[data-layout=arched] .cover-wedding-heading>h2{font-size:calc(32px * var(--name-scale));margin-top:17px}
.is-collection-design[data-layout=arched] .cover-wedding-heading>div{margin-top:15px;font-size:10px}
.theme-wedding.is-collection-design[data-layout=arched] .cover-button{top:57%}
.is-collection-design[data-layout=arched] .wedding-top{top:15%}
.is-collection-design[data-layout=arched] .wedding-copy{top:30%;padding-bottom:25px;border-bottom:1px solid color-mix(in srgb,var(--ink) 25%,transparent)}
.is-collection-design[data-layout=arched] .couple-names>span{font-size:calc(47px * var(--name-scale))}
.is-collection-design[data-layout=arched] .details-intro{max-width:390px;margin:auto}

/* Editorial titles read down the left edge of an open page. */
.theme-wedding.is-collection-design[data-layout=editorial] .cover-wedding-heading{top:17%;left:14%;right:14%;text-align:left}
.is-collection-design[data-layout=editorial] .cover-wedding-heading>span{display:block;font:italic 20px Georgia;letter-spacing:.08em}
.is-collection-design[data-layout=editorial] .cover-wedding-heading .flourish{display:none}
.is-collection-design[data-layout=editorial] .cover-wedding-heading>p{border-top:1px solid currentColor;padding-top:19px;margin-top:24px}
.is-collection-design[data-layout=editorial] .cover-wedding-heading>h2{font-size:calc(45px * var(--name-scale));line-height:1.6;max-width:360px}
.theme-wedding.is-collection-design[data-layout=editorial] .cover-button{top:53%;left:14%;transform:none;min-width:0;align-items:flex-start;padding:0;gap:14px}
.is-collection-design[data-layout=editorial] .wax-seal{display:none}
.theme-wedding.is-collection-design[data-layout=editorial] .cover-button>span{border-bottom:1px solid currentColor;border-radius:0;padding:0 0 9px;background:transparent}
.is-collection-design[data-layout=editorial] .cover-button svg{display:none}
.is-collection-design[data-layout=editorial] .wedding-top{top:15%;left:14%;right:14%;text-align:left;border-bottom:1px solid currentColor;padding-bottom:20px}
.is-collection-design[data-layout=editorial] .wedding-top .flourish{display:none}
.is-collection-design[data-layout=editorial] .wedding-top p{margin-top:10px}
.is-collection-design[data-layout=editorial] .wedding-copy{top:29%;left:14%;right:14%;text-align:left}
.is-collection-design[data-layout=editorial] .couple-names{align-items:flex-start}
.is-collection-design[data-layout=editorial] .couple-names>span{font-size:calc(52px * var(--name-scale))}
.is-collection-design[data-layout=editorial] .wedding-copy .hero-tagline{margin-left:0}
.is-collection-design[data-layout=editorial] .details-intro{text-align:left}
.is-collection-design[data-layout=editorial] .letter-sprig{margin-left:0}
.is-collection-design[data-layout=editorial] .details-intro>p:last-child{margin-left:0}
.is-collection-design[data-layout=editorial] .venue-block{border-radius:4px}

/* A letter tied with fine rules, for florals and drapery. */
.is-collection-design[data-layout=ribbon] .cover-wedding-heading{top:18%}
.is-collection-design[data-layout=ribbon] .cover-wedding-heading>span{font-style:italic;font-size:30px}
.is-collection-design[data-layout=ribbon] .cover-wedding-heading .flourish{display:none}
.is-collection-design[data-layout=ribbon] .cover-wedding-heading>h2{font-size:calc(40px * var(--name-scale));margin-top:29px}
.is-collection-design[data-layout=ribbon] .cover-wedding-heading>div{display:inline-block;border-block:1px solid color-mix(in srgb,var(--ink) 45%,transparent);padding:13px 18px;margin-top:23px}
.theme-wedding.is-collection-design[data-layout=ribbon] .cover-button{top:56%}
.is-collection-design[data-layout=ribbon] .wedding-copy{top:29%}
.is-collection-design[data-layout=ribbon] .wedding-date{display:inline-block;border-block:1px solid currentColor;padding:13px 18px}
.is-collection-design[data-layout=ribbon] .venue-block{border-radius:12px;border-style:double;border-width:3px}

/* The two type-led designs have their own rhythm. */
.is-collection-design[data-layout=playful] .cover-wedding-heading{top:18%;transform:rotate(-3deg)}
.is-collection-design[data-layout=playful] .cover-wedding-heading>span,.is-collection-design[data-layout=playful] .flourish{display:none}
.is-collection-design[data-layout=playful] .cover-wedding-heading>h2{font-size:calc(50px * var(--name-scale));line-height:1.45}
.is-collection-design[data-layout=playful] .cover-wedding-heading>div{transform:rotate(5deg);font:17px Georgia;margin-top:35px}
.theme-wedding.is-collection-design[data-layout=playful] .cover-button{top:48%;transform:translateX(-50%) rotate(3deg)}
.is-collection-design[data-layout=playful] .cover-button svg{display:none}
.is-collection-design[data-layout=playful] .wedding-top{top:18%}
.is-collection-design[data-layout=playful] .wedding-top>span{font-size:30px}
.is-collection-design[data-layout=playful] .wedding-copy{top:29%;transform:rotate(-3deg)}
.is-collection-design[data-layout=playful] .venue-block{border-radius:20px;transform:rotate(-1deg)}
.is-collection-design[data-layout=minimal] .cover-wedding-heading{top:21%;text-align:left}
.is-collection-design[data-layout=minimal] .cover-wedding-heading>span,.is-collection-design[data-layout=minimal] .cover-wedding-heading .flourish{display:none}
.is-collection-design[data-layout=minimal] .cover-wedding-heading>p{font-size:10px;letter-spacing:.04em}
.is-collection-design[data-layout=minimal] .cover-wedding-heading>h2{font:300 calc(43px * var(--name-scale))/1.65 var(--sans);letter-spacing:-2px}
.is-collection-design[data-layout=minimal] .cover-wedding-heading>div{border-top:1px solid currentColor;padding-top:20px;margin-top:25px}
.theme-wedding.is-collection-design[data-layout=minimal] .cover-button{top:54%;left:16%;transform:none;align-items:flex-start;padding:0}
.is-collection-design[data-layout=minimal] .wax-seal{display:none}
.is-collection-design[data-layout=minimal] .cover-button>span{padding-left:0!important}
.is-collection-design[data-layout=minimal] .wedding-top{top:18%}
.is-collection-design[data-layout=minimal] .wedding-top .flourish{display:none}
.is-collection-design[data-layout=minimal] .wedding-copy{top:30%}
.is-collection-design[data-layout=minimal] .couple-names>span{font:300 calc(47px * var(--name-scale))/1.5 var(--sans);letter-spacing:-2px}
.is-collection-design[data-layout=minimal] .venue-block{border-radius:0;border-inline:0;background:transparent}

@keyframes amore-gate-open{to{clip-path:inset(0 50%);opacity:0;transform:scale(1.02)}}
@keyframes amore-curtain-open{to{clip-path:inset(0 0 100% 0);opacity:.2;transform:translateY(-25px)}}
@keyframes amore-fold-open{to{transform:perspective(1100px) rotateX(-70deg);opacity:0;transform-origin:top}}
@media(prefers-reduced-motion:no-preference){.is-collection-design[data-opening=gate] .invitation-cover.is-opening{animation:amore-gate-open .55s ease both}.is-collection-design[data-opening=curtain] .invitation-cover.is-opening{animation:amore-curtain-open .55s ease both}.is-collection-design[data-opening=fold] .invitation-cover.is-opening{animation:amore-fold-open .55s ease both}}
@media(max-width:479px){.theme-wedding.is-collection-design .hero,.theme-wedding.is-collection-design .invitation-cover{height:760px}.is-collection-design .cover-wedding-heading>h2{font-size:calc(29px * var(--name-scale));letter-spacing:-1px}.is-collection-design .cover-wedding-heading>p{font-size:8px}.is-collection-design .cover-wedding-heading>div{font-size:9px}.is-collection-design .couple-names>span{font-size:calc(39px * var(--name-scale))}.is-collection-design[data-layout=arched] .cover-wedding-heading>h2{font-size:calc(26px * var(--name-scale))}.is-collection-design[data-layout=arched] .cover-wedding-heading{padding-top:14%}.is-collection-design[data-layout=arched] .cover-button{top:55%!important}.is-collection-design[data-layout=editorial] .cover-wedding-heading>h2{font-size:calc(34px * var(--name-scale))}.is-collection-design[data-layout=editorial] .couple-names>span{font-size:calc(39px * var(--name-scale))}.is-collection-design[data-layout=ribbon] .cover-wedding-heading>h2{font-size:calc(31px * var(--name-scale))}.is-collection-design[data-layout=playful] .cover-wedding-heading>h2{font-size:calc(38px * var(--name-scale))}.is-collection-design[data-layout=minimal] .cover-wedding-heading>h2{font-size:calc(32px * var(--name-scale))}.is-collection-design[data-layout=minimal] .couple-names>span{font-size:calc(35px * var(--name-scale))}.is-collection-design .wedding-copy .hero-tagline{font-size:9px}}
