/* Collection controls and live typographic previews, shared by every design. */
.collection-toolbar{align-items:flex-start;flex-wrap:wrap}.filters{flex-wrap:wrap;gap:7px}.category-count{font-size:.82em;opacity:.66;margin-left:3px}.collection-search{display:flex;align-items:center;gap:22px;margin:20px 0 16px}.collection-search label{font-size:11px;color:var(--wine);white-space:nowrap}.collection-search input{font:12px var(--sans);width:min(100%,410px);min-height:46px;padding:12px 20px;border:1px solid #d9c9bf;border-radius:999px;color:var(--ink);background:#fffdf9}.collection-search input:focus-visible{outline:2px solid var(--wine);outline-offset:3px}.show-more-designs{display:block;margin:38px auto 15px;min-height:46px;padding:12px 26px;border:1px solid var(--wine);border-radius:999px;background:transparent;color:var(--wine);font:12px var(--sans)}.show-more-designs:hover{background:#f5eae5}
.design-grid,.design-grid.is-filtered{grid-template-columns:repeat(3,minmax(0,1fr));gap:42px 28px}.design-card,.is-filtered .design-card{display:block;min-width:0}.design-card:nth-child(odd) .design-visual{border-radius:4px}.design-card:nth-child(3n+1) .design-visual{border-radius:130px 130px 4px 4px}.design-visual{aspect-ratio:2/3}.design-visual>img,.reel-art>img{object-fit:fill}.mini-wedding,.mini-save-date{background:var(--design-paper);color:var(--design-ink);font-family:var(--serif)}.mini-wedding .mini-copy{padding:17% 13% 0}.mini-wedding .mini-eyebrow{font-size:6px;line-height:1.8;letter-spacing:.02em;display:block}.mini-wedding .mini-names{font-size:clamp(23px,2.5vw,35px);margin-top:18px;line-height:1.4}.mini-wedding .mini-names i{font-size:.7em;color:inherit}.mini-wedding .mini-date{font-size:8px;margin-top:18px;color:inherit}.mini-wedding[data-layout=editorial] .mini-copy{text-align:left;padding-top:25%}.mini-wedding[data-layout=editorial] .mini-names{align-items:flex-start;font-size:30px;letter-spacing:-1px}.mini-wedding[data-layout=editorial] .mini-eyebrow{border-bottom:1px solid currentColor;padding-bottom:10px}.mini-wedding[data-layout=arched] .mini-copy{inset:13% 14% auto;padding:18% 8% 7%;border:1px solid color-mix(in srgb,var(--design-ink) 35%,transparent);border-radius:150px 150px 3px 3px}.mini-wedding[data-layout=arched] .mini-names{font-size:29px;margin-top:12px}.mini-wedding[data-layout=ribbon] .mini-copy{padding-top:22%}.mini-wedding[data-layout=ribbon] .mini-date{display:inline-block;border-block:1px solid currentColor;padding:8px 5px}.mini-wedding[data-layout=minimal] .mini-copy{padding-top:29%;text-align:left}.mini-wedding[data-layout=minimal] .mini-names{font-family:var(--sans);font-weight:300;font-size:28px}.mini-wedding[data-layout=playful] .mini-names{transform:rotate(-5deg);font-size:36px}.mini-wedding[data-layout=playful] .mini-date{transform:rotate(3deg)}
.reel-art.mini-wedding .mini-names{font-size:27px}.reel-art.mini-wedding .mini-eyebrow{font-size:5px}.reel-art.mini-wedding .mini-date{font-size:6px}.reel-art.mini-wedding[data-layout=arched] .mini-names{font-size:23px}.mini-save-date .mini-copy{padding:20% 14%;text-align:center}.mini-save-date .mini-eyebrow{font:9px Georgia;letter-spacing:.2em}.mini-save-date .mini-names{font-size:30px;margin-top:28px}.mini-save-date .mini-date{font:17px Georgia;margin-top:28px}.mini-save-note{display:block;font:7px var(--sans);margin-top:15px}
@media(max-width:900px){.design-grid,.design-grid.is-filtered{grid-template-columns:repeat(2,minmax(0,1fr))}.design-card:nth-child(3n+1) .design-visual{border-radius:4px}.design-card:nth-child(odd) .design-visual{border-radius:120px 120px 4px 4px}}
@media(max-width:520px){.collection-search{display:block;margin:22px 0 18px}.collection-search label{display:block;margin-bottom:11px;font-size:10px}.collection-search input{font-size:11px;width:100%}.design-grid,.design-grid.is-filtered,.design-grid:not(.is-filtered){grid-template-columns:1fr;gap:39px}.is-filtered .design-card{display:block}.is-filtered .card-caption{padding-top:16px}.design-visual{aspect-ratio:2/3}.design-card .mini-wedding .mini-copy{padding:18% 13% 0}.design-card .mini-wedding .mini-names{font-size:36px;margin-top:25px}.design-card .mini-wedding .mini-names i{font-size:26px}.design-card .mini-wedding .mini-date{font-size:8px;margin-top:20px}.design-card .mini-wedding .mini-eyebrow{font-size:7px}.design-card .mini-wedding[data-layout=arched] .mini-copy{padding:15% 8% 8%}.design-card .mini-wedding[data-layout=editorial] .mini-copy,.design-card .mini-wedding[data-layout=minimal] .mini-copy{padding-top:28%}.card-caption h3,.is-filtered .card-caption h3{font-size:20px}.card-category,.is-filtered .card-category{font-size:9px}.card-description,.is-filtered .card-description{font-size:11px}.design-contact{font-size:11px;min-height:44px}.save-design,.design-grid:not(.is-filtered) .save-design{width:42px;height:42px;font-size:24px}.view-chip,.design-grid:not(.is-filtered) .view-chip{font-size:10px;padding:9px 14px}.design-index{font-size:13px}.filters button{font-size:10px;min-height:42px;padding:10px 13px}.saved-filter{font-size:10px;min-height:42px}.card-category>span{display:inline}.show-more-designs{font-size:11px}}
