.couple-monogram{display:block;width:100%;height:auto;overflow:visible}
.wedding-nav .wedding-monogram{display:block;width:76px;flex:0 0 76px;padding:3px 0;color:var(--theme-ink);--monogram-accent:var(--theme-accent)}
.wedding-body .wedding-hero-content h1,.wedding-body .w-signature,.wedding-body .signature,.wedding-body .w-venue-photo--invitation h2{font-family:var(--name-font,var(--w-font)),serif!important;font-style:var(--name-style,normal);font-weight:400;overflow-wrap:anywhere;line-height:1.15}
.wedding-body .wedding-hero-content h1 em{font-family:"Cormorant Garamond",serif;font-size:.6em}
.wedding-body .wedding-hero-content h1 span{max-width:100%;overflow-wrap:anywhere}
.wedding-body .w-couple .w-photo-frame img{object-fit:cover}
.wedding-body .w-party-photo img,.wedding-body .w-venue-photo img{object-fit:cover}
.wedding-body .w-final-monogram{width:150px;margin:0 auto 24px;--monogram-accent:var(--theme-accent)}
.wedding-body .personalized-finale{text-align:center;padding:80px 24px;color:var(--theme-ink)}
.wedding-body .personalized-finale p{font:400 25px/1.7 var(--name-font,var(--w-font)),serif}
.personalization-studio{--studio-ink:#173d32;--studio-paper:#faf7ef;--studio-accent:#a97d3e}
.personalization-studio .dashboard-heading h1{font-size:clamp(36px,4vw,60px);line-height:1.1}
.personalization-preview{display:flex;align-items:center;gap:38px;background:var(--studio-paper);color:var(--studio-ink);padding:32px 46px;border:1px solid color-mix(in srgb,var(--studio-accent) 35%,transparent);border-radius:18px;margin-bottom:36px;--monogram-accent:var(--studio-accent)}
.personalization-preview [data-monogram-preview]{width:150px;flex:0 0 150px}
.personalization-preview .eyebrow{color:var(--studio-accent)}
.names-preview{font-size:clamp(28px,4vw,52px);line-height:1.4;overflow-wrap:anywhere;margin:10px 0}
.names-preview em{font-family:"Cormorant Garamond",serif;color:var(--studio-accent)}
.personalization-preview small{font-size:11px;opacity:.75}
.design-form>fieldset{min-width:0;padding:32px;margin:0 0 28px;border:1px solid #e6e3da}
.design-form legend{padding:0 12px;color:#637268;font-size:10px;letter-spacing:.15em;text-transform:uppercase;font-weight:600}
.studio-section-title{display:flex;justify-content:space-between;align-items:center;gap:28px;margin:0 0 28px}
.studio-section-title h2{font-size:36px;line-height:1.1;margin:0}
.studio-section-title h2 em{color:#7b805c;font-weight:400}
.studio-section-title p{max-width:420px;color:#59665f;font-size:12px;line-height:1.8}
.monogram-picker{display:grid;grid-template-columns:repeat(5,minmax(0,1fr));gap:14px}
.monogram-option{display:flex;align-items:center;flex-direction:column;position:relative;text-align:center;padding:18px 8px;border:1px solid #dedfd6;border-radius:10px;cursor:pointer;transition:background .2s,border-color .2s,box-shadow .2s;min-width:0}
.monogram-option input,.lettering-option input{position:absolute;top:10px;right:10px;width:16px;height:16px;accent-color:#173d32}
.monogram-option .monogram-art{width:min(100%,145px);color:var(--studio-ink);background:var(--studio-paper);--monogram-accent:var(--studio-accent);border-radius:6px}
.monogram-option strong{font-size:12px;margin-top:14px}
.monogram-option small{font-size:9px;line-height:1.6;color:#66736b;min-height:28px;max-width:135px;margin-top:6px}
.monogram-option:has(input:checked),.lettering-option:has(input:checked){border-color:#173d32;background:#f3f6ef;box-shadow:0 0 0 1px #173d32}
.monogram-option:focus-within,.lettering-option:focus-within{outline:3px solid #b89b5e;outline-offset:3px}
.lettering-picker{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:14px}
.lettering-option{position:relative;border:1px solid #dedfd6;border-radius:10px;padding:25px 24px;cursor:pointer;display:flex;flex-direction:column;text-align:center;min-width:0}
.lettering-option>span{font-size:34px;line-height:1.7;overflow-wrap:anywhere}
.lettering-option>strong{font-size:10px;letter-spacing:.04em;color:#59665f;font-weight:500}
.studio-colors{display:flex;gap:30px;flex-wrap:wrap;margin:22px 0}
.studio-colors label{display:flex;align-items:center;gap:12px;font-size:12px}
.studio-colors input[type=color]{width:65px;height:44px;padding:3px;border-radius:8px;cursor:pointer}
.studio-help{font-size:11px;line-height:1.8;color:#5c6a61}
.studio-copy{margin-bottom:24px}
.studio-copy summary{cursor:pointer;font-size:17px;font-weight:600;display:flex;justify-content:space-between;gap:20px}
.studio-copy summary span{font-size:11px;font-weight:400}
.studio-copy[open] summary{margin-bottom:30px}
.studio-toggles{display:grid;grid-template-columns:repeat(2,1fr);gap:16px}
.studio-save{display:flex;justify-content:space-between;align-items:center;gap:20px;background:#f0f2e9;padding:22px 28px;border-radius:10px}
.studio-save p{font-size:12px;line-height:1.8;margin:0;color:#526158}
.photo-heading{margin:64px 0 26px}
.photo-editor-grid{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:24px}
.photo-editor{min-width:0}
.photo-editor-heading{display:flex;align-items:center;justify-content:space-between;gap:10px;margin-bottom:20px}
.photo-editor-heading h3{font-size:24px;margin:0}
.photo-editor-heading>span{font-size:9px;padding:7px 10px;border:1px solid #dde2d6;border-radius:20px}
.photo-editor-preview{aspect-ratio:4/3;overflow:hidden;border-radius:8px;background:#eeece6}
.photo-editor-preview img{width:100%;height:100%;object-fit:cover}
.photo-upload{display:flex;flex-direction:column;gap:10px;margin:24px 0;font-size:12px}
.photo-upload small{font-size:10px;font-weight:400}
.photo-upload input{width:100%;font-size:11px;box-sizing:border-box}
.focus-controls{display:grid;grid-template-columns:1fr 1fr;gap:18px}
.focus-controls label{font-size:10px}
.focus-controls input[type=range]{width:100%;padding:0;accent-color:#173d32;margin:12px 0}
.photo-actions{display:flex;align-items:center;flex-wrap:wrap;gap:18px;margin-top:24px}
.photo-actions .button{padding:12px 17px;font-size:11px}
.photo-actions .text-button{font-size:10px}
.share-card .couple-monogram{width:100px;margin:0 auto;color:inherit}
@media(max-width:1100px){.monogram-picker{grid-template-columns:repeat(4,minmax(0,1fr))}.studio-section-title{align-items:flex-start;flex-direction:column}.studio-section-title p{max-width:none}}
@media(max-width:700px){.personalization-preview{padding:22px 18px;gap:15px}.personalization-preview [data-monogram-preview]{width:85px;flex-basis:85px}.names-preview{font-size:28px}.personalization-preview .eyebrow{font-size:7px}.personalization-preview small{font-size:8px}.design-form>fieldset{padding:18px 12px}.monogram-picker{grid-template-columns:repeat(2,minmax(0,1fr));gap:10px}.monogram-option{padding:18px 8px 12px}.monogram-art{max-width:130px}.lettering-picker,.photo-editor-grid,.studio-toggles{grid-template-columns:1fr}.studio-save{flex-direction:column;align-items:stretch}.studio-copy summary{flex-direction:column}.studio-section-title h2{font-size:32px}.wedding-nav .wedding-monogram{width:62px;flex-basis:62px}.studio-colors{gap:16px}.photo-editor{padding:20px}.photo-editor-heading h3{font-size:21px}}
@media(prefers-reduced-motion:reduce){.monogram-option{transition:none}}

img.custom-monogram{aspect-ratio:1;object-fit:contain;max-height:100%;background:none}
.transparency-grid{background-color:#fff!important;background-image:conic-gradient(#e9e9e4 25%,transparent 0 50%,#e9e9e4 0 75%,transparent 0)!important;background-size:16px 16px}
.monogram-upload{display:grid;grid-template-columns:1fr 240px;gap:35px;align-items:center;margin:28px 0}
.monogram-upload h2{font-size:34px;margin:12px 0}
.monogram-upload p{font-size:12px;line-height:1.8;max-width:620px}
.monogram-upload-preview{aspect-ratio:1;border:1px solid #dedfd6;border-radius:12px;display:grid;place-items:center;padding:22px}
.monogram-upload-preview img{width:100%;height:100%;object-fit:contain}
.monogram-upload-preview span{text-align:center;font-size:12px;color:#536158;line-height:1.7}
.monogram-upload-preview [hidden]{display:none}
.studio-save-buttons{display:flex;gap:12px;flex-wrap:wrap;justify-content:flex-end}
.owner-preview-bar{position:relative;background:#163d33;color:#fff;padding:14px 22px;display:flex;justify-content:space-between;gap:20px;font:12px Montserrat,sans-serif}
.owner-preview-bar a{color:#fff}.owner-preview-bar+nav{position:relative}
.preview-disabled-form{border:0;margin:0;padding:0;display:contents}
@media(max-width:700px){.monogram-upload{grid-template-columns:1fr}.monogram-upload-preview{width:180px;grid-row:1;margin:auto}.studio-save-buttons{flex-direction:column;width:100%}.owner-preview-bar{font-size:10px;flex-wrap:wrap}}
/* Actual names fit within the composition, rather than overflowing miniature covers. */
.theme-choice .theme-mini>span{position:absolute;inset:0;margin:0;padding:18px;display:flex;flex-direction:column;align-items:center;justify-content:center;width:auto;text-align:center}
.theme-choice .theme-mini b{font-size:34px!important;line-height:1.08;margin:10px 0 0;width:100%;max-width:100%;overflow-wrap:normal}
.theme-choice .theme-mini b>span{display:block;white-space:nowrap}
.theme-choice .theme-mini b i{display:block;line-height:.8;margin:5px 0;padding:0}
.theme-choice .theme-mini--garden>span{inset:30px 14% 25%;padding:12px}
.theme-choice .theme-mini--riviera>span,.theme-choice .theme-mini--boho>span{inset:0 0 47%;padding:12px 16px}
.theme-choice .theme-mini--boho>img{height:47%}
.theme-choice .theme-mini--romantic>span{inset:24px 20px;padding:18px 14px}
.theme-choice .theme-mini--nocturne>span{inset:24px 15px;padding:18px 12px}
.theme-choice .theme-mini--editorial>span{inset:0 50% 0 0;padding:14px 8px;align-items:flex-start;text-align:left}
.theme-choice .theme-mini--editorial>img{width:50%;height:100%}
.theme-choice .theme-mini--minimal>span{inset:0 0 42%;padding:15px}
.theme-choice .mini-olival>span,.theme-choice .mini-serra>span,.theme-choice .mini-urbano>span{inset:0 57% 0 0;padding:12px 7px;align-items:flex-start;text-align:left}
.theme-choice .mini-lavanda>span{inset:24px 54% 25px 12px;padding:12px 6px}
.theme-choice .mini-porcelana>span{inset:0 0 55%;padding:10px}
.theme-choice .mini-orquidea>span{inset:25px 7% 35%;padding:12px}
.theme-choice .mini-champagne>span{inset:24px 18px}
.theme-choice .mini-cerejeira>span{inset:0 0 55%;padding:10px}
.theme-choice .mini-cerejeira>img{height:48%}
.theme-choice .mini-solar>span,.theme-choice .mini-aurora>span{inset:0 0 50%;padding:12px}
.theme-choice .mini-areia>span{inset:0 0 47%;padding:10px}
.theme-choice .mini-bosque>span{inset:30px 14% 25%;padding:12px}
@media(max-width:600px){.theme-choice .theme-mini--romantic>span{inset:20px 10px;padding:12px 8px}}

.wedding-body .wedding-hero-content h1[data-fit-couple-names]>span{white-space:nowrap;overflow-wrap:normal}
.wedding-body .wedding-hero-content h1[data-fit-couple-names]{max-width:100%}

.theme-choice .theme-mini b{font-style:var(--mini-name-style,normal)}
