/* Self-hosted Vietnamese type from the supplied reference library. */
@font-face{font-family:'GT Lora';src:url('/assets/fonts/lora.ttf') format('truetype');font-display:swap;font-style:normal;font-weight:400}
@font-face{font-family:'GT Great Vibes';src:url('/assets/fonts/great-vibes.ttf') format('truetype');font-display:swap;font-style:normal;font-weight:400}
@font-face{font-family:'GT Chillatos';src:url('/assets/fonts/chillatos.woff2') format('woff2');font-display:swap;font-style:normal;font-weight:400}

/* Downloaded decorative skins only. The .c-* structure remains the existing
   Gửi Thương wedding layout; no slide track, book flip or magazine navigation. */
.collection-page.lw-page{background:color-mix(in srgb,var(--c-bg) 86%,#8b8378);--wr-gold:var(--c-accent)}
.lw-page .c-invitation{position:relative;max-width:960px;margin:auto;background:var(--c-bg);box-shadow:0 0 70px #00000016;isolation:isolate}
.lw-page .c-invitation::before{content:'';position:absolute;inset:0;background:var(--lw-paper) center top/680px auto repeat;mix-blend-mode:multiply;opacity:.4;pointer-events:none;z-index:-1}
.lw-page.c-wedding-reference .c-cover{min-height:900px;padding:80px 30px 48px;background:var(--lw-wallpaper) center top/cover no-repeat,var(--c-bg);overflow:hidden}
.lw-page.c-wedding-reference .c-cover::before{inset:0;border:0;border-radius:0;background:var(--lw-paper) center/cover;mix-blend-mode:multiply;opacity:.42;z-index:0}
.lw-page.c-wedding-reference .c-cover::after{display:none}
.lw-page .lw-cover-art{position:absolute;inset:0;pointer-events:none;overflow:hidden;z-index:1}
.lw-page .lw-art{position:absolute;object-fit:contain;pointer-events:none;user-select:none}
.lw-page .lw-flower-top{left:-5%;top:-5%;width:38%;max-height:43%;transform:rotate(160deg)}
.lw-page .lw-flower-bottom{right:-5%;bottom:-3%;width:39%;max-height:47%;transform:rotate(-12deg)}
.lw-page .lw-crest{width:75%;max-height:230px;left:12.5%;top:12px}
.lw-page .wr-cover-copy{width:min(100%,660px);padding:45px 30px;position:relative;z-index:2}
.lw-page .wr-label{font-size:9px;letter-spacing:.2em}
.lw-page .wr-title{font:400 calc(clamp(27px,5.8cqw,46px)*var(--c-scale))/1.25 var(--c-heading);letter-spacing:.05em;color:var(--c-accent);margin:18px 0;text-transform:uppercase}
.lw-page .wr-heart-rule{width:140px;height:24px;margin:18px auto}
.lw-page .wr-names{font-size:clamp(34px,6.2cqw,58px);line-height:1.35;color:var(--c-ink);gap:2px}
.lw-page .wr-names i{font-size:27px;margin:8px 0}
.lw-page .wr-date{font-size:12px;letter-spacing:.12em;margin-top:20px}
.lw-page .wr-intro{font-size:19px;max-width:370px;margin-top:22px;line-height:1.65;color:var(--c-ink)}
.lw-page .wr-link{min-height:44px;font-size:9px;letter-spacing:.08em;margin-top:18px}
.lw-page .wr-portrait{width:240px;max-width:80%;height:300px;margin:28px auto 0;border-radius:120px 120px 4px 4px}
.lw-page .wr-cover-foot{font-size:8px;letter-spacing:.15em;margin-top:25px;max-width:80%;color:var(--c-ink)}
/* Real ornate frames surround the uploaded photo, rather than containing text
   baked into an image. The photograph remains independently editable. */
:is(.lw-skin-nocturne,.lw-skin-lumiere,.lw-skin-magnolia) .wr-portrait{position:relative;width:330px;max-width:95%;height:auto;aspect-ratio:1/1.1;padding:0;border:0;border-radius:0;overflow:visible}
:is(.lw-skin-nocturne,.lw-skin-lumiere,.lw-skin-magnolia) .wr-portrait::after{content:'';position:absolute;inset:0;background:var(--lw-frame) center/100% 100% no-repeat;pointer-events:none;z-index:2}
:is(.lw-skin-nocturne,.lw-skin-lumiere,.lw-skin-magnolia) .wr-portrait .c-photo{position:absolute;inset:14% 18%;width:auto;height:auto;border-radius:12px;overflow:hidden}
.lw-skin-nocturne .wr-portrait .c-photo{inset:17% 21%;border-radius:50%}
.lw-skin-lumiere .wr-portrait{aspect-ratio:1118/1407}
.lw-skin-lumiere .wr-portrait .c-photo{inset:13% 21% 14% 20%;border-radius:50px 50px 25px 25px}
.lw-skin-magnolia .wr-portrait{aspect-ratio:1200/2120;width:270px}
.lw-skin-magnolia .wr-portrait .c-photo{inset:8% 8% 21%;border-radius:130px 130px 0 0}
/* Navy and emerald papers with their original gold frames. */
:is(.lw-skin-nocturne,.lw-skin-lumiere).c-wedding-reference .c-cover{background:var(--lw-paper) center/cover,var(--c-bg)}
:is(.lw-skin-nocturne,.lw-skin-lumiere) .lw-flower-top{width:38%;top:-6%;left:-10%;opacity:.85}
:is(.lw-skin-nocturne,.lw-skin-lumiere) .lw-flower-bottom{width:28%;right:-7%;bottom:3%;opacity:.55}
/* 02 — lush floral wallpaper stays outside a quiet ivory reading panel. */
.lw-skin-sage .wr-cover-copy{background:color-mix(in srgb,var(--c-bg) 92%,transparent);border:1px solid #a7b292;border-radius:210px 210px 12px 12px;padding-top:65px;width:83%;backdrop-filter:blur(4px)}
.lw-skin-sage .lw-flower-top{width:75%;left:-15%;top:-4%;z-index:3;transform:rotate(12deg)}
.lw-skin-sage .lw-flower-bottom{width:70%;right:-15%;bottom:1%;z-index:3}
.lw-skin-sage .wr-cover-foot{background:var(--c-bg);padding:8px 14px}
/* 04 — woven paper and a real rose arch, with botanical corners. */
.lw-skin-maison.c-wedding-reference .c-cover{background-size:440px auto;background-repeat:repeat}
.lw-skin-maison .wr-cover-copy{background:color-mix(in srgb,var(--c-bg) 96%,transparent);border:1px solid var(--c-accent);width:80%;margin-top:100px;padding-top:40px}
.lw-skin-maison .lw-crest{width:84%;left:8%;top:28px;max-height:250px;z-index:3}
.lw-skin-maison .lw-flower-top{top:40%;width:20%;opacity:.7}
.lw-skin-maison .lw-flower-bottom{width:26%;bottom:9%;right:-3%}
/* 05 — ivory magnolias and the original thin botanical arch. */
.lw-skin-magnolia .lw-flower-top{width:46%;left:-12%;top:-7%;transform:rotate(130deg)}
.lw-skin-magnolia .lw-flower-bottom{width:47%;right:-15%;bottom:2%;transform:rotate(-20deg)}
/* 06 — line-drawn blossoms frame the paper margins, leaving the copy clear. */
.lw-skin-silk .lw-flower-top{width:35%;left:-10%;top:0;transform:rotate(12deg)}
.lw-skin-silk .lw-flower-bottom{width:36%;right:-13%;bottom:0;transform:rotate(190deg)}
.lw-skin-silk .lw-crest{width:30%;height:46%;top:25%;left:78%;opacity:.25}
.lw-skin-silk .wr-cover-copy{border-block:1px solid color-mix(in srgb,var(--c-accent) 40%,transparent);width:83%;padding-inline:18px}
/* 07 — extracted dragon/phoenix artwork as gold relief on a red paper background. */
.lw-skin-heritage .lw-flower-top,.lw-skin-heritage .lw-flower-bottom{filter:brightness(0) saturate(100%) invert(83%) sepia(45%) saturate(442%);width:30%;height:65%;max-height:none;opacity:.3}
.lw-skin-heritage .lw-flower-top{top:15%;left:-9%;transform:rotate(0)}
.lw-skin-heritage .lw-flower-bottom{bottom:0;right:-9%;transform:scaleX(-1)}
.lw-skin-heritage .lw-crest{width:52px;height:52px;top:30px;left:calc(50% - 26px)}
.lw-skin-heritage .wr-cover-copy{border-inline:1px solid color-mix(in srgb,var(--c-accent) 30%,transparent);width:85%;padding-inline:18px}
/* 09 — watercolor château is scenery below the familiar invitation cover. */
.lw-skin-chateau.c-wedding-reference .c-cover{padding-bottom:230px}
.lw-skin-chateau .lw-crest{width:100%;height:280px;max-height:none;top:auto;bottom:-10px;left:0}
.lw-skin-chateau .lw-flower-top{width:30%;left:-11%;top:5%}
.lw-skin-chateau .lw-flower-bottom{width:26%;right:-8%;bottom:18%}
/* 10 — porcelain tile wallpaper with an ivory inset and its matching blue border. */
.lw-skin-amour.c-wedding-reference .c-cover{background-repeat:repeat;background-size:390px}
.lw-skin-amour .wr-cover-copy{background:var(--c-bg);width:82%;padding:55px 26px;border:1px solid var(--c-accent)}
.lw-skin-amour .wr-cover-copy::before{content:'';position:absolute;inset:10px;border:1px solid color-mix(in srgb,var(--c-accent) 40%,transparent);pointer-events:none}
.lw-skin-amour .lw-flower-top,.lw-skin-amour .lw-flower-bottom{display:none}
.lw-skin-amour .wr-cover-foot{background:var(--c-bg);padding:10px 18px}
/* Continue the skin at the edges of the existing content blocks. */
.lw-page.c-wedding-reference :is(.c-section,.wedding-gifts){position:relative;isolation:isolate;overflow:clip;padding-left:max(24px,6%);padding-right:max(24px,6%)}
.lw-page.c-wedding-reference :is(.c-section,.wedding-gifts)::before{content:'';position:absolute;inset:0;background:var(--lw-paper) center/680px auto repeat;mix-blend-mode:multiply;opacity:.28;z-index:-1;pointer-events:none}
.lw-page.c-wedding-reference .c-closing::after{content:'';position:absolute;right:-45px;bottom:-35px;width:200px;height:300px;background:var(--lw-flower) right bottom/contain no-repeat;opacity:.3;pointer-events:none;z-index:-1}
.lw-page .c-section-heading h2{font-size:clamp(35px,5vw,54px)}
.lw-page .c-appointment{border-radius:0;background:color-mix(in srgb,var(--c-secondary) 18%,var(--c-bg))}
.lw-page .c-nav{padding-inline:24px}
.lw-page .c-nav>div{flex-wrap:wrap;gap:18px}
/* Paper and palette follow the card; cover artwork stays off the opening. */
.lw-page .gt-opening{background:var(--c-bg)}
.lw-page .gt-opening::before{content:'';position:absolute;inset:0;background:var(--lw-paper) center/cover;mix-blend-mode:multiply;opacity:.3;pointer-events:none}
.lw-page .gt-opening-content{position:relative}
@media(max-width:700px){
 .lw-page.c-wedding-reference .c-cover{min-height:0;padding:55px 18px 35px}
 .lw-page .wr-cover-copy{padding:30px 22px;width:100%}
 .lw-page .wr-title{font-size:calc(28px * var(--c-scale))}
 .lw-page .wr-names{font-size:36px}
 .lw-page .wr-label{font-size:8px;letter-spacing:.16em}
 .lw-page .wr-intro{font-size:18px}.lw-page .wr-portrait{max-width:95%}
 .lw-page .wr-cover-foot{max-width:85%;font-size:7px}
 .lw-page .c-section-heading h2{font-size:35px}.lw-page .c-nav>a{font-size:16px}
 .lw-page .c-nav{gap:15px;flex-wrap:wrap}.lw-page .c-nav>div{gap:18px}
 .lw-skin-sage .wr-cover-copy{width:88%;padding:45px 20px 30px;border-radius:170px 170px 8px 8px}
 .lw-skin-maison .wr-cover-copy{width:88%;margin-top:65px;padding-inline:15px}.lw-skin-maison .lw-crest{top:20px}
 .lw-skin-amour .wr-cover-copy{width:87%;padding:35px 20px}.lw-skin-amour .wr-names{font-size:34px}
 .lw-skin-silk .wr-cover-copy,.lw-skin-heritage .wr-cover-copy{width:90%;padding-inline:18px}
 .lw-skin-heritage.c-wedding-reference .c-cover{padding-top:82px}
 .lw-skin-chateau.c-wedding-reference .c-cover{padding-bottom:195px}.lw-skin-chateau .lw-crest{height:230px}
}
@media(min-width:1100px){
 body.lw-page::before,body.lw-page::after{content:'';position:fixed;top:0;bottom:0;width:max(0px,calc((100vw - 960px)/2));background:var(--lw-flower) center/contain no-repeat;opacity:.18;pointer-events:none}
 body.lw-page::before{left:0}body.lw-page::after{right:0;transform:rotate(180deg)}
}
/* The standard catalog miniature uses the exact same cover artwork and geometry. */
.lw-thumbnail .c-miniature.lw-page .c-cover{min-height:1150px;padding:70px 35px 45px}
.lw-thumbnail .c-miniature.lw-page .wr-cover-copy{width:82%;padding:40px 32px}
.lw-thumbnail .c-miniature.lw-page .c-cover .wr-title{font-size:38px;color:var(--c-accent)}
.lw-thumbnail .c-miniature.lw-page .c-cover .wr-names{font-size:56px;color:var(--c-ink)}
.lw-thumbnail .c-miniature.lw-page .wr-names i{font-size:32px}
.lw-thumbnail .c-miniature.lw-page .wr-portrait{width:280px;max-width:90%}
.lw-thumbnail .c-miniature.lw-skin-maison .wr-cover-copy{margin-top:95px}
.lw-thumbnail .c-miniature.lw-skin-chateau .c-cover{padding-bottom:280px}
.lw-thumbnail .c-miniature.lw-skin-heritage .c-cover{padding-top:105px}
@media(prefers-reduced-motion:reduce){.lw-page .lw-art{animation:none;transition:none}}

/* The map keeps a square viewport on mobile and desktop. */
.lw-page .c-map-square .c-map-surface{width:100%;height:auto;min-height:0;aspect-ratio:1;border-radius:0;clip-path:none;border:1px solid var(--c-accent)}
.lw-page .c-map-square .c-map-surface>iframe{position:absolute;inset:0;border-radius:0}
/* Text-only covers keep deliberate breathing room without an empty photo slot. */
:is(.lw-skin-maison,.lw-skin-silk,.lw-skin-heritage,.lw-skin-chateau,.lw-skin-amour).lw-page .wr-cover-copy{min-height:540px;display:flex;flex-direction:column;justify-content:center}
.lw-skin-chateau.lw-page .c-cover{min-height:860px}
/* All nine albums use straight-edged photographs. Each uploaded image appears
   once in the album; cover images are also included so no-photo covers lose none. */
.lw-page #memories{display:block}
.lw-page #memories .c-gallery-copy{max-width:620px;margin:0 auto 42px;text-align:center}
.lw-page #memories .c-section-intro{margin-inline:auto}
.lw-page #memories .c-gallery{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));align-items:start;gap:54px 22px;padding:14px 8px 45px;max-width:760px;width:100%;margin:auto}
.lw-page #memories :where(.c-gallery>.c-photo){width:100%;height:auto;min-width:0;margin:0;rotate:none;transform:none;grid-column:auto;grid-row:auto;justify-self:stretch;aspect-ratio:4/5;border-radius:0;overflow:visible}
.lw-page #memories :is(.photo-zoom,.c-photo-empty,img){border-radius:0;clip-path:none}
.lw-page #memories .c-photo-0 img{object-position:var(--c-cover-position,center) center}
.lw-page #memories figcaption{color:var(--c-ink);font-size:10px;text-align:left;max-height:3.4em}
/* Sage: small paper prints placed at different angles. */
.lw-skin-sage #memories .c-photo{padding:8px 8px 28px;background:#fffdf6;box-shadow:0 7px 20px #10231122;rotate:-4deg}
.lw-skin-sage #memories .c-photo:nth-child(even){rotate:5deg;margin-top:24%;aspect-ratio:1}
.lw-skin-sage #memories .c-photo:nth-child(3n){rotate:2deg}
.lw-skin-sage #memories figcaption{top:auto;bottom:6px;left:8px;right:8px;color:#304f36;font-size:8px;white-space:nowrap;text-overflow:ellipsis}
/* Nocturne: a horizontal film strip, operated with touch, trackpad or keyboard. */
.lw-skin-nocturne #memories .c-gallery,.lw-skin-lumiere #memories .c-gallery{display:flex;overflow-x:auto;scroll-snap-type:x mandatory;overscroll-behavior-x:contain;gap:18px;padding:26px 14px 48px;scrollbar-color:var(--c-accent) var(--c-bg);border-block:8px dashed var(--c-accent)}
.lw-skin-nocturne #memories .c-gallery>.c-photo{flex:0 0 62%;aspect-ratio:4/5;scroll-snap-align:center}
.lw-skin-nocturne #memories .c-photo:nth-child(even){flex-basis:82%;aspect-ratio:4/3;align-self:center}
/* Maison: large and small photographs interlock in a staggered grid. */
.lw-skin-maison #memories .c-gallery{grid-template-columns:repeat(3,minmax(0,1fr));gap:44px 16px}
.lw-skin-maison #memories .c-photo:nth-child(4n+1){grid-column:span 2;aspect-ratio:4/3}
.lw-skin-maison #memories .c-photo:nth-child(4n+2){margin-top:34%;aspect-ratio:3/5}
.lw-skin-maison #memories .c-photo:nth-child(4n){grid-column:span 2;aspect-ratio:3/2}
/* Magnolia: square prints and a broad landscape, slightly offset. */
.lw-skin-magnolia #memories .c-photo{aspect-ratio:1;rotate:3deg}
.lw-skin-magnolia #memories .c-photo:nth-child(even){rotate:-3deg;margin-top:22%}
.lw-skin-magnolia #memories .c-photo:nth-child(3n){grid-column:1/-1;width:90%;justify-self:center;aspect-ratio:3/2;rotate:-2deg}
/* Silk: a journal page with alternating portrait/landscape compositions. */
.lw-skin-silk #memories .c-gallery{grid-template-columns:1.3fr 1fr;gap:54px 18px}
.lw-skin-silk #memories .c-photo:nth-child(3n+1){grid-column:1/-1;aspect-ratio:16/10;width:90%}
.lw-skin-silk #memories .c-photo:nth-child(3n+2){aspect-ratio:1;margin-top:14%}
.lw-skin-silk #memories .c-photo:nth-child(3n){aspect-ratio:3/4}
/* Heritage: a contact sheet with narrow borders and numbered captions. */
.lw-skin-heritage #memories .c-gallery{gap:42px 12px;counter-reset:print}
.lw-skin-heritage #memories .c-photo{aspect-ratio:1;padding:5px;border:1px solid var(--c-accent);counter-increment:print}
.lw-skin-heritage #memories .c-photo:nth-child(3n){grid-column:1/-1;aspect-ratio:2/1}
.lw-skin-heritage #memories figcaption::before{content:counter(print,decimal-leading-zero) ' / ';color:var(--c-accent)}
/* Lumière: wide cinema frames alternate with square close-ups. */
.lw-skin-lumiere #memories .c-gallery{border-block:1px solid var(--c-accent);padding-block:30px 55px}
.lw-skin-lumiere #memories .c-photo{flex:0 0 88%;aspect-ratio:16/10;scroll-snap-align:center}
.lw-skin-lumiere #memories .c-photo:nth-child(even){flex-basis:60%;aspect-ratio:1;align-self:center}
/* Château: postcards, with a larger landscape every third frame. */
.lw-skin-chateau #memories .c-photo{padding:7px;border:1px solid var(--c-accent);aspect-ratio:3/4;rotate:-2deg}
.lw-skin-chateau #memories .c-photo:nth-child(even){margin-top:35%;rotate:3deg;aspect-ratio:1}
.lw-skin-chateau #memories .c-photo:nth-child(3n){grid-column:1/-1;width:85%;justify-self:end;aspect-ratio:3/2;rotate:1deg}
/* Amour: a tiled album with alternating full-width and square photographs. */
.lw-skin-amour #memories .c-gallery{gap:48px 16px}
.lw-skin-amour #memories .c-photo{aspect-ratio:1;border:1px solid var(--c-accent);padding:4px}
.lw-skin-amour #memories .c-photo:nth-child(4n+1){grid-column:1/-1;aspect-ratio:16/9}
.lw-skin-amour #memories .c-photo:nth-child(4n){width:80%;justify-self:end;aspect-ratio:4/5;margin-top:12%}
.lw-page #memories .c-photo:only-child{grid-column:1/-1;width:100%;max-width:600px;justify-self:center;aspect-ratio:4/3;margin:0;rotate:none}
@media(max-width:400px){.lw-page #memories .c-gallery{gap:46px 14px}.lw-page #memories figcaption{font-size:9px}.lw-skin-sage #memories figcaption{font-size:8px}}

/* Six stationery covers. Mobile is the base layout: no fixed-height text boxes,
   no scroll interception, and only decorative elements are positioned absolutely. */
.lw-page.lw-series-garden .c-cover{min-height:0;padding:64px 24px 40px}
.lw-page.lw-series-garden .wr-cover-copy{width:min(100%,640px);padding:0}
.lw-page.lw-series-garden .wr-label{font-size:10px;letter-spacing:.13em;line-height:1.8}
.lw-page.lw-series-garden .wr-title{font-size:calc(clamp(25px,5cqw,36px)*var(--c-scale));line-height:1.25;letter-spacing:.03em;margin:14px 0 25px}
.lw-page.lw-series-garden .wr-names{font-size:clamp(32px,6cqw,52px);line-height:1.3;overflow-wrap:anywhere}
.lw-page.lw-series-garden .wr-names i{font-size:24px;line-height:1.4;margin:10px 0}
.lw-page.lw-series-garden .wr-date{font-size:13px;letter-spacing:.12em;line-height:1.7;margin-top:25px}
.lw-page.lw-series-garden .wr-date>span{font-size:11px;letter-spacing:.03em;line-height:1.8}
.lw-page.lw-series-garden .wr-intro{font-size:18px;line-height:1.7;margin:26px auto 12px}
.lw-page.lw-series-garden .wr-link{min-height:48px;font-size:11px;letter-spacing:.04em}
.lw-page.lw-series-garden .wr-cover-foot{font-size:9px;line-height:1.8;max-width:95%;margin-top:32px}
.lw-page.lw-series-garden .lw-cover-note{position:relative;z-index:2}
.lw-page.lw-series-garden .lw-cover-photo{position:relative;aspect-ratio:4/5;min-width:0;border-radius:0;overflow:hidden}
.lw-page.lw-series-garden .lw-cover-photo .c-photo{width:100%;height:100%;margin:0}
.lw-page.lw-series-garden .lw-cover-photo :is(.photo-zoom,img){border-radius:0}
.lw-page.lw-series-garden .lw-cover-photo img{object-position:var(--c-cover-position,center) center}
.lw-page.lw-series-garden .lw-flower-top,.lw-page.lw-series-garden .lw-flower-bottom{height:auto;max-height:none;transform:none;opacity:1}
/* Touch targets stay usable without making the quiet supporting copy tiny. */
body.lw-series-garden .c-nav{position:static;gap:16px;padding:20px;align-items:center}
body.lw-series-garden .c-nav>div{gap:12px}
body.lw-series-garden .c-nav a{min-height:44px;display:inline-flex;align-items:center;font-size:12px}
body.lw-series-garden .c-nav>a{font-size:18px;max-width:100%;overflow-wrap:anywhere}
body.lw-series-garden .c-section-intro{font-size:15px;line-height:1.8}
body.lw-series-garden :is(.c-moment-copy,.c-appointment)>p{font-size:14px;line-height:1.8}
body.lw-series-garden .c-location-address{font-size:14px;line-height:1.8}
body.lw-series-garden .c-link{min-height:44px}
body.lw-series-garden .c-music{min-width:44px;min-height:44px;bottom:max(16px,env(safe-area-inset-bottom))}
body.lw-series-garden .c-footer{padding-bottom:90px}

/* SAKURA — a branch above a hanging print; names form a separate signature. */
.lw-page.lw-skin-sakura .c-cover{padding-top:190px;background:linear-gradient(155deg,#fffaf5,var(--c-bg))}
.lw-page.lw-skin-sakura .lw-flower-top{width:83%;height:190px;object-fit:contain;object-position:left top;left:-5%;top:-15px;max-width:480px}
.lw-page.lw-skin-sakura .lw-flower-bottom{width:31%;right:-12%;bottom:7%;opacity:.5}
.lw-skin-sakura .lw-hanging-print{position:relative;width:76%;margin:30px 0 32px auto;rotate:3deg}
.lw-skin-sakura .lw-hanging-print .lw-cover-photo{border:8px solid #fffdf9;box-shadow:0 10px 26px #67323c1c}
.lw-skin-sakura .lw-hanging-print:has(.lw-cover-photo)::before{content:'';position:absolute;top:-18px;left:40%;width:50px;height:30px;background:#e9cebbbd;z-index:2;rotate:-10deg}
.lw-skin-sakura .lw-hanging-print .wr-date{font-size:11px;margin-top:12px;text-align:right}
.lw-page.lw-skin-sakura .wr-names{align-items:flex-start;text-align:left;font-style:italic}
.lw-skin-sakura .wr-names i{align-self:center}

/* SUNLIT — a tall botanical specimen beside a typographic invitation, no photo. */
.lw-page.lw-skin-sunlit .c-cover{padding-top:72px}
.lw-page.lw-skin-sunlit .lw-flower-top{left:-17%;top:24%;width:63%;max-width:370px}
.lw-page.lw-skin-sunlit .lw-flower-bottom{right:-7%;bottom:-3%;width:27%;opacity:.4}
.lw-skin-sunlit .lw-masthead{border-block:1px solid color-mix(in srgb,var(--c-accent) 35%,transparent);padding:24px 0 4px}
.lw-skin-sunlit .lw-sun-vows{min-height:450px;width:77%;margin-left:auto;display:flex;flex-direction:column;justify-content:center;padding:40px 0 30px 12px}
.lw-page.lw-skin-sunlit .wr-names{font-style:italic;text-align:right;align-items:flex-end}
.lw-page.lw-skin-sunlit .wr-names i{align-self:center}
.lw-skin-sunlit .wr-date{text-align:right}
.lw-skin-sunlit .lw-cover-note{padding:0 16px;background:none}

/* HYDRANGEA — a broad, straight-edged portrait and a blue paper name band. */
.lw-page.lw-skin-hydrangea .c-cover{padding-top:66px;padding-bottom:120px;background:linear-gradient(#f9fcff,var(--c-bg))}
.lw-page.lw-skin-hydrangea .lw-flower-top{right:-12%;left:auto;top:3%;width:32%;opacity:.6}
.lw-page.lw-skin-hydrangea .lw-flower-bottom{width:110%;left:-5%;right:auto;bottom:-12px}
.lw-skin-hydrangea .lw-blue-print{margin:28px -6px 0;padding:0;background:none}
.lw-skin-hydrangea .lw-blue-print:empty{display:none}
.lw-page.lw-skin-hydrangea .lw-cover-photo{aspect-ratio:4/3}
.lw-skin-hydrangea .lw-blue-vows{background:none;padding:32px 16px;margin:0 7px}
.lw-page.lw-skin-hydrangea .wr-names{font-size:clamp(30px,5.6cqw,46px)}
.lw-skin-hydrangea .wr-cover-foot{position:relative;z-index:2;background:var(--c-bg);padding:8px}

/* TERRACOTTA — two separate prints tucked into a dried-flower scrapbook. */
.lw-page.lw-skin-terracotta .c-cover{padding-top:150px}
.lw-page.lw-skin-terracotta .lw-flower-top{width:105%;left:-3%;top:-9%;max-width:780px}
.lw-page.lw-skin-terracotta .lw-flower-bottom{width:30%;right:-13%;bottom:3%;rotate:-20deg;opacity:.5}
.lw-skin-terracotta .lw-autumn-prints{display:flex;align-items:flex-start;margin:24px 0 40px;padding:10px 5px 25px}
.lw-skin-terracotta .lw-autumn-prints:empty{display:none}
.lw-page.lw-skin-terracotta .lw-cover-photo{flex:0 0 61%;border:7px solid #fffaf1;box-shadow:0 12px 20px #50311e22;rotate:-7deg;overflow:visible}
.lw-page.lw-skin-terracotta .lw-cover-photo:nth-child(2){flex-basis:52%;margin:23% 0 0 -13%;rotate:7deg}
.lw-page.lw-skin-terracotta .lw-cover-photo:only-child{flex-basis:80%;margin-inline:auto;rotate:-3deg}
.lw-page.lw-skin-terracotta .lw-cover-photo .c-photo{overflow:hidden}
.lw-skin-terracotta .lw-autumn-vows{border-left:2px solid var(--c-accent);padding-left:20px;text-align:left}
.lw-page.lw-skin-terracotta .wr-names{align-items:flex-start;text-align:left}
.lw-skin-terracotta .wr-names i{align-self:center}

/* LAVENDER — an editable paper letter emerging from the supplied envelope. */
.lw-page.lw-skin-lavender .c-cover{padding-top:64px}
.lw-page.lw-skin-lavender .lw-flower-top{width:43%;left:-16%;top:17%;rotate:25deg;opacity:.8}
.lw-page.lw-skin-lavender .lw-flower-bottom{width:44%;right:-13%;bottom:4%;rotate:-30deg;opacity:.7}
.lw-skin-lavender .lw-letter-pocket{position:relative;padding:0 14px 150px;margin:35px 0 0}
.lw-skin-lavender .lw-letter-note{position:relative;background:#fffaf7;color:var(--c-ink);border:1px solid #cfbfdb;padding:36px 18px 35px;box-shadow:0 8px 28px #4e31561a}
.lw-skin-lavender .lw-letter-note::before{content:'';position:absolute;inset:9px;border:1px solid #ded0e5;pointer-events:none}
.lw-skin-lavender .lw-letter-flap{position:absolute;bottom:0;left:0;right:0;height:190px;background:var(--lw-crest) center bottom/100% 100% no-repeat;pointer-events:none}
.lw-page.lw-skin-lavender .wr-names{font-style:italic;font-size:clamp(30px,5.5cqw,46px)}
.lw-skin-lavender .lw-cover-note{padding-inline:10px}

/* LOTUS — patterned paper bands around a clean ceremonial name plaque. */
.lw-page.lw-skin-lotus .c-cover{padding:78px 28px 190px;background:var(--lw-wallpaper) center/360px auto repeat}
.lw-page.lw-skin-lotus .c-cover::before{background:var(--c-bg);opacity:.82;mix-blend-mode:normal;inset:0 18px}
.lw-page.lw-skin-lotus .wr-cover-copy{background:color-mix(in srgb,var(--c-bg) 96%,transparent);padding:28px 16px}
.lw-page.lw-skin-lotus .lw-flower-top{left:-7%;top:4%;width:27%;opacity:.45;rotate:25deg}
.lw-page.lw-skin-lotus .lw-flower-bottom{left:4%;right:auto;bottom:-6px;width:92%}
.lw-skin-lotus .lw-masthead{border-bottom:1px solid var(--c-accent);padding-bottom:8px}
.lw-skin-lotus .lw-lotus-vows{padding:45px 14px 35px;border-bottom:1px solid var(--c-accent)}
.lw-page.lw-skin-lotus .wr-names{font-size:clamp(32px,5.8cqw,50px)}
.lw-skin-lotus .wr-cover-foot{position:relative;z-index:2}

/* Albums keep all six photos, with a separate arrangement for each new edition. */
.lw-series-garden #memories .c-gallery{gap:48px 18px;padding-inline:4px}
.lw-series-garden #memories figcaption{font-size:11px;line-height:1.6;max-height:3.2em}
.lw-skin-sakura #memories .c-gallery{grid-template-columns:1fr 1fr;column-gap:28px;border-left:1px solid var(--c-accent);padding-left:14px}
.lw-skin-sakura #memories .c-photo{aspect-ratio:3/4;rotate:2deg;box-shadow:6px 6px 0 var(--c-secondary)}
.lw-skin-sakura #memories .c-photo:nth-child(even){margin-top:45%;aspect-ratio:1;rotate:-3deg}
.lw-skin-sakura #memories .c-photo:nth-child(3n){grid-column:1/-1;aspect-ratio:5/3;width:88%;justify-self:center}
.lw-skin-sunlit #memories .c-gallery{grid-template-columns:repeat(5,minmax(0,1fr));gap:48px 14px}
.lw-skin-sunlit #memories .c-photo{grid-column:span 3;aspect-ratio:4/3;border-bottom:7px solid var(--c-secondary)}
.lw-skin-sunlit #memories .c-photo:nth-child(even){grid-column:span 2;aspect-ratio:3/5;margin-top:35%}
.lw-skin-sunlit #memories .c-photo:nth-child(4n+3){grid-column:span 2;aspect-ratio:3/5;margin-top:20%}
.lw-skin-sunlit #memories .c-photo:nth-child(4n){grid-column:span 3;aspect-ratio:1;margin-top:0}
.lw-skin-hydrangea #memories .c-gallery{grid-template-columns:1fr 1fr;gap:48px 12px}
.lw-skin-hydrangea #memories .c-photo{aspect-ratio:1;border:1px solid var(--c-accent);padding:5px;background:var(--c-bg)}
.lw-skin-hydrangea #memories .c-photo:nth-child(3n){grid-column:1/-1;aspect-ratio:16/9;margin-top:10px}
.lw-skin-hydrangea #memories .c-photo:nth-child(3n+2){margin-top:22%}
.lw-skin-terracotta #memories .c-gallery{grid-template-columns:1.1fr 1fr;gap:60px 22px}
.lw-skin-terracotta #memories .c-photo{aspect-ratio:4/5;padding:6px;background:#fffaf1;box-shadow:0 6px 20px #50311e1a;rotate:-5deg}
.lw-skin-terracotta #memories .c-photo:nth-child(even){aspect-ratio:1;margin-top:45%;rotate:5deg}
.lw-skin-terracotta #memories .c-photo:nth-child(5){grid-column:1/-1;width:75%;aspect-ratio:3/2;justify-self:center}
.lw-skin-terracotta #memories .c-photo:nth-child(6){grid-column:1/-1;width:83%;aspect-ratio:16/9;justify-self:end;margin-top:0;rotate:2deg}
.lw-skin-lavender #memories .c-gallery{grid-template-columns:minmax(0,1fr);gap:55px}
.lw-skin-lavender #memories .c-photo{width:83%;aspect-ratio:4/3;padding:8px;background:#fffaf7;box-shadow:7px 9px 0 var(--c-secondary);justify-self:start}
.lw-skin-lavender #memories .c-photo:nth-child(even){justify-self:end;aspect-ratio:1}
.lw-skin-lavender #memories .c-photo:nth-child(3n){width:95%;aspect-ratio:16/9;justify-self:center}
.lw-skin-lotus #memories .c-gallery{grid-template-columns:1fr 1fr;gap:52px 18px;border-block:1px solid var(--c-accent);padding-block:28px 55px}
.lw-skin-lotus #memories .c-photo{aspect-ratio:4/5;outline:1px solid var(--c-accent);outline-offset:4px}
.lw-skin-lotus #memories .c-photo:nth-child(3n+1){grid-column:1/-1;aspect-ratio:2/1}
.lw-skin-lotus #memories .c-photo:nth-child(3n){aspect-ratio:1;margin-top:35%}
.lw-series-garden #memories .c-photo:only-child{grid-column:1/-1;width:100%;aspect-ratio:4/3;margin:0;rotate:none}

@media(min-width:700px){
 .lw-page.lw-series-garden .c-cover{padding-inline:70px}
 .lw-page.lw-skin-sakura .c-cover{padding-top:210px}
 .lw-page.lw-skin-terracotta .c-cover{padding-top:250px}
 .lw-skin-sakura .lw-hanging-print{max-width:350px;margin-inline:auto}
 .lw-skin-terracotta .lw-autumn-prints{max-width:480px;margin-inline:auto}
 .lw-skin-lavender .lw-letter-pocket{width:450px;margin-inline:auto;padding-bottom:200px}
 .lw-skin-lavender .lw-letter-flap{height:250px}
 .lw-page.lw-skin-lotus .c-cover{padding-bottom:270px}
 .lw-page.lw-skin-lotus .lw-flower-bottom{width:70%;left:15%;max-height:330px;object-fit:contain}
}
/* Catalog uses the same cover at an 800px design canvas. Keep its content
   inside the 1100px thumbnail instead of inheriting the full desktop spacing. */
.lw-thumbnail .c-miniature.lw-series-garden .c-cover{height:1100px;min-height:1100px;padding:90px 70px 55px;justify-content:center}
.lw-thumbnail .c-miniature.lw-series-garden .wr-cover-copy{width:100%;padding:0}
.lw-thumbnail .c-miniature.lw-series-garden .c-cover .wr-title{font-size:38px}
.lw-thumbnail .c-miniature.lw-series-garden .c-cover .wr-names{font-size:52px}
.lw-thumbnail .c-miniature.lw-series-garden .c-cover .wr-label{font-size:12px}
.lw-thumbnail .c-miniature.lw-series-garden .c-cover .wr-intro{font-size:23px}
.lw-thumbnail .c-miniature.lw-series-garden .wr-cover-foot{font-size:10px}
.lw-thumbnail .c-miniature.lw-skin-sakura .c-cover{padding-top:160px}
.lw-thumbnail .c-miniature.lw-skin-sakura .lw-hanging-print{width:270px;margin-block:14px}
.lw-thumbnail .c-miniature.lw-skin-sakura .lw-flower-top{width:65%}
.lw-thumbnail .c-miniature.lw-skin-terracotta .c-cover{padding-top:180px}
.lw-thumbnail .c-miniature.lw-skin-terracotta .lw-autumn-prints{max-width:380px;margin-block:8px 20px}
.lw-thumbnail .c-miniature.lw-skin-hydrangea .c-cover{padding-bottom:100px}
.lw-thumbnail .c-miniature.lw-skin-hydrangea .lw-blue-print{width:380px;margin:18px auto 0}
.lw-thumbnail .c-miniature.lw-skin-hydrangea .lw-blue-vows{padding:20px 25px;margin:0 50px}
.lw-thumbnail .c-miniature.lw-skin-lavender .lw-letter-pocket{width:450px;padding-bottom:190px;margin-top:18px}
.lw-thumbnail .c-miniature.lw-skin-lavender .lw-letter-flap{height:245px}
.lw-thumbnail .c-miniature.lw-skin-lotus .c-cover{padding-bottom:230px}
.lw-thumbnail .c-miniature.lw-skin-lotus .wr-cover-copy{padding:32px}
.lw-thumbnail .c-miniature.lw-skin-lotus .lw-lotus-vows{padding-block:30px}
@media(prefers-reduced-motion:reduce){.lw-series-garden *{scroll-behavior:auto}}

/* Five heritage editions — their photo / text structures are distinct. */
.lw-page.lw-skin-phoenix .c-cover{padding-top:65px}
.lw-page.lw-skin-phoenix .lw-flower-top{width:22%;left:-9%;top:3%;opacity:.5}
.lw-page.lw-skin-phoenix .lw-flower-bottom{width:22%;right:-9%;bottom:4%;opacity:.5;rotate:180deg}
.lw-skin-phoenix .lw-phoenix-ceremony{border-block:4px double var(--c-accent);padding:30px 8px;margin:30px 0}
.lw-page.lw-skin-phoenix .wr-names{display:grid;grid-template-columns:1fr auto 1fr;align-items:center;gap:14px;font-size:clamp(26px,5cqw,38px)}
.lw-skin-phoenix .lw-phoenix-pair{width:75%;max-width:280px;height:240px;display:flex;justify-content:space-between;gap:30px;margin:30px auto 0}
.lw-skin-phoenix .lw-phoenix-pair img{width:calc(50% - 15px);height:100%;object-fit:contain}
.lw-skin-phoenix .lw-phoenix-pair img:last-child{transform:scaleX(-1)}
.lw-page.lw-skin-violet .c-cover{padding-top:130px}
.lw-page.lw-skin-violet .lw-flower-top{width:42%;left:-12%;top:-4%;rotate:20deg}
.lw-page.lw-skin-violet .lw-flower-bottom{width:34%;right:-12%;bottom:2%;rotate:190deg;opacity:.55}
.lw-skin-violet .lw-violet-vows{text-align:right;border-right:1px solid var(--c-accent);padding:20px 16px 20px 0;margin:20px 0}
.lw-page.lw-skin-violet .wr-names{align-items:flex-end;font-style:italic}
.lw-page.lw-skin-violet .wr-names i{align-self:center}
.lw-page.lw-skin-violet .lw-cover-photo{aspect-ratio:5/3;margin:30px 0;outline:1px solid var(--c-accent);outline-offset:7px}
.lw-page.lw-skin-citrus .c-cover{padding-top:64px}
.lw-page.lw-skin-citrus .lw-flower-top{width:45%;left:-10%;top:22%}
.lw-page.lw-skin-citrus .lw-flower-bottom{width:37%;right:-12%;bottom:32%;rotate:180deg}
.lw-skin-citrus .lw-citrus-medallion{min-height:340px;padding:65px 30px;display:flex;align-items:center;justify-content:center;border-radius:50%;border:1px solid var(--c-accent);margin:48px 0 30px;background:color-mix(in srgb,var(--c-bg) 92%,transparent)}
.lw-page.lw-skin-citrus .wr-names{font-size:clamp(27px,5.4cqw,43px);font-style:italic}
.lw-skin-citrus .lw-citrus-date{border-block:1px solid var(--c-accent);padding-bottom:22px}
.lw-page.lw-skin-leaves .c-cover{padding-top:95px}
.lw-page.lw-skin-leaves .lw-flower-top{width:28%;right:-6%;left:auto;top:-5%;rotate:25deg}
.lw-page.lw-skin-leaves .lw-flower-bottom{width:25%;left:-9%;right:auto;bottom:3%;rotate:195deg;opacity:.55}
.lw-skin-leaves .lw-leaf-diptych{display:grid;grid-template-columns:1fr 1fr;gap:24px 16px;margin-top:35px;align-items:center}
.lw-skin-leaves .lw-leaf-diptych>.lw-cover-photo:first-child{grid-column:1;grid-row:1;aspect-ratio:3/4}
.lw-skin-leaves .lw-leaf-diptych>.lw-cover-photo:last-child{grid-column:2;grid-row:3;aspect-ratio:3/4}
.lw-page.lw-skin-leaves .wr-names{grid-column:1/-1;grid-row:2;flex-direction:row;justify-content:space-between;gap:12px;font-size:clamp(25px,4.8cqw,36px);border-block:1px solid var(--c-accent);padding:20px 0}
.lw-skin-leaves .wr-names span{flex:1}
.lw-skin-leaves .lw-leaf-diptych:not(:has(.lw-cover-photo)) .wr-names{grid-row:1}
.lw-page.lw-skin-doves .c-cover{padding-top:65px;border-inline:12px solid var(--c-secondary)}
.lw-page.lw-skin-doves .lw-flower-top{width:18%;left:-6%;top:24%;opacity:.45}
.lw-page.lw-skin-doves .lw-flower-bottom{width:19%;right:-6%;bottom:10%;opacity:.45;rotate:180deg}
.lw-skin-doves .lw-masthead{border-block:1px solid var(--c-accent);padding-top:20px}
.lw-skin-doves .lw-doves-announcement>img{display:block;width:65%;max-width:270px;margin:28px auto}
.lw-skin-doves .lw-doves-announcement{padding-bottom:26px;border-bottom:1px solid var(--c-accent)}
.lw-page.lw-skin-doves .wr-names{letter-spacing:.025em;font-size:clamp(29px,5.5cqw,46px)}
.lw-skin-phoenix #memories .c-gallery{grid-template-columns:1fr 1fr;gap:42px 15px}
.lw-skin-phoenix #memories .c-photo{aspect-ratio:3/4;border-top:3px double var(--c-accent);padding-top:8px}
.lw-skin-phoenix #memories .c-photo:nth-child(3n){grid-column:1/-1;aspect-ratio:3/2}
.lw-skin-violet #memories .c-gallery{grid-template-columns:repeat(3,minmax(0,1fr));gap:42px 14px}
.lw-skin-violet #memories .c-photo{grid-column:span 2;aspect-ratio:4/3;border:1px solid var(--c-accent);padding:5px}
.lw-skin-violet #memories .c-photo:nth-child(even){grid-column:span 1;aspect-ratio:2/3;margin-top:40%}
.lw-skin-citrus #memories .c-gallery{grid-template-columns:1fr 1fr;gap:48px 20px}
.lw-skin-citrus #memories .c-photo{aspect-ratio:1;border-bottom:12px solid var(--c-secondary);rotate:2deg}
.lw-skin-citrus #memories .c-photo:nth-child(even){margin-top:45%;rotate:-2deg}
.lw-skin-citrus #memories .c-photo:nth-child(5){grid-column:1/-1;aspect-ratio:16/9}
.lw-skin-leaves #memories .c-gallery{grid-template-columns:1fr 1fr;gap:42px 14px}
.lw-skin-leaves #memories .c-photo{aspect-ratio:4/5;padding:5px;border:1px solid var(--c-accent)}
.lw-skin-leaves #memories .c-photo:nth-child(4n+1){grid-column:1/-1;width:80%;aspect-ratio:3/2;justify-self:start}
.lw-skin-leaves #memories .c-photo:nth-child(4n){grid-column:1/-1;width:80%;aspect-ratio:3/2;justify-self:end}
.lw-skin-doves #memories .c-gallery{grid-template-columns:1fr;gap:48px}
.lw-skin-doves #memories .c-photo{aspect-ratio:3/2;padding:8px;border:1px dashed var(--c-accent);width:88%}
.lw-skin-doves #memories .c-photo:nth-child(even){justify-self:end;aspect-ratio:4/3}
@media(min-width:700px){.lw-skin-leaves .lw-leaf-diptych{max-width:450px;margin-inline:auto}.lw-skin-citrus .lw-citrus-medallion{max-width:450px;margin-inline:auto}}
.lw-thumbnail .c-miniature.lw-skin-violet .c-cover{padding-top:110px}
.lw-thumbnail .c-miniature.lw-skin-violet .lw-cover-photo{width:400px;margin-inline:auto}
.lw-thumbnail .c-miniature.lw-skin-leaves .lw-leaf-diptych{max-width:370px;gap:10px;margin-top:15px}
.lw-thumbnail .c-miniature.lw-skin-leaves .wr-names{font-size:34px}
.lw-thumbnail .c-miniature.lw-skin-phoenix .wr-names{font-size:42px}
.lw-thumbnail .c-miniature.lw-skin-phoenix .lw-phoenix-pair{height:180px}
.lw-thumbnail .c-miniature.lw-skin-citrus .lw-citrus-medallion{margin-block:25px;min-height:320px}
/* At catalog size, prioritize the cover artwork and names over supporting copy. */
.lw-thumbnail .c-miniature.lw-series-garden :is(.wr-intro,.wr-link,.wr-cover-foot){display:none}
.lw-thumbnail .c-miniature.lw-skin-sakura .lw-flower-top{height:350px;width:40%;left:-5%;top:-10%}
.lw-thumbnail .c-miniature.lw-skin-terracotta .lw-flower-top{top:-18%;width:95%}
.lw-thumbnail .c-miniature.lw-skin-hydrangea .c-cover{padding-bottom:240px}
.lw-thumbnail .c-miniature.lw-skin-hydrangea .lw-flower-bottom{width:95%;left:2.5%;bottom:-40px}
.lw-thumbnail .c-miniature.lw-skin-leaves .c-cover .wr-names{font-size:32px}
.lw-thumbnail .c-miniature.lw-skin-phoenix .c-cover .wr-names{font-size:40px}

/* Cover-only refresh: a tall invitation front, with supporting copy below it.
   Local container units keep the catalog and live card on the same design grid. */
.lw-page .c-cover.ls-cover{container-type:inline-size;display:block;position:relative;isolation:isolate;width:100%;max-width:680px;min-height:0;height:auto;padding:0;margin-inline:auto;border:0;background:var(--c-bg);overflow:hidden}
.lw-page .c-cover.ls-cover:before,.lw-page .c-cover.ls-cover:after{display:none}
.ls-cover .ls-artboard{position:relative;isolation:isolate;min-height:175cqw;background:var(--c-bg)}
.ls-cover .ls-artboard:before{content:'';position:absolute;inset:0;background:var(--lw-paper) center/100% auto;mix-blend-mode:multiply;opacity:.07;pointer-events:none;z-index:0}
.lw-page .c-cover.ls-cover .ls-art{inset:0;z-index:1;overflow:hidden}
.lw-page .c-cover.ls-cover .ls-art-image{position:absolute;display:block;object-fit:contain;object-position:center;max-width:none;max-height:none;pointer-events:none;user-select:none;transform:none}
.lw-page .c-cover.ls-cover .ls-copy{position:relative;z-index:2;display:flex;flex-direction:column;align-items:center;justify-content:flex-start;gap:0;width:100%;max-width:none;min-height:175cqw;height:auto;padding:12cqw 8cqw 10cqw;margin:0;border:0;border-radius:0;background:none;box-shadow:none;backdrop-filter:none;text-align:center}
.lw-page .c-cover.ls-cover .ls-copy:before,.lw-page .c-cover.ls-cover .ls-copy:after{display:none}
.ls-cover .ls-copy>*{flex-shrink:0;min-width:0;max-width:100%}
.ls-cover .ls-masthead{position:relative;width:100%;margin-bottom:6cqw}
.ls-cover .ls-eyebrow{font:400 1.75cqw/1.7 var(--c-body);letter-spacing:.16em;color:var(--c-ink);margin:0 0 2cqw;white-space:pre-line;overflow-wrap:anywhere}
.lw-page .c-cover.ls-cover .ls-title.ls-title{display:block;font:500 calc(3.1cqw * var(--c-scale,1))/1.5 var(--c-heading);letter-spacing:.08em;text-transform:uppercase;color:var(--c-accent);width:auto;max-width:100%;margin:0;white-space:pre-line;overflow-wrap:anywhere}
.lw-page .c-cover.ls-cover .ls-names.ls-names{display:flex;flex-direction:column;align-items:center;justify-content:center;gap:0;margin:0;padding:0;border:0;font:400 calc(7.8cqw * var(--c-scale,1))/1.3 var(--ls-name-font,var(--c-heading));letter-spacing:0;color:var(--c-ink);text-align:center;width:100%;overflow-wrap:anywhere}
.lw-page .c-cover.ls-cover .ls-names.ls-names span{display:block;max-width:100%;white-space:pre-line;overflow-wrap:anywhere;text-wrap:balance}
.lw-page .c-cover.ls-cover .ls-names.ls-names i{font:400 5cqw/1.2 'Great Vibes',var(--c-heading);margin:1.4cqw 0;color:var(--c-accent)}
.lw-page .c-cover.ls-cover[style] .ls-names.ls-names{font-size:calc(9.3cqw * var(--c-scale,1));line-height:1.3}
.lw-page .c-cover.ls-cover .ls-date.ls-date{display:block;color:var(--c-ink);font:500 2.15cqw/1.9 var(--c-body);letter-spacing:.12em;margin:5cqw 0 0;white-space:pre-line}
.lw-page .c-cover.ls-cover .ls-date.ls-date>span{display:block;font:400 1.65cqw/1.8 var(--c-body);letter-spacing:.04em;margin-top:1cqw}
.lw-page .c-cover.ls-cover:not(.ls-compact) .ls-title.ls-title{font-size:max(12px,calc(3.1cqw * var(--c-scale,1)))}
.lw-page .c-cover.ls-cover:not(.ls-compact) .ls-date.ls-date{font-size:max(10px,2.4cqw)}
.ls-signature{width:100%;position:relative;margin-top:6cqw}
.ls-cover .ls-rule{display:block;width:48%;margin:5cqw auto;color:var(--c-accent);font-size:3cqw;line-height:1;position:relative}
.ls-cover .ls-rule:before,.ls-cover .ls-rule:after{content:'';position:absolute;top:50%;width:40%;height:1px;background:currentColor;opacity:.65}.ls-cover .ls-rule:before{left:0}.ls-cover .ls-rule:after{right:0}
.ls-cover .ls-photo{position:relative;min-width:0;width:100%;aspect-ratio:3/4;overflow:hidden;border:1.5cqw solid #fffaf3;box-shadow:1cqw 2cqw 6cqw #30201024;background:var(--c-secondary)}
.lw-page .c-cover.ls-cover .ls-photo .c-photo{position:relative;width:100%;height:100%;margin:0;padding:0;aspect-ratio:auto;min-height:0;border:0;border-radius:0;overflow:hidden;rotate:none;transform:none}
.lw-page .c-cover.ls-cover .ls-photo .photo-zoom{display:block;position:relative;width:100%;height:100%;border-radius:0;margin:0;padding:0}
.lw-page .c-cover.ls-cover .ls-photo img{display:block;width:100%;height:100%;object-fit:cover;object-position:var(--c-cover-position,center) center;border-radius:0}
.ls-cover .ls-photo figcaption{display:none}
.lw-page .c-cover.ls-cover .ls-botanical-top{width:52cqw;height:auto;left:-14cqw;top:-4cqw;rotate:145deg}
.lw-page .c-cover.ls-cover .ls-botanical-bottom{width:48cqw;height:auto;right:-13cqw;bottom:-3cqw;rotate:-15deg}
.ls-cover .ls-cover-deck{position:relative;padding:8cqw 9cqw 10cqw;text-align:center;border-top:1px solid color-mix(in srgb,var(--c-accent) 18%,transparent)}
.lw-page .c-cover.ls-cover .ls-cover-deck .wr-intro{font:400 clamp(14px,2.6cqw,19px)/1.85 var(--c-body);max-width:42ch;margin:0 auto;white-space:pre-line;color:var(--c-ink)}
.ls-cover .ls-subtitle{font:500 clamp(9px,1.6cqw,12px)/1.9 var(--c-body);letter-spacing:.08em;margin:5cqw 0 0;white-space:pre-line;overflow-wrap:anywhere}
.lw-page .c-cover.ls-cover .ls-cover-deck .wr-link{display:inline-flex;font:500 11px/1.8 var(--c-body);min-height:44px;margin-top:4cqw;padding:8px 3px;gap:18px;color:var(--c-accent)}

/* A single large print, softly framed by white flowers. */
.lw-page .c-cover.ls-cover.ls-sage .ls-artboard{background:linear-gradient(#fdfdf8d9,#fdfdf8cc),var(--lw-wallpaper) center/cover,var(--c-bg)}
.lw-page .c-cover.ls-cover.ls-sage .ls-copy{padding-top:13cqw}.lw-page .c-cover.ls-cover.ls-sage .ls-sage-print{width:70%;margin:6cqw auto 4cqw;rotate:-5deg}.lw-page .c-cover.ls-cover.ls-sage .ls-photo{aspect-ratio:4/5}
.lw-page .c-cover.ls-cover.ls-sage .ls-signature{padding:0 4cqw}.lw-page .c-cover.ls-cover.ls-sage .ls-botanical-top{width:62cqw!important;top:-4cqw!important;left:-16cqw!important;rotate:15deg!important}.lw-page .c-cover.ls-cover.ls-sage .ls-botanical-bottom{width:57cqw!important;bottom:0!important;right:-20cqw!important;opacity:.75}

/* Jewel frames keep the source image's natural proportions and aperture. */
.lw-page .c-cover.ls-cover.ls-nocturne .ls-artboard,.lw-page .c-cover.ls-cover.ls-lumiere .ls-artboard{background:var(--c-bg)}
.ls-cover:is(.ls-nocturne,.ls-lumiere):not(.ls-no-photo) .ls-art{display:none}
.ls-cover .ls-jewel{position:relative;width:110%;max-width:none;aspect-ratio:1;margin:0 -5%;isolation:isolate}
.ls-cover .ls-jewel .ls-frame{inset:0;width:100%;height:100%;z-index:2}
.ls-cover .ls-jewel .ls-photo{position:absolute;inset:14% 26% 15% 28%;width:auto;aspect-ratio:auto;border:0;box-shadow:none;border-radius:50%;z-index:1}
.ls-cover .ls-jewel-greenFrame{width:88%;margin:0 6%;aspect-ratio:720/906}
.ls-cover .ls-jewel-greenFrame .ls-photo{inset:13% 22% 14% 20%;border-radius:48% 48% 35% 35%}
.lw-page .c-cover.ls-cover.ls-nocturne .ls-copy,.lw-page .c-cover.ls-cover.ls-lumiere .ls-copy{padding-top:12cqw}.lw-page .c-cover.ls-cover.ls-nocturne .ls-signature,.lw-page .c-cover.ls-cover.ls-lumiere .ls-signature{margin-top:1cqw}
.lw-page .c-cover.ls-cover.ls-nocturne .ls-names.ls-names{font-size:calc(7.4cqw * var(--c-scale,1))}.lw-page .c-cover.ls-cover.ls-lumiere .ls-names.ls-names{font-size:calc(9.3cqw * var(--c-scale,1))}
.ls-cover .ls-jewel-magnolia{width:64%;margin:0 auto;aspect-ratio:680/1201}
.ls-cover .ls-jewel-magnolia .ls-photo{inset:8% 8% 21%;border-radius:50% 50% 0 0}
.lw-page .c-cover.ls-cover.ls-magnolia .ls-copy{padding-block:10cqw 6cqw}.lw-page .c-cover.ls-cover.ls-magnolia .ls-signature{margin-top:-4cqw}.lw-page .c-cover.ls-cover.ls-magnolia .ls-names.ls-names{font-size:calc(8.7cqw * var(--c-scale,1));line-height:1.3}.lw-page .c-cover.ls-cover.ls-magnolia .ls-date.ls-date{margin-top:3cqw}
.lw-page .c-cover.ls-cover.ls-magnolia .ls-botanical-top{opacity:.45}.lw-page .c-cover.ls-cover.ls-magnolia .ls-botanical-bottom{opacity:.4}

/* Damask and porcelain use complete stationery panels, not floating boxes. */
.lw-page .c-cover.ls-cover.ls-maison .ls-artboard{background:var(--c-bg)}
.lw-page .c-cover.ls-cover.ls-maison .ls-copy{padding:24cqw 12cqw 14cqw}
.lw-page .c-cover.ls-cover.ls-maison .ls-brocade-paper{position:relative;display:flex;flex-direction:column;justify-content:center;width:100%;min-height:137cqw;padding:18cqw 6cqw;border:1px solid var(--c-accent);background:var(--c-bg);outline:1px solid color-mix(in srgb,var(--c-accent) 50%,transparent);outline-offset:2cqw}
.lw-page .c-cover.ls-cover.ls-maison .ls-floral-crown{width:92cqw;height:auto;left:4cqw;top:1cqw}.lw-page .c-cover.ls-cover.ls-maison .ls-botanical-top{width:22cqw!important;left:-5cqw!important;top:57cqw!important;rotate:0deg!important}.lw-page .c-cover.ls-cover.ls-maison .ls-botanical-bottom{width:28cqw!important;bottom:8cqw!important;right:-5cqw!important}
.lw-page .c-cover.ls-cover.ls-maison .ls-names.ls-names{font-style:italic;font-size:calc(7.1cqw * var(--c-scale,1))}.lw-page .c-cover.ls-cover.ls-maison .ls-masthead{margin-bottom:7cqw}.lw-page .c-cover.ls-cover.ls-maison .ls-rule{margin-bottom:10cqw}
.lw-page .c-cover.ls-cover.ls-amour .ls-artboard{background:var(--lw-wallpaper) center/100cqw auto repeat,var(--c-bg)}
.lw-page .c-cover.ls-cover.ls-amour .ls-copy{padding:20cqw 7cqw}.lw-page .c-cover.ls-cover.ls-amour .ls-porcelain-paper{position:relative;display:flex;flex-direction:column;justify-content:center;min-height:135cqw;width:100%;padding:18cqw 12cqw;background:linear-gradient(var(--c-bg),var(--c-bg)) center/81% 86% no-repeat}
.lw-page .c-cover.ls-cover.ls-amour .ls-porcelain-frame{inset:0;width:100%;height:100%;object-fit:fill!important}.lw-page .c-cover.ls-cover.ls-amour .ls-names.ls-names{font-size:calc(7cqw * var(--c-scale,1))}.lw-page .c-cover.ls-cover.ls-amour .ls-masthead{margin-bottom:10cqw}

/* Floral specimens and traditional relief remain large, off the reading area. */
.lw-page .c-cover.ls-cover.ls-silk .ls-copy{padding:20cqw 10cqw 18cqw;align-items:flex-start}.lw-page .c-cover.ls-cover.ls-silk .ls-masthead{width:62%;text-align:left}.lw-page .c-cover.ls-cover.ls-silk .ls-silk-stem{width:60cqw;height:auto;top:0;right:-20cqw;opacity:.8}
.lw-page .c-cover.ls-cover.ls-silk .ls-silk-vows{width:77%;margin-top:54cqw}.lw-page .c-cover.ls-cover.ls-silk .ls-names.ls-names{align-items:flex-start;text-align:left;font-size:calc(9.3cqw * var(--c-scale,1))}.lw-page .c-cover.ls-cover.ls-silk .ls-names i{align-self:center}.lw-page .c-cover.ls-cover.ls-silk .ls-date{text-align:left}
.lw-page .c-cover.ls-cover.ls-heritage .ls-copy{padding-top:25cqw}.lw-page .c-cover.ls-cover.ls-heritage .ls-happiness{width:10cqw;height:10cqw;left:45cqw;top:8cqw}.lw-page .c-cover.ls-cover.ls-heritage .ls-dragon{width:84cqw;height:145cqw;left:8cqw;top:18cqw;opacity:.16;filter:brightness(0) saturate(100%) invert(83%) sepia(45%) saturate(442%)}
.lw-page .c-cover.ls-cover.ls-heritage .ls-heritage-vows{width:100%;margin-top:23cqw}.lw-page .c-cover.ls-cover.ls-heritage .ls-names.ls-names{font-size:calc(12cqw * var(--c-scale,1));color:var(--c-accent)}.lw-page .c-cover.ls-cover.ls-heritage .ls-date{margin-top:12cqw!important}.lw-page .c-cover.ls-cover.ls-heritage .ls-masthead{margin-bottom:0}
.lw-page .c-cover.ls-cover.ls-chateau .ls-copy{padding-top:16cqw}.lw-page .c-cover.ls-cover.ls-chateau .ls-chateau-vows{width:100%;margin-top:14cqw}.lw-page .c-cover.ls-cover.ls-chateau .ls-chateau{width:120cqw;height:auto;left:-10cqw;bottom:-1cqw;opacity:.9}.lw-page .c-cover.ls-cover.ls-chateau .ls-botanical-top{width:36cqw!important;opacity:.45}.lw-page .c-cover.ls-cover.ls-chateau .ls-botanical-bottom{display:none}.lw-page .c-cover.ls-cover.ls-chateau .ls-names.ls-names{font-style:italic}

/* Floral photo compositions. The prints are sized for a portrait, not a thumbnail. */
.lw-page .c-cover.ls-cover.ls-sakura .ls-copy{padding:12cqw 8cqw 9cqw}.lw-page .c-cover.ls-cover.ls-sakura .ls-masthead{padding-left:22cqw;margin-bottom:11cqw}.lw-page .c-cover.ls-cover.ls-sakura .ls-cherry{width:79cqw;height:auto;left:-12cqw;top:-10cqw}.lw-page .c-cover.ls-cover.ls-sakura .ls-cherry-small{width:25cqw;height:auto;right:-10cqw;bottom:8cqw;opacity:.5}
.lw-page .c-cover.ls-cover.ls-sakura .ls-hanging-print{width:65%;margin:5cqw 0 3cqw 21%;rotate:9deg}.lw-page .c-cover.ls-cover.ls-sakura .ls-photo{border-width:2cqw}.lw-page .c-cover.ls-cover.ls-sakura .ls-signature{margin-top:6cqw}.lw-page .c-cover.ls-cover.ls-sakura .ls-names.ls-names{font-size:calc(9.5cqw * var(--c-scale,1))}
.lw-page .c-cover.ls-cover.ls-sunlit .ls-copy{padding-top:14cqw;align-items:flex-end}.lw-page .c-cover.ls-cover.ls-sunlit .ls-masthead{width:76%;text-align:right}.lw-page .c-cover.ls-cover.ls-sunlit .ls-sun-vows{width:78%;margin-top:17cqw;position:relative}.lw-page .c-cover.ls-cover.ls-sunlit .ls-names.ls-names{font-size:calc(8.6cqw * var(--c-scale,1));font-style:italic;align-items:flex-end;text-align:right}.lw-page .c-cover.ls-cover.ls-sunlit .ls-names i{align-self:center}.lw-page .c-cover.ls-cover.ls-sunlit .ls-date{text-align:right}
.lw-page .c-cover.ls-cover.ls-sunlit .ls-sunflower{width:79cqw;height:auto;left:-16cqw;bottom:-8cqw}.lw-page .c-cover.ls-cover.ls-sunlit .ls-sunflower-small{width:22cqw;height:auto;right:-5cqw;bottom:0;opacity:.4}
.lw-page .c-cover.ls-cover.ls-hydrangea .ls-copy{padding-top:12cqw}.lw-page .c-cover.ls-cover.ls-hydrangea .ls-envelope{position:relative;width:88%;aspect-ratio:1;margin:12cqw auto 4cqw}.lw-page .c-cover.ls-cover.ls-hydrangea .ls-envelope .ls-photo{position:absolute;width:63%;left:17%;top:-5%;aspect-ratio:3/4;rotate:-9deg;border-width:2cqw}.lw-page .c-cover.ls-cover.ls-hydrangea .ls-envelope-front{width:100%;height:auto;bottom:0;left:0;z-index:3}.lw-page .c-cover.ls-cover.ls-hydrangea .ls-botanical-top{width:34cqw!important;top:43cqw!important;left:-7cqw!important;rotate:0deg!important}.lw-page .c-cover.ls-cover.ls-hydrangea .ls-botanical-bottom{width:65cqw!important;bottom:-7cqw!important;right:-14cqw!important;opacity:.5}.lw-page .c-cover.ls-cover.ls-hydrangea .ls-names.ls-names{font-size:calc(8cqw * var(--c-scale,1))}
.lw-page .c-cover.ls-cover.ls-terracotta .ls-copy{padding-top:24cqw}.lw-page .c-cover.ls-cover.ls-terracotta .ls-masthead{width:64%;margin-left:-18cqw;margin-bottom:12cqw}.lw-page .c-cover.ls-cover.ls-terracotta .ls-boho{width:89cqw;height:auto;right:-5cqw;top:-20cqw}.lw-page .c-cover.ls-cover.ls-terracotta .ls-boho-leaf{width:28cqw;height:auto;right:-14cqw;bottom:-3cqw;opacity:.5}
.lw-page .c-cover.ls-cover.ls-terracotta .ls-autumn-prints{display:flex;align-items:flex-start;width:100%;padding:0 4cqw 4cqw;margin:0}.lw-page .c-cover.ls-cover.ls-terracotta .ls-photo{flex:0 0 56%;rotate:-10deg;border-color:#ede2d2;border-width:1.4cqw}.lw-page .c-cover.ls-cover.ls-terracotta .ls-photo:nth-child(2){flex-basis:52%;margin:26% 0 0 -10%;rotate:10deg}.lw-page .c-cover.ls-cover.ls-terracotta .ls-photo:only-child{margin-inline:auto;flex-basis:82%;rotate:-5deg}.lw-page .c-cover.ls-cover.ls-terracotta .ls-signature{margin-top:0}.lw-page .c-cover.ls-cover.ls-terracotta .ls-names.ls-names{font-size:calc(7.8cqw * var(--c-scale,1))}
.lw-page .c-cover.ls-cover.ls-leaves .ls-copy{padding-top:16cqw}.lw-page .c-cover.ls-cover.ls-leaves .ls-leaf-diptych{position:relative;display:flex;align-items:flex-start;width:100%;padding:6cqw 0 4cqw}.lw-page .c-cover.ls-cover.ls-leaves .ls-photo{flex:0 0 56%;rotate:-9deg;border-color:#b9c3a0}.lw-page .c-cover.ls-cover.ls-leaves .ls-photo:nth-child(2){flex-basis:52%;margin:26% 0 0 -10%;rotate:9deg}.lw-page .c-cover.ls-cover.ls-leaves .ls-photo:only-child{flex-basis:83%;margin-inline:auto}.lw-page .c-cover.ls-cover.ls-leaves .ls-names.ls-names{font-style:italic;font-size:calc(7.7cqw * var(--c-scale,1))}.lw-page .c-cover.ls-cover.ls-leaves .ls-botanical-top{width:55cqw!important;left:auto!important;right:-10cqw;top:-7cqw!important;rotate:-20deg!important}.lw-page .c-cover.ls-cover.ls-leaves .ls-botanical-bottom{width:50cqw!important;right:auto!important;left:-20cqw;bottom:-8cqw!important;rotate:160deg!important}

/* A letter, a lotus plaque, phoenix silhouettes and two garden medallions. */
.lw-page .c-cover.ls-cover.ls-lavender .ls-copy{padding-top:15cqw}.lw-page .c-cover.ls-cover.ls-lavender .ls-letter-pocket{position:relative;width:100%;margin:16cqw 0 6cqw;padding:0 4cqw 23cqw}.lw-page .c-cover.ls-cover.ls-lavender .ls-letter-note{position:relative;min-height:79cqw;padding:11cqw 3cqw 15cqw;background:#fffaf5;border:1px solid var(--c-secondary);box-shadow:0 2cqw 6cqw #33204018;rotate:-5deg}.lw-page .c-cover.ls-cover.ls-lavender .ls-letter-note:before{content:'';position:absolute;inset:2cqw;border:1px solid var(--c-secondary);pointer-events:none}.lw-page .c-cover.ls-cover.ls-lavender .ls-envelope-front{bottom:0;left:0;width:100%;height:auto;z-index:3}.lw-page .c-cover.ls-cover.ls-lavender .ls-names.ls-names{font-size:calc(8.5cqw * var(--c-scale,1))}.lw-page .c-cover.ls-cover.ls-lavender .ls-botanical-top{width:48cqw!important;top:20cqw!important;left:-19cqw!important;rotate:30deg!important}.lw-page .c-cover.ls-cover.ls-lavender .ls-botanical-bottom{width:43cqw!important;right:-16cqw!important;bottom:13cqw!important;rotate:-20deg!important}
.lw-page .c-cover.ls-cover.ls-lotus .ls-copy{padding:24cqw 13cqw 35cqw}.lw-page .c-cover.ls-cover.ls-lotus .ls-lotus-vows{width:100%;margin-top:12cqw;border-block:1px solid color-mix(in srgb,var(--c-accent) 35%,transparent);padding:10cqw 0 9cqw}.lw-page .c-cover.ls-cover.ls-lotus .ls-lotus-top{width:39cqw;height:auto;left:-8cqw;top:-6cqw;rotate:20deg}.lw-page .c-cover.ls-cover.ls-lotus .ls-lotus-bottom{width:70cqw;height:auto;right:-14cqw;bottom:-10cqw}.lw-page .c-cover.ls-cover.ls-lotus .ls-names.ls-names{font-size:calc(9cqw * var(--c-scale,1))}.lw-page .c-cover.ls-cover.ls-lotus .ls-artboard:after{content:'';position:absolute;inset:6cqw;border:1px solid color-mix(in srgb,var(--c-accent) 30%,transparent);pointer-events:none}
.lw-page .c-cover.ls-cover.ls-phoenix .ls-copy{padding-top:13cqw}.lw-page .c-cover.ls-cover.ls-phoenix .ls-phoenix-vows{width:100%;margin-top:9cqw}.lw-page .c-cover.ls-cover.ls-phoenix .ls-names.ls-names{font-size:calc(6.8cqw * var(--c-scale,1));text-transform:uppercase}.lw-page .c-cover.ls-cover.ls-phoenix .ls-names i{font-size:5cqw}.lw-page .c-cover.ls-cover.ls-phoenix .ls-double-happiness{display:block;font:400 23cqw/1.3 serif;color:var(--c-ink);margin:17cqw 0 9cqw}.lw-page .c-cover.ls-cover.ls-phoenix .ls-phoenix-left{width:41cqw;height:auto;left:-9cqw;bottom:-7cqw}.lw-page .c-cover.ls-cover.ls-phoenix .ls-phoenix-right{width:36cqw;height:auto;right:-12cqw;top:66cqw;transform:scaleX(-1)}
.lw-page .c-cover.ls-cover.ls-violet .ls-copy{padding-top:17cqw}.lw-page .c-cover.ls-cover.ls-violet .ls-violet-vows{width:100%;margin-top:8cqw}.lw-page .c-cover.ls-cover.ls-violet .ls-violet-print{width:88%;margin:10cqw auto 2cqw}.lw-page .c-cover.ls-cover.ls-violet .ls-photo{aspect-ratio:4/3;border:.6cqw solid var(--c-accent)}.lw-page .c-cover.ls-cover.ls-violet .ls-names.ls-names{font-size:calc(11cqw * var(--c-scale,1))}.lw-page .c-cover.ls-cover.ls-violet .ls-botanical-top{width:50cqw!important;left:-15cqw!important;top:-9cqw!important;rotate:10deg!important}.lw-page .c-cover.ls-cover.ls-violet .ls-botanical-bottom{width:47cqw!important;right:-14cqw!important;bottom:-6cqw!important;rotate:190deg!important}
.lw-page .c-cover.ls-cover.ls-citrus .ls-copy{padding-top:17cqw}.lw-page .c-cover.ls-cover.ls-citrus .ls-citrus-medallion{width:100%;min-height:98cqw;padding:15cqw 5cqw 10cqw;margin:16cqw auto 3cqw;display:flex;flex-direction:column;justify-content:center;border-radius:50% 50% 4cqw 4cqw;border:1px solid var(--c-accent);background:color-mix(in srgb,var(--c-bg) 95%,transparent)}.lw-page .c-cover.ls-cover.ls-citrus .ls-names.ls-names{font-size:calc(8.3cqw * var(--c-scale,1));font-style:italic}.lw-page .c-cover.ls-cover.ls-citrus .ls-botanical-top{width:48cqw!important;top:39cqw!important;left:-16cqw!important;rotate:0deg!important}.lw-page .c-cover.ls-cover.ls-citrus .ls-botanical-bottom{width:38cqw!important;bottom:9cqw!important;right:-10cqw!important;rotate:180deg!important}
.lw-page .c-cover.ls-cover.ls-doves .ls-copy{padding-top:17cqw}.lw-page .c-cover.ls-cover.ls-doves .ls-doves-announcement{width:100%;margin-top:8cqw}.lw-page .c-cover.ls-cover.ls-doves .ls-doves{position:relative!important;display:block;width:57cqw;height:auto;margin:0 auto 10cqw}.lw-page .c-cover.ls-cover.ls-doves .ls-names.ls-names{font-size:calc(10cqw * var(--c-scale,1))}.lw-page .c-cover.ls-cover.ls-doves .ls-botanical-top{width:24cqw!important;left:-8cqw!important;top:65cqw!important;rotate:0deg!important;opacity:.5}.lw-page .c-cover.ls-cover.ls-doves .ls-botanical-bottom{width:26cqw!important;right:-8cqw!important;bottom:0!important;opacity:.6}

/* Crimson Knot: a red announcement panel held by an illustrated silk cord. */
.lw-page .c-cover.ls-cover.ls-crimson-knot .ls-copy{padding:10cqw 9cqw 8cqw}
.lw-page .c-cover.ls-cover.ls-crimson-knot .ls-artboard{background:var(--c-bg)}
.ls-crimson-panel{position:relative;width:100%;padding:5cqw 5cqw 7cqw;margin:5cqw 0 0;background:var(--c-ink);color:var(--c-bg);border-radius:40cqw 40cqw 2cqw 2cqw;outline:1px solid var(--c-accent);outline-offset:2cqw}
.ls-crimson-seal{display:block;font:400 18cqw/1.4 serif;margin-bottom:4cqw;color:#efcc90}
.lw-page .c-cover.ls-cover.ls-crimson-knot .ls-names.ls-names{font-size:calc(7cqw * var(--c-scale,1));color:var(--c-bg)}
.lw-page .c-cover.ls-cover.ls-crimson-knot :is(.ls-names.ls-names i,.ls-rule,.ls-date.ls-date){color:#efcc90}
.lw-page .c-cover.ls-cover.ls-crimson-knot .ls-knot{width:62%;margin:4cqw auto 0;color:var(--c-ink)}
.ls-knot-art{display:block;width:100%;height:auto}

/* Pearl: a photographic magazine front with a masthead and ruled colophon. */
.lw-page .c-cover.ls-cover.ls-pearl-editorial .ls-copy{padding:9cqw 7cqw 8cqw}
.ls-issue-heading{width:100%;border-block:1px solid var(--c-ink);padding:4cqw 0 6cqw}
.ls-issue-heading .ls-masthead{margin-bottom:3cqw}
.ls-issue-script{display:block;font:italic 400 9cqw/1 var(--c-heading);letter-spacing:-.045em}
.lw-page .c-cover.ls-cover.ls-pearl-editorial .ls-editorial-photo{position:relative;width:100%;margin:6cqw auto 5cqw}
.lw-page .c-cover.ls-cover.ls-pearl-editorial .ls-photo{aspect-ratio:4/3.4;border:0;box-shadow:none}
.lw-page .c-cover.ls-cover.ls-pearl-editorial .ls-photo img{filter:grayscale(1)}
.ls-editorial-caption{width:100%;border-top:1px solid var(--c-ink);padding-top:4cqw}
.lw-page .c-cover.ls-cover.ls-pearl-editorial .ls-names.ls-names{font-size:calc(6.7cqw * var(--c-scale,1));line-height:1.2}
.lw-page .c-cover.ls-cover.ls-pearl-editorial .ls-names.ls-names i{font-size:4cqw;margin:1cqw 0}
.lw-page .c-cover.ls-cover.ls-pearl-editorial .ls-date.ls-date{margin-top:3cqw}
.lw-page .c-cover.ls-cover.ls-pearl-editorial.ls-no-photo .ls-editorial-photo{display:none}
.lw-page .c-cover.ls-cover.ls-pearl-editorial.ls-no-photo .ls-editorial-caption{margin-top:30cqw;padding-block:10cqw}

/* Azure Vow: a scalloped blue window and hand-painted porcelain flowers. */
.lw-page .c-cover.ls-cover.ls-azure-vow .ls-copy{padding:34cqw 11cqw 10cqw}
.lw-page .c-cover.ls-cover.ls-azure-vow .ls-masthead{margin-bottom:3cqw}
.lw-page .c-cover.ls-cover.ls-azure-vow .ls-azure-crown{width:78cqw;top:3cqw;left:11cqw;height:auto}
.lw-page .c-cover.ls-cover.ls-azure-vow .ls-azure-stem{width:22cqw;height:auto;right:-8cqw;bottom:-8cqw;rotate:-12deg}
.ls-azure-window{position:relative;width:78%;margin:2cqw auto 4cqw;padding:3cqw;border:1px solid var(--c-accent);border-radius:45cqw 45cqw 1cqw 1cqw;background:var(--c-secondary);outline:1px solid var(--c-ink);outline-offset:1.5cqw}
.lw-page .c-cover.ls-cover.ls-azure-vow .ls-photo{aspect-ratio:4/4.4;border:0;border-radius:40cqw 40cqw 0 0;box-shadow:none}
.ls-window-sun{position:absolute;left:calc(50% - 4cqw);top:-5cqw;width:8cqw;background:var(--c-bg);color:var(--c-accent);font-size:7cqw;line-height:1.3}
.ls-azure-caption{width:100%}
.lw-page .c-cover.ls-cover.ls-azure-vow .ls-names.ls-names{font-size:calc(7.4cqw * var(--c-scale,1));font-style:italic}
.lw-page .c-cover.ls-cover.ls-azure-vow .ls-rule{margin:3cqw auto}
.lw-page .c-cover.ls-cover.ls-azure-vow .ls-date.ls-date{margin-top:3cqw}
.lw-page .c-cover.ls-cover.ls-azure-vow.ls-no-photo .ls-azure-window{display:none}
.lw-page .c-cover.ls-cover.ls-azure-vow.ls-no-photo .ls-azure-caption{border:1px solid var(--c-accent);border-radius:45cqw 45cqw 1cqw 1cqw;padding:24cqw 4cqw 12cqw;margin-top:8cqw}

/* Albums follow each new front without reserving or duplicating extra slots. */
.lw-page .c-gallery-lw-crimsonledger .c-gallery{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:22px;padding:20px 0;border-block:1px solid var(--c-accent)}
.lw-page .c-gallery-lw-crimsonledger .c-photo{border:1px solid var(--c-accent);padding:7px;background:var(--c-bg)}
.lw-page .c-gallery-lw-pearljournal .c-gallery{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:24px}
.lw-page .c-gallery-lw-pearljournal .c-photo:first-child{grid-column:1/-1}
.lw-page .c-gallery-lw-pearljournal .c-photo img{filter:grayscale(1)}
.lw-page .c-gallery-lw-azurearches .c-gallery{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:24px}
.lw-page .c-gallery-lw-azurearches .c-photo{border:1px solid var(--c-accent);padding:7px;border-radius:120px 120px 0 0;overflow:hidden}
.lw-page .c-gallery-lw-azurearches :is(.photo-zoom,.c-photo img,.c-photo-empty){border-radius:inherit}

/* Empty and long-name cards grow naturally; no hidden uploaded photographs. */
.ls-cover.ls-no-photo :is(.ls-sage-print,.ls-hanging-print,.ls-autumn-prints,.ls-leaf-diptych,.ls-violet-print){display:none}
.ls-cover.ls-no-photo :is(.ls-signature,.ls-violet-vows){margin-top:22cqw}
.lw-page .c-cover.ls-cover.ls-no-photo .ls-copy{justify-content:center}
.lw-page .c-cover.ls-cover.ls-no-photo.ls-hydrangea .ls-envelope{display:none}
.lw-page .c-cover.ls-cover.ls-no-photo.ls-sakura .ls-masthead{padding-left:0}
.lw-page .c-cover.ls-cover.ls-no-photo.ls-terracotta .ls-masthead{margin-left:0}

/* Honest tall thumbnails: the same front page, without the following letter. */
.collection-cover:has(.ls-cover),.template-preview:has(.ls-cover),.seo-template-cover:has(.ls-cover){aspect-ratio:4/7!important}
.collection-thumb:has(.ls-cover) .c-miniature{height:1400px}
.collection-thumb .c-miniature .c-cover.ls-cover{width:800px;max-width:none;min-height:1400px;height:1400px;padding:0;border:0}
.collection-thumb .c-miniature .ls-cover .ls-copy{min-height:175cqw}
.collection-thumb .c-miniature .ls-cover .ls-art-image{object-fit:contain}
@media(max-width:600px){
 .lw-page .c-cover.ls-cover .ls-eyebrow{font-size:max(8px,1.75cqw)}
 .lw-page .c-cover.ls-cover .ls-date.ls-date>span{font-size:max(8px,1.65cqw)}
}

/* Bạch Diệp: a clean botanical portrait, with the names above the photograph. */
.lw-page .c-cover.ls-cover.ls-jade-garden .ls-copy{padding:13cqw 10cqw 10cqw}
.ls-jade-garden .ls-masthead{margin-bottom:7cqw}
.ls-jade-names{position:relative;width:100%;padding-inline:2cqw}
.lw-page .c-cover.ls-cover.ls-jade-garden .ls-names.ls-names{font-size:calc(6.8cqw * var(--c-scale,1));line-height:1.4}
.ls-jade-portrait{position:relative;width:83%;margin:8cqw auto 0;padding-bottom:8cqw}
.lw-page .c-cover.ls-cover.ls-jade-garden .ls-photo{aspect-ratio:4/4.8;border:0;border-radius:36cqw 36cqw 0 0;box-shadow:none}
.ls-jade-caption{position:absolute;left:0;right:0;bottom:0;font:italic 400 3.8cqw/1.6 var(--c-heading);letter-spacing:.02em;color:var(--c-ink)}
.lw-page .c-cover.ls-cover.ls-jade-garden .ls-jade-blossom{width:51cqw;height:auto;right:-17cqw;bottom:14cqw;rotate:-22deg}
.lw-page .c-cover.ls-cover.ls-jade-garden .ls-jade-leaf{width:33cqw;height:auto;left:-17cqw;top:4cqw;rotate:25deg;opacity:.3}
.lw-page .c-cover.ls-cover.ls-jade-garden .ls-date.ls-date{margin-top:5cqw}
.ls-cover.ls-no-photo.ls-jade-garden .ls-jade-portrait{display:none}
.lw-page .c-cover.ls-cover.ls-no-photo.ls-jade-garden .ls-jade-names{margin-block:16cqw}

/* Gấm Son: a gold seal, open typography and a dragon/phoenix watermark. */
.lw-page .c-cover.ls-cover.ls-garnet-vow .ls-copy{padding:14cqw 11cqw 12cqw}
.ls-garnet-vow .ls-masthead{margin-bottom:10cqw}
.ls-garnet-emblem{position:relative;display:grid;place-items:center;width:26cqw;height:26cqw;margin:2cqw auto 10cqw;border:1px solid color-mix(in srgb,var(--c-accent) 60%,transparent);border-radius:50%}
.ls-garnet-emblem:before,.ls-garnet-emblem:after{content:'';position:absolute;top:50%;width:12cqw;height:1px;background:var(--c-accent);opacity:.55}
.ls-garnet-emblem:before{right:calc(100% + 5cqw)}.ls-garnet-emblem:after{left:calc(100% + 5cqw)}
.lw-page .c-cover.ls-cover .ls-garnet-seal{position:static;width:14cqw;height:14cqw;object-fit:contain}
.ls-garnet-names{width:100%;margin:0 auto}
.lw-page .c-cover.ls-cover.ls-garnet-vow .ls-names.ls-names{font-size:calc(9.3cqw * var(--c-scale,1));line-height:1.22}
.lw-page .c-cover.ls-cover.ls-garnet-vow .ls-names.ls-names i{font-size:6cqw;margin:3cqw 0}
.lw-page .c-cover.ls-cover.ls-garnet-vow .ls-garnet-watermark{width:76cqw;height:auto;left:12cqw;bottom:-36cqw;filter:brightness(0) saturate(100%) invert(85%) sepia(33%) saturate(520%);opacity:.12}
.ls-garnet-colophon{margin:12cqw 0 0;font:400 2cqw/2.2 var(--c-heading);letter-spacing:.22em;color:var(--c-accent)}
.lw-page .c-cover.ls-cover.ls-garnet-vow .ls-date.ls-date{margin-top:3cqw}

/* Hồng Duyên: red birds at opposite corners, an open white announcement. */
.lw-page .c-cover.ls-cover.ls-scarlet-phoenix .ls-copy{padding:16cqw 13cqw 15cqw}
.ls-scarlet-phoenix .ls-masthead{margin-bottom:9cqw}
.ls-scarlet-emblem{position:relative;width:100%;margin:0 auto 10cqw;color:var(--c-ink)}
.ls-scarlet-emblem>span{display:block;font:400 32cqw/1.2 serif}
.ls-scarlet-emblem>small{display:block;margin-top:3cqw;font:500 1.7cqw/1.8 var(--c-body);letter-spacing:.18em}
.ls-scarlet-names{position:relative;width:100%;margin-block:3cqw}
.lw-page .c-cover.ls-cover.ls-scarlet-phoenix .ls-names.ls-names{font-size:calc(6.8cqw * var(--c-scale,1));line-height:1.55}
.lw-page .c-cover.ls-cover.ls-scarlet-phoenix .ls-scarlet-bird-left{width:29cqw;height:auto;left:-3cqw;top:3cqw;rotate:12deg}
.lw-page .c-cover.ls-cover.ls-scarlet-phoenix .ls-scarlet-bird-right{width:32cqw;height:auto;right:-3cqw;bottom:1cqw;transform:scaleX(-1);rotate:-10deg}
.lw-page .c-cover.ls-cover.ls-scarlet-phoenix .ls-rule{margin-block:6cqw}
.lw-page .c-cover.ls-cover.ls-scarlet-phoenix .ls-date.ls-date{margin-top:4cqw}

/* Three photo journals; every uploaded image remains a separate, editable slot. */
.lw-page .c-gallery-lw-jadejournal .c-gallery{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:28px 18px}
.lw-page .c-gallery-lw-jadejournal .c-photo{aspect-ratio:3/4;padding:0;border:0}
.lw-page .c-gallery-lw-jadejournal .c-photo:first-child{grid-column:1/-1;aspect-ratio:4/3}
.lw-page .c-gallery-lw-garnetportraits .c-gallery{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:24px}
.lw-page .c-gallery-lw-garnetportraits .c-photo{aspect-ratio:4/5;padding:6px;border:1px solid color-mix(in srgb,var(--c-accent) 55%,transparent)}
.lw-page .c-gallery-lw-garnetportraits .c-photo:nth-child(3n){grid-column:1/-1;aspect-ratio:3/2}
.lw-page .c-gallery-lw-scarletscroll .c-gallery{display:grid;grid-template-columns:minmax(0,1fr);gap:36px}
.lw-page .c-gallery-lw-scarletscroll .c-photo{width:86%;aspect-ratio:4/3;border:0;padding:0}
.lw-page .c-gallery-lw-scarletscroll .c-photo:nth-child(even){justify-self:end}

/* Central double-line stationery for both phoenix editions. */
.lw-page .c-cover.ls-cover:is(.ls-phoenix,.ls-scarlet-phoenix) .ls-copy{padding:14cqw 13cqw}
.ls-ceremony-frame{position:relative;width:100%;min-height:147cqw;padding:10cqw 4cqw;border:1px solid var(--c-accent);background:color-mix(in srgb,var(--c-bg) 94%,transparent);display:flex;flex-direction:column;align-items:center;justify-content:center}
.ls-ceremony-frame:before{content:'';position:absolute;inset:1.6cqw;border:1px solid color-mix(in srgb,var(--c-accent) 48%,transparent);pointer-events:none}
.lw-page .c-cover.ls-cover.ls-phoenix .ls-phoenix-vows{margin-top:5cqw}
.lw-page .c-cover.ls-cover.ls-phoenix .ls-double-happiness{font-size:33cqw;margin:10cqw 0 7cqw}
.lw-page .c-cover.ls-cover.ls-scarlet-phoenix .ls-scarlet-emblem{margin-bottom:5cqw}
.lw-page .c-cover.ls-cover.ls-scarlet-phoenix .ls-names.ls-names{font-size:calc(6.4cqw * var(--c-scale,1))}
.lw-page .c-cover.ls-cover:is(.ls-phoenix,.ls-scarlet-phoenix) .ls-art{z-index:3}

/* Olive sprigs frame opposite corners: upper right and lower left. */
.lw-page .c-cover.ls-cover.ls-leaves .ls-botanical-top{width:38cqw!important;left:auto!important;right:-5cqw;top:4cqw!important;rotate:35deg!important;transform-origin:center}
.lw-page .c-cover.ls-cover.ls-leaves .ls-botanical-bottom{width:32cqw!important;right:auto!important;left:-9cqw;bottom:-3cqw!important;top:auto;rotate:215deg!important;transform-origin:center}

/* Engraved flower artwork; both editions share their frame in wedding-design.css. */
.lw-page .c-cover.ls-cover.ls-navy-bloom .ls-navy-background{inset:0;width:100%;height:150cqw;object-fit:cover;object-position:center top;mask-image:linear-gradient(#000 80%,transparent)}
.lw-page.lw-skin-navy-bloom #memories .c-gallery{gap:48px 22px}
.lw-page.lw-skin-navy-bloom #memories .c-photo{padding:6px;border:1px solid var(--c-accent);aspect-ratio:3/4}
.lw-page.lw-skin-navy-bloom #memories .c-photo:nth-child(3n){grid-column:1/-1;width:88%;justify-self:center;aspect-ratio:3/2}

/* A garden covers the whole invitation; pale paper keeps the copy readable. */
.lw-page.lw-skin-sage-memories .c-invitation{background:var(--lw-wallpaper) center top/100% auto repeat-y,var(--c-bg)}
.lw-page.lw-skin-sage-memories .c-cover.ls-cover,.lw-page.lw-skin-sage-memories .ls-artboard{background:var(--lw-wallpaper) center/cover,var(--c-bg)}
.lw-page .c-cover.ls-cover.ls-sage-memories .ls-copy{padding:10cqw 9cqw;gap:5cqw}
.ls-garden-heading{width:88%;padding:5cqw 3cqw 3cqw;background:color-mix(in srgb,var(--c-bg) 95%,transparent);border:1px solid color-mix(in srgb,var(--c-accent) 35%,transparent)}
.ls-sage-memories .ls-masthead{margin:0}
.ls-sage-collage{display:flex;align-items:flex-start;width:100%;padding:6cqw 1cqw 5cqw}
.lw-page .c-cover.ls-cover.ls-sage-memories .ls-photo{flex:0 0 57%;rotate:-9deg;border-width:1.8cqw 1.8cqw 6cqw;border-color:#fffdf6;aspect-ratio:3/4}
.lw-page .c-cover.ls-cover.ls-sage-memories .ls-photo:nth-child(2){flex-basis:55%;margin:26% 0 0 -12%;rotate:10deg}
.lw-page .c-cover.ls-cover.ls-sage-memories .ls-photo:only-child{flex-basis:76%;margin-inline:auto;rotate:-5deg}
.ls-garden-paper{width:92%;padding:7cqw 4cqw;background:color-mix(in srgb,var(--c-bg) 96%,transparent);outline:1px solid color-mix(in srgb,var(--c-accent) 35%,transparent);outline-offset:-2cqw;box-shadow:0 2cqw 5cqw #263c2420;rotate:-2deg}
.ls-garden-paper .ls-signature{margin:0}
.lw-page .c-cover.ls-cover.ls-sage-memories .ls-names.ls-names{font-size:calc(9.4cqw * var(--c-scale,1))}
.lw-page .c-cover.ls-cover.ls-sage-memories .ls-botanical-top{width:39cqw;left:-16cqw;top:8cqw;rotate:15deg}
.lw-page .c-cover.ls-cover.ls-sage-memories .ls-botanical-bottom{width:36cqw;right:-15cqw;bottom:1cqw;rotate:-20deg}
.lw-skin-sage-memories .ls-cover-deck{background:color-mix(in srgb,var(--c-bg) 94%,transparent);margin:0 6% 6%;border:1px solid color-mix(in srgb,var(--c-accent) 28%,transparent)}
body.wedding-page.lw-page.lw-skin-sage-memories :is(.c-section,.wedding-gifts){margin-inline:4%;background:color-mix(in srgb,var(--c-bg) 95%,transparent)}
.lw-page.lw-skin-sage-memories #memories{background:color-mix(in srgb,var(--c-bg) 80%,transparent)}
.lw-page.lw-skin-sage-memories #memories .c-gallery{padding:24px 10px 55px;gap:50px 24px}
.lw-page.lw-skin-sage-memories #memories .c-photo{padding:7px 7px 28px;background:#fffdf6;box-shadow:0 8px 22px #19371b30;rotate:-6deg;aspect-ratio:4/5}
.lw-page.lw-skin-sage-memories #memories .c-photo:nth-child(even){margin-top:30%;rotate:7deg;aspect-ratio:1}
.lw-page.lw-skin-sage-memories #memories figcaption{top:auto;bottom:5px;left:8px;right:8px;color:#304a39;font-size:9px;max-height:2.7em}
.ls-cover.ls-no-photo.ls-sage-memories .ls-sage-collage{display:none}
.ls-cover.ls-no-photo.ls-sage-memories .ls-garden-paper{margin-top:15cqw}
.ls-cover.ls-no-photo.ls-sage-memories .ls-signature{margin-top:0}

/* Keep the complete names and date inside the shared 4:7 catalog cover. */
.lw-page .c-cover.ls-cover.ls-sage-memories .ls-copy{padding:8cqw 9cqw;gap:3cqw}
.ls-sage-collage{padding:5cqw 1cqw 3cqw}
.lw-page .c-cover.ls-cover.ls-sage-memories .ls-photo{flex-basis:55%;aspect-ratio:4/4.6}
.lw-page .c-cover.ls-cover.ls-sage-memories .ls-photo:nth-child(2){flex-basis:53%;margin-top:20%}
.ls-garden-paper{padding-block:5cqw}
.lw-page .c-cover.ls-cover.ls-sage-memories .ls-names.ls-names{font-size:calc(8.6cqw * var(--c-scale,1))}
.lw-page .c-cover.ls-cover.ls-phoenix .ls-names.ls-names{font-size:calc(6.2cqw * var(--c-scale,1))}
.lw-page .c-cover.ls-cover.ls-phoenix :is(.ls-phoenix-left,.ls-phoenix-right){width:36cqw;height:auto;top:auto;bottom:-3cqw}
.lw-page .c-cover.ls-cover.ls-phoenix .ls-phoenix-left{left:-7cqw}
.lw-page .c-cover.ls-cover.ls-phoenix .ls-phoenix-right{right:-7cqw}
.lw-page .c-cover.ls-cover.ls-scarlet-phoenix .ls-scarlet-bird-right{width:27cqw;right:-2cqw;bottom:-2cqw}
.lw-page .c-cover.ls-cover.ls-leaves .ls-photo{flex-basis:51%;aspect-ratio:1;rotate:-10deg}
.lw-page .c-cover.ls-cover.ls-leaves .ls-photo:nth-child(2){flex-basis:51%;margin:42% 0 0 -5%;rotate:-10deg}

/* Keep the complete central flower above the wine edition's arch. */
.lw-page .c-cover.ls-cover.ls-wine-bloom .ls-wine-crown{width:94cqw;height:auto;left:3cqw;top:-1cqw;mix-blend-mode:lighten;mask-image:linear-gradient(#000 88%,transparent)}
body.wedding-page.lw-skin-wine-bloom #event::after{content:'';position:absolute;inset:22px 14px;border:1px solid color-mix(in srgb,var(--c-accent) 55%,transparent);outline:1px solid color-mix(in srgb,var(--c-accent) 25%,transparent);outline-offset:5px;pointer-events:none;z-index:-1}
.lw-page.lw-skin-wine-bloom #memories .c-gallery{gap:48px 24px}
.lw-page.lw-skin-wine-bloom #memories .c-photo{padding:6px;border:1px solid var(--c-accent);aspect-ratio:3/4}
.lw-page.lw-skin-wine-bloom #memories .c-photo:nth-child(3n){grid-column:1/-1;aspect-ratio:3/2;width:90%;justify-self:center}

/* Gửi Thương wedding art direction: quiet paper, purposeful cutouts, distinct page rhythms.
   Shared by catalog covers and the full invitation. All text and photographs stay editable. */
.wd-theme{--wd-rule:color-mix(in srgb,var(--c-accent) 28%,transparent);--wd-wash:var(--c-bg);--wd-heading:var(--c-heading)}
/* Keep the selected paper color true; legacy textures must not tint white paper. */
body.wd-theme .c-invitation::before,
.wd-theme .ls-artboard::before,
body.wd-theme .gt-opening::before{display:none}
body.wd-theme .c-invitation{width:100%;max-width:900px;margin-inline:auto;background:var(--c-bg)}
body.wd-theme .c-nav{padding:18px clamp(20px,5vw,52px);border-block:1px solid var(--wd-rule);background:var(--c-bg);color:var(--c-ink)}
body.wd-theme .c-nav>a{max-width:48%;font:400 15px/1.6 var(--c-heading)}
body.wd-theme .c-nav>div{gap:20px}
body.wd-theme .c-nav a{color:inherit;min-height:44px;display:inline-flex;align-items:center}
body.wd-theme :is(.c-section,.wedding-gifts){position:relative;isolation:isolate;padding:clamp(64px,9vw,104px) clamp(24px,7vw,72px);border:0;color:var(--c-ink);background:var(--c-bg)}
body.wd-theme.lw-page.c-wedding-reference :is(.c-section,.wedding-gifts)::before{display:none}
body.wd-theme :is(.c-section-heading,.c-gallery-copy){position:relative;z-index:1}
body.wd-theme .c-section-heading h2{font:400 clamp(32px,4.8vw,48px)/1.25 var(--wd-heading);letter-spacing:-.035em;max-width:20ch;margin:14px auto 20px;text-align:center;text-wrap:balance}
body.wd-theme .c-section-heading>.c-kicker{font:500 10px/1.8 var(--c-body);letter-spacing:.2em;text-align:center}
body.wd-theme .c-section-intro{max-width:46ch;margin:0 auto 36px;font:400 14px/1.95 var(--c-body);text-align:center}
.wd-section-art{position:absolute;inset:0;overflow:clip;pointer-events:none;z-index:-1}
.wd-accent{position:absolute;display:block;height:auto;max-width:none;object-fit:contain;pointer-events:none;user-select:none}
.wd-accent-start{width:clamp(130px,24%,220px);left:-70px;top:0;opacity:.45;transform:rotate(-12deg)}
.wd-accent-end{width:clamp(110px,22%,180px);right:-80px;top:50%;opacity:.4;transform:rotate(28deg)}
.wd-accent-story{width:145px;right:-65px;top:28px;opacity:.4;transform:rotate(-22deg)}
body.wd-theme .we-event-art{display:none}
body.wd-theme .c-message-layout{position:relative;max-width:560px;padding-top:12px;margin-bottom:38px}
body.wd-theme .c-event .c-message{font:400 clamp(17px,2.5vw,21px)/1.9 var(--c-heading);text-wrap:pretty}
body.wd-theme .c-event .c-signature{font:400 clamp(24px,3.3vw,32px)/1.55 var(--c-heading);margin:18px auto 12px}
body.wd-theme .c-message-layout .c-small{font-size:12px;line-height:1.9;max-width:40ch;margin-inline:auto}
body.wd-theme .wedding-photo-invitation{max-width:610px;margin:36px auto 52px}
body.wd-theme .wedding-photo-invitation .c-photo{padding:0;border:0}
body.wd-theme .wedding-photo-invitation .photo-zoom{aspect-ratio:3/2}
body.wd-theme .c-families{position:relative;display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:30px;max-width:610px;padding:30px 0;margin:0 auto;border-block:1px solid var(--wd-rule)}
body.wd-theme .c-family{padding:0;min-width:0}
body.wd-theme .c-family .c-kicker{font-size:10px;letter-spacing:.16em;margin-bottom:14px}
body.wd-theme .c-family>p:not(.c-kicker){font:400 15px/1.9 var(--c-heading);overflow-wrap:anywhere}
body.wd-theme .c-family .c-small{font-size:12px!important;margin-top:12px}
body.wd-theme .wedding-schedule-open{max-width:660px;margin-top:42px}
body.wd-theme .wedding-event{padding:32px 0;max-width:540px}
body.wd-theme .wedding-event+.wedding-event{margin-top:24px;padding-top:46px;border-top:1px solid var(--wd-rule)}
body.wd-theme .wedding-event .we-section-label{font:500 11px/1.8 var(--c-body);letter-spacing:.18em;margin-bottom:22px}
body.wd-theme .wedding-event .we-title{font:400 clamp(23px,3.4vw,30px)/1.55 var(--c-heading);letter-spacing:0;text-transform:none}
body.wd-theme .we-title>.we-at{font:400 12px/1.9 var(--c-body);margin:12px 0}
body.wd-theme .we-title>.we-venue{font-size:.82em}
body.wd-theme .wedding-event .we-address{font-size:12px;max-width:36ch;margin-top:14px}
body.wd-theme .wedding-event .we-at-time{font:500 10px/1.8 var(--c-body);letter-spacing:.2em;margin:28px 0 8px}
body.wd-theme .wedding-event .we-time{font:400 26px/1.3 var(--c-heading);margin-bottom:24px}
body.wd-theme .we-date-row{max-width:330px}
body.wd-theme .we-date-row>strong{font:400 56px/1 var(--c-heading);padding-inline:22px;color:var(--c-accent);border-color:var(--wd-rule)}
body.wd-theme .we-date-row>span{font-size:11px}
body.wd-theme .we-year{font-size:15px;letter-spacing:.2em;margin-top:18px}
body.wd-theme .wedding-event .we-lunar{font-size:11px;letter-spacing:.035em}
body.wd-theme .we-actions{gap:14px 24px;margin-top:20px}
body.wd-theme .we-link{font-size:11px;border-color:var(--wd-rule)}
body.wd-theme .c-countdown{max-width:580px;padding:30px 12px;margin:38px auto 0;border-block:1px solid var(--wd-rule);background:var(--wd-wash);color:var(--c-ink)}
body.wd-theme .c-countdown-digits{gap:clamp(8px,2.2vw,24px)}
body.wd-theme .c-countdown-digits strong{font:400 clamp(30px,5vw,48px)/1.2 var(--c-heading)}
body.wd-theme .c-countdown-digits span{font-size:10px;letter-spacing:.04em}
body.wd-theme .c-countdown>.c-kicker{font-size:9px;letter-spacing:.15em}
body.wd-theme #story{border-block:1px solid var(--wd-rule);background:var(--wd-wash)}
body.wd-theme .wedding-story-layout{gap:36px;margin-top:40px}
body.wd-theme .wedding-photo-story .c-photo{padding:6px;background:var(--c-bg);border-color:var(--wd-rule)}
body.wd-theme .c-moment h3{font:400 clamp(23px,3vw,29px)/1.45 var(--c-heading)}
body.wd-theme .c-moment-copy>p:not(.c-kicker){font-size:13px;line-height:1.9}
body.wd-theme .c-moment-number{font:italic 400 20px/1.5 var(--c-heading);opacity:.6}
body.wd-theme #memories .c-gallery-copy{margin-bottom:32px}
body.wd-theme #memories .c-gallery>.c-photo figcaption{font:400 10px/1.8 var(--c-body);padding:10px 2px;white-space:normal;overflow-wrap:anywhere}
body.wd-theme .c-closing{text-align:center;padding:76px 28px 64px;border-top:1px solid var(--wd-rule)}
body.wd-theme .c-closing::before,body.wd-theme .c-closing::after{display:none}
body.wd-theme.atelier-page .c-closing{min-height:0}
body.wd-theme .c-closing>.c-kicker{font-size:9px;letter-spacing:.1em;max-width:38ch;margin-inline:auto}
body.wd-theme .c-closing h2{font:400 clamp(32px,5vw,48px)/1.3 var(--c-heading);max-width:20ch;margin:25px auto;text-wrap:balance}
body.wd-theme .c-closing>p:not(.c-kicker){font-size:14px;line-height:1.9;max-width:43ch;margin-inline:auto}
.wd-signoff{width:78px;height:78px;border:1px solid var(--wd-rule);border-radius:50%;display:grid;place-items:center;margin:0 auto 28px;color:var(--c-accent);font:italic 400 25px/1 var(--c-heading)}
/* Each family has a different rhythm, while ceremony text stays on clear paper. */
body.wd-garden .wedding-photo-invitation .photo-zoom{border-radius:44% 44% 0 0;aspect-ratio:4/3}
body.wd-garden .wedding-photo-story{padding:8px 8px 22px;border:1px solid var(--wd-rule);rotate:-2deg;background:var(--c-bg)}
body.wd-garden .wedding-photo-story .c-photo{border:0;padding:0}
body.wd-letter .wedding-photo-invitation{width:88%;rotate:-2deg;padding:9px 9px 20px;background:var(--c-bg);border:1px solid var(--wd-rule)}
body.wd-letter #story .c-section-heading h2{font-style:italic}
body.wd-letter .wedding-photo-story .photo-zoom{border-radius:45% 45% 0 0}
body.wd-ceremony #event .c-section-heading:before{content:'囍';display:block;font:400 44px/1.2 serif;color:var(--c-accent);margin:0 auto 25px;text-align:center}
body.wd-ceremony .c-families{border-block:3px double var(--wd-rule)}
body.wd-ceremony .wedding-photo-invitation{padding:8px;border:1px solid var(--wd-rule)}
body.wd-ceremony .wd-signoff{border-radius:0;rotate:45deg;width:64px;height:64px;margin-bottom:36px}
body.wd-ceremony .wd-signoff>span{rotate:-45deg}
body.wd-editorial :is(.c-section-heading h2,.c-section-heading>.c-kicker,.c-section-intro){text-align:left;margin-inline:0}
body.wd-editorial .c-section-heading{padding-bottom:20px;border-bottom:1px solid var(--wd-rule);margin-bottom:25px}
body.wd-editorial .c-section-heading>.c-kicker{margin:0}
body.wd-editorial .c-section-heading h2{font-size:clamp(36px,5.2vw,55px);max-width:18ch;margin-bottom:0}
body.wd-editorial .wedding-photo-invitation .photo-zoom{aspect-ratio:16/10}
body.wd-editorial .wedding-photo-story .c-photo{border:0;padding:0}
body.wd-cinema .wd-accent{opacity:.18;filter:sepia(.5)}
body.wd-cinema .wedding-photo-invitation{max-width:none;margin-inline:0}
body.wd-cinema .wedding-photo-invitation .photo-zoom{aspect-ratio:16/10}
body.wd-cinema #story .wedding-photo-story .c-photo{border:0;padding:0}
body.wd-cinema .c-countdown{background:transparent}
body.wd-cinema .wd-signoff{border-radius:50% 50% 0 0}
/* Covers: clearer hierarchy, larger photographs, and paper rather than full floral wallpaper. */
.wd-theme.lw-page .c-cover.ls-cover{max-width:720px;background:var(--c-bg)}
.wd-theme.lw-page .c-cover.ls-cover :is(.ls-artboard,.ls-copy){min-height:150cqw}
.wd-theme.lw-page .c-cover.ls-cover .ls-copy{padding:10cqw 9cqw 9cqw;justify-content:center}
.wd-theme.lw-page .c-cover.ls-cover .ls-masthead{margin-bottom:5cqw}
.wd-theme.lw-page .c-cover.ls-cover .ls-eyebrow{font-size:2cqw;letter-spacing:.2em;margin-bottom:2cqw}
.wd-theme.lw-page .c-cover.ls-cover .ls-title.ls-title{font-size:calc(4cqw * var(--c-scale,1));letter-spacing:.12em;line-height:1.45}
.wd-theme.lw-page .c-cover.ls-cover .ls-names.ls-names{font-size:calc(8cqw * var(--c-scale,1));line-height:1.3}
.wd-theme.lw-page .c-cover.ls-cover[style] .ls-names.ls-names{font-size:calc(10cqw * var(--c-scale,1));line-height:1.25}
.wd-theme.lw-page .c-cover.ls-cover .ls-names.ls-names i{font-size:4.5cqw;line-height:1;margin:1.7cqw 0}
.wd-theme.lw-page .c-cover.ls-cover .ls-date.ls-date{font-size:2.5cqw;letter-spacing:.16em;margin-top:5cqw}
.wd-theme.lw-page .c-cover.ls-cover .ls-date>span{font-size:1.9cqw}
.wd-cover-names{width:100%;position:relative;z-index:2}
.wd-theme.lw-page .c-cover.ls-cover .ls-botanical-top{width:38cqw!important;left:-17cqw!important;top:-5cqw!important;rotate:-15deg!important;opacity:.75}
.wd-theme.lw-page .c-cover.ls-cover .ls-botanical-bottom{width:37cqw!important;right:-18cqw!important;bottom:0!important;rotate:20deg!important;opacity:.65}
.wd-theme.lw-page .c-cover.ls-cover .ls-cover-deck{padding:7cqw 10cqw 6cqw}
.wd-theme.lw-page .c-cover.ls-cover .ls-cover-deck .wr-intro{font:400 clamp(14px,3.3cqw,21px)/1.75 var(--c-heading)}
.wd-theme .ls-cover-deck .ls-subtitle{font-size:9px;letter-spacing:.09em;margin-top:20px}
.wd-theme.lw-page .c-cover.ls-cover.ls-no-photo .ls-copy{justify-content:center}
.wd-theme .ls-cover.ls-no-photo .ls-signature{margin-top:9cqw}
/* Sage: an arched photograph below the names, with white roses at the paper's edge. */
.wd-theme.lw-page .c-cover.ls-sage .ls-artboard{background:var(--c-bg)}
.wd-theme.lw-page .c-cover.ls-sage .ls-sage-print{width:77%;margin:6cqw auto 0;rotate:0;padding:1.5cqw;border:1px solid var(--wd-rule);border-radius:40cqw 40cqw 0 0}
.wd-theme.lw-page .c-cover.ls-sage .ls-photo{aspect-ratio:4/4.6;border:0;box-shadow:none;border-radius:40cqw 40cqw 0 0}
/* Nocturne / Lumière / Magnolia use drawn arches, with one small botanical accent. */
.wd-theme.lw-page .c-cover.ls-cover .wd-portrait-arch{position:relative;width:80%;max-width:80%;aspect-ratio:4/4.8;margin:5cqw auto;padding:2cqw;border:1px solid var(--wd-rule);border-radius:40cqw 40cqw 0 0}
.wd-theme.lw-page .c-cover.ls-cover .wd-portrait-arch .ls-photo{position:relative;inset:auto;width:100%;height:100%;aspect-ratio:auto;border:0;box-shadow:none;border-radius:40cqw 40cqw 0 0}
.wd-theme.lw-page .c-cover.ls-cover .wd-portrait-flower{width:40cqw;height:auto;right:-20cqw;bottom:-5cqw;opacity:.8;z-index:2}
/* Magnolia: a white announcement with a single branch and an inset portrait. */
.wd-theme.lw-page .c-cover.ls-magnolia .ls-copy{padding:18cqw 11cqw 9cqw}
.wd-theme.lw-page .c-cover.ls-magnolia .ls-magnolia-branch{width:44cqw;height:auto;left:-14cqw;top:-7cqw;opacity:.85;rotate:-18deg}
.wd-theme.lw-page .c-cover.ls-magnolia .ls-masthead{margin-bottom:7cqw}
.wd-theme.lw-page .c-cover.ls-magnolia .ls-names.ls-names{font-size:calc(7.8cqw * var(--c-scale,1));letter-spacing:-.035em}
.wd-theme.lw-page .c-cover.ls-magnolia .ls-magnolia-portrait{width:82%;margin:7cqw auto 3cqw;padding:1.5cqw;border:1px solid var(--wd-rule)}
.wd-theme.lw-page .c-cover.ls-magnolia .ls-magnolia-portrait:empty{display:none}
.wd-theme.lw-page .c-cover.ls-magnolia .ls-photo{position:relative;width:100%;aspect-ratio:4/4.5;border:0;border-radius:0;box-shadow:none}
.wd-theme.lw-page .c-cover.ls-nocturne .ls-rule{margin:0 auto 2cqw}
.wd-theme.lw-page .c-cover.ls-lumiere .wd-portrait-arch{aspect-ratio:4/3.8;width:74%}
/* Silk is a letter with a pressed gold stem and a fine vertical rule. */
.wd-theme.lw-page .c-cover.ls-silk .ls-copy{align-items:flex-start;text-align:left;padding:14cqw 12cqw 12cqw;justify-content:flex-start}
.wd-theme.lw-page .c-cover.ls-silk .ls-masthead{text-align:left;margin-bottom:18cqw}
.wd-theme.lw-page .c-cover.ls-silk .ls-silk-vows{width:100%;margin:0;padding:2cqw 0 4cqw 5cqw;border-left:1px solid var(--wd-rule)}
.wd-theme.lw-page .c-cover.ls-silk .ls-names.ls-names{align-items:flex-start;text-align:left;font-size:calc(11cqw * var(--c-scale,1))}
.wd-theme.lw-page .c-cover.ls-silk .ls-silk-stem{width:32cqw;height:85cqw;right:-8cqw;top:auto;bottom:-14cqw;opacity:.75}
.wd-theme.lw-page .c-cover.ls-silk .ls-date{margin-top:10cqw}
/* A quiet ceremonial crest and generous, unbroken names. */
.wd-theme.lw-page .c-cover.ls-heritage .ls-heritage-vows{margin:12cqw 0 0;width:100%;padding:0}
.wd-theme.lw-page .c-cover.ls-heritage .ls-dragon{opacity:.12;width:95cqw;left:2.5cqw;top:auto;bottom:-15cqw}
.wd-theme.lw-page .c-cover.ls-heritage .ls-happiness{width:10cqw;height:10cqw;top:7cqw;left:45cqw}
.wd-theme.lw-page .c-cover.ls-heritage .ls-copy{padding-top:25cqw;justify-content:flex-start}
.wd-theme.lw-page .c-cover.ls-heritage .ls-rule{margin:9cqw auto}
.wd-theme.lw-page .c-cover.ls-chateau .ls-copy{justify-content:flex-start;padding-top:14cqw}
.wd-theme.lw-page .c-cover.ls-chateau .ls-chateau-vows{margin-top:10cqw}
.wd-theme.lw-page .c-cover.ls-chateau .ls-chateau{width:90cqw;height:43cqw;left:5cqw;bottom:0;opacity:.85}
/* A folded lavender letter, assembled from live paper shapes instead of a finished cover image. */
.wd-theme.lw-page .c-cover.ls-lavender .ls-letter-pocket{position:relative;width:94%;margin:8cqw auto 0;padding:0 5cqw 9cqw;rotate:0deg;isolation:isolate}
.wd-theme.lw-page .c-cover.ls-lavender .ls-letter-note{position:relative;inset:auto;width:100%;min-height:78cqw;padding:10cqw 3cqw 17cqw;background:var(--c-bg);border:1px solid var(--wd-rule);box-shadow:none;rotate:0deg}
.wd-letter-fold{position:absolute;inset:62% 0 0;background:color-mix(in srgb,var(--c-accent) 30%,var(--c-bg));clip-path:polygon(0 0,50% 26%,100% 0,100% 100%,0 100%);border-bottom:1px solid var(--wd-rule);z-index:3}
/* Two-photo editions keep independent, visibly different portrait sizes. */
.wd-theme.lw-page .c-cover.ls-leaves .ls-leaf-diptych{width:96%;display:grid;grid-template-columns:1.1fr .9fr;gap:3cqw;align-items:start;margin:7cqw auto 2cqw;padding:0}
.wd-theme.lw-page .c-cover.ls-leaves .ls-leaf-diptych .ls-photo{position:relative;inset:auto;width:100%;height:auto;aspect-ratio:3/4;rotate:0;transform:none;border:1.2cqw solid var(--c-bg);outline:1px solid var(--wd-rule);box-shadow:none}
.wd-theme.lw-page .c-cover.ls-leaves .ls-leaf-diptych .ls-photo-1{margin-top:11cqw;aspect-ratio:3/4}
.wd-theme.lw-page .c-cover.ls-terracotta .ls-autumn-prints{margin-top:4cqw;margin-bottom:8cqw}
.wd-theme.lw-page .c-cover.ls-terracotta .ls-boho{opacity:.4;width:38cqw;left:-15cqw}
.wd-theme.lw-page .c-cover.ls-sage-memories .ls-artboard{background:var(--c-bg)}
.wd-theme.lw-page .c-cover.ls-sage-memories .ls-garden-heading{width:100%;background:none;padding:0;margin:0}
.wd-theme.lw-page .c-cover.ls-sage-memories .ls-sage-collage{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:3cqw;align-items:start;width:100%;margin:7cqw auto 5cqw;min-height:0}
.wd-theme.lw-page .c-cover.ls-sage-memories .ls-sage-collage .ls-photo{position:relative;inset:auto;width:100%;height:auto;aspect-ratio:3/4;rotate:0deg;transform:none;margin:0;box-shadow:none;border:0;border-radius:0}
.wd-theme.lw-page .c-cover.ls-sage-memories .ls-sage-collage .ls-photo:nth-child(2){margin-top:8cqw}
.wd-theme.lw-page .c-cover.ls-sage-memories .ls-sage-collage .ls-photo:only-child{grid-column:1/-1;width:72%;margin-inline:auto}
.wd-theme.lw-page .c-cover.ls-sage-memories .ls-garden-paper{background:none;border:0;box-shadow:none;padding:0;rotate:0;width:100%;margin:0}
.wd-theme.lw-page .c-cover.ls-sage-memories .ls-garden-paper .ls-date{margin-top:0}
/* The established newspaper, cinema and atelier compositions retain their character. */
.wd-theme.c-design-post .c-cover{background:var(--c-bg)}
.wd-theme.c-design-vows .c-vows-top .c-title{font-size:clamp(32px,7cqw,66px)}
.wd-theme.c-design-bloom .c-bloom-copy{background:color-mix(in srgb,var(--c-bg) 91%,transparent);padding:7cqw 6cqw;margin:0 6cqw 7cqw;border:1px solid var(--wd-rule);backdrop-filter:none}
.wd-theme.c-design-bloom .c-botanical-scene img{object-position:center 40%}
.wd-theme.c-design-ivoryrose:not(.lw-page) .wr-cover-copy{padding-top:60px}
.wd-theme.atelier-page .art-wedding-scene{padding-top:3cqw}
.wd-theme.atelier-page .art-vows{padding-bottom:3cqw}
.wd-theme.atelier-page .art-portrait-stage{margin-top:4cqw}
/* Catalog and page share the same cover aspect ratio and asset placement. */
:is(.collection-cover,.template-preview,.seo-template-cover):has(.wd-theme .ls-cover){--wd-cover-size:1200;aspect-ratio:800 / var(--wd-cover-size)!important}
:is(.collection-cover,.template-preview,.seo-template-cover):has(.wd-theme :is(.ls-sage,.ls-nocturne,.ls-magnolia,.ls-sakura,.ls-terracotta,.ls-phoenix,.ls-doves,.ls-pearl-editorial,.ls-scarlet-phoenix,.ls-sage-memories)){--wd-cover-size:1500}
.collection-thumb:has(.wd-theme .ls-cover) .c-miniature{height:calc(var(--wd-cover-size,1200) * 1px)}
.collection-thumb .wd-theme.c-miniature .c-cover.ls-cover{width:800px;max-width:none;height:calc(var(--wd-cover-size,1200) * 1px);min-height:calc(var(--wd-cover-size,1200) * 1px)}
.library .collection-thumb:has(.wd-theme .ls-cover){--catalog-cover-height:calc(var(--wd-cover-size,1200) * 1px)}
.library :is(.collection-card .collection-cover,.template-card .template-preview):has(.wd-theme){aspect-ratio:8/11!important}
.collection-thumb .wd-theme .ls-cover .ls-copy{min-height:150cqw}
@media(max-width:600px){
 body.wd-theme .c-nav{flex-direction:column;gap:2px;padding:8px 18px}
 body.wd-theme .c-nav>a{max-width:100%;font-size:13px;min-height:32px}
 body.wd-theme .c-nav>div{gap:28px}
 body.wd-theme .c-nav>div a{font-size:11px}
 body.wd-theme .c-section{padding-inline:26px}
 body.wd-theme .c-families{gap:20px}
 body.wd-theme .c-family>p:not(.c-kicker){font-size:14px}
 body.wd-theme .c-family .c-small{font-size:11px!important}
 body.wd-theme .wedding-story-layout{grid-template-columns:minmax(0,1fr);gap:32px}
 body.wd-theme .wedding-photo-story{width:86%;margin-inline:auto}
 body.wd-theme .c-section-heading h2{font-size:32px}
 body.wd-editorial .c-section-heading h2{font-size:37px}
 body.wd-theme .wd-accent-start{width:145px;left:-90px;opacity:.45}
 body.wd-theme .wd-accent-end{width:130px;right:-90px;opacity:.3}
 body.wd-theme .wd-accent-story{width:110px;right:-70px}
 body.wd-theme .c-closing{padding-bottom:56px}
 .wd-theme.lw-page .c-cover.ls-cover:not(.ls-compact) .ls-eyebrow{font-size:max(9px,2cqw)}
 .wd-theme.lw-page .c-cover.ls-cover:not(.ls-compact) .ls-date{font-size:max(11px,2.5cqw)}
 .wd-theme.lw-page .c-cover.ls-cover:not(.ls-compact) .ls-date>span{font-size:max(9px,1.9cqw)}
}
/* Fold stays below the written letter, including long names and an optional date. */
.wd-theme.lw-page .c-cover.ls-lavender .ls-letter-note{padding-bottom:7cqw;min-height:72cqw}
.wd-theme .wd-letter-fold{position:relative;display:block;inset:auto;height:16cqw;margin:-2cqw -5cqw -9cqw;clip-path:polygon(0 0,50% 22%,100% 0,100% 100%,0 100%)}
.wd-theme.lw-page .c-cover.ls-sage-memories :is(.ls-garden-heading,.ls-garden-paper){border:0;outline:0}
/* The newspaper photo keeps a usable portrait ratio on a phone. */
.wd-theme.c-design-post .post-front{grid-template-columns:minmax(0,1fr);gap:22px}
.wd-theme.c-design-post .post-front-photo{width:100%;min-width:0;min-height:0;aspect-ratio:4/3;overflow:hidden}
.wd-theme.c-design-post .post-front-photo :is(.c-photo,.photo-zoom){display:block;width:100%;height:100%;min-height:0;margin:0;padding:0;border:0;aspect-ratio:auto;transform:none}
.wd-theme.c-design-post .post-front-photo img{object-position:center}
.wd-theme.c-design-post .post-front aside{display:grid;grid-template-columns:minmax(0,1fr) minmax(0,1fr);border-left:0;padding:0;text-align:left;align-items:start;gap:20px;font-size:18px}
.wd-theme.c-design-post .post-appointment{padding-top:0;border:0;border-left:1px solid var(--wd-rule);padding-left:16px}
.wd-theme.c-design-post .post-front .post-note{grid-column:1/-1;border-top:1px solid var(--wd-rule);padding-top:12px}
.wd-theme.c-design-post .post-front .post-date{font-size:20px}
.wd-theme.c-design-post .post-front .post-address{font-size:15px;line-height:1.4}

/* Modern photographic covers: one uninterrupted image, with live type over it. */
.wd-theme.collection-page .c-cover.wp-cover{container-type:inline-size;position:relative;display:block;width:100%;max-width:760px;min-height:0;height:auto;padding:0;margin:0 auto;background:var(--c-bg);overflow:hidden;text-align:left}
.wd-theme .c-cover.wp-cover::before,.wd-theme .c-cover.wp-cover::after{display:none}
.wp-stage{position:relative;isolation:isolate;display:grid;grid-template-rows:auto minmax(32cqw,1fr) auto;width:100%;min-height:150cqw;padding:8cqw 7cqw 7cqw;color:#fff}
.wp-stage::before{content:'';position:absolute;inset:0;z-index:-1;pointer-events:none;background:linear-gradient(180deg,#15201c80 0%,#15201c08 33%,#15201c08 43%,#101a16a8 77%,#101a16e0 100%)}
.wp-image{position:absolute;inset:0;z-index:-2}
.wp-space{pointer-events:none}
.wd-theme .wp-cover :is(.wp-image,.wp-inset) :is(.c-photo,.photo-zoom){position:relative;display:block;width:100%;height:100%;min-height:0;margin:0;padding:0;border:0;border-radius:0;aspect-ratio:auto;transform:none;rotate:none}
.wd-theme .wp-cover :is(.wp-image,.wp-inset) img{display:block;width:100%;height:100%;object-fit:cover;object-position:var(--c-cover-position,center) center;border-radius:0}
.wp-top,.wp-bottom{position:relative;min-width:0;pointer-events:none;text-shadow:0 1px 12px #00000022}
.wp-cover .wp-eyebrow{font:400 1.65cqw/1.8 var(--c-body);letter-spacing:.2em;margin:0 0 3cqw;white-space:pre-line}
.wd-theme .wp-cover .wp-title.wp-title{display:block;width:100%;max-width:100%;font:400 calc(9.2cqw * var(--c-scale,1))/1.04 var(--c-heading);text-transform:none;letter-spacing:-.045em;color:inherit;margin:0;white-space:pre-line;overflow-wrap:anywhere;text-wrap:balance}
.wd-theme .wp-cover .wp-names.wp-names{display:flex;flex-direction:column;align-items:flex-start;gap:0;width:100%;max-width:100%;font:400 calc(6.7cqw * var(--c-scale,1))/1.25 var(--c-heading);text-transform:none;letter-spacing:-.025em;color:inherit;margin:0}
.wp-names>span{display:block;max-width:100%;overflow-wrap:anywhere;white-space:pre-line;text-wrap:balance}
.wp-names>i{font:italic 4.5cqw/1 var(--c-heading);margin:1.5cqw 0}
.wp-details{display:flex;align-items:center;justify-content:space-between;flex-wrap:wrap;gap:3cqw;margin-top:5cqw;padding-top:3cqw;border-top:1px solid #ffffff70}
.wp-date{font:400 2.1cqw/1.8 var(--c-body);letter-spacing:.15em}
.wp-cover .wp-scroll{display:inline-flex;align-items:center;gap:2cqw;min-height:44px;font:400 1.55cqw/1.8 var(--c-body);letter-spacing:.06em;text-decoration:none;color:inherit;pointer-events:auto}
.wp-scroll>span{font-size:3cqw}
.wp-deck{padding:42px 28px;text-align:center;color:var(--c-ink);background:var(--c-bg)}
.wp-deck>p{max-width:44ch;margin:0 auto;font:400 clamp(16px,3.2cqw,21px)/1.85 var(--c-heading);white-space:pre-line}
.wp-deck .wp-subtitle{font:400 9px/1.9 var(--c-body);letter-spacing:.12em;margin:22px auto 0}
/* Luxe: the large serif masthead of a photographic magazine. */
.wp-luxe .wp-title{max-width:12ch!important}
.wp-luxe .wp-eyebrow{padding-bottom:2cqw;border-bottom:1px solid #ffffff70}
.wd-theme .wp-luxe .wp-names.wp-names{font-size:calc(5.5cqw * var(--c-scale,1))}
/* Bloom: a quiet title above the portrait, and calligraphy over the lower image. */
.wp-bloom .wp-top,.wp-bloom .wp-bottom{text-align:center}
.wd-theme .wp-bloom .wp-title.wp-title{font:italic 400 calc(5.5cqw * var(--c-scale,1))/1.25 var(--c-heading);letter-spacing:-.025em}
.wd-theme .wp-bloom .wp-names.wp-names{align-items:center;font-size:calc(8cqw * var(--c-scale,1))}
.wd-theme .wp-bloom.wp-serif .wp-names.wp-names{font-family:'Great Vibes',var(--c-heading);font-size:calc(10cqw * var(--c-scale,1));line-height:1.35}
.wp-bloom .wp-details{justify-content:center;flex-direction:column;gap:1cqw;border:0;margin-top:3cqw}
/* Amber: a warm photograph with an asymmetric, italic signature. */
.wd-theme .wp-amber .wp-title.wp-title{font:400 calc(4cqw * var(--c-scale,1))/1.4 var(--c-heading);letter-spacing:.02em;max-width:19ch}
.wd-theme .wp-amber .wp-names.wp-names{font-size:calc(8.2cqw * var(--c-scale,1));font-style:italic}
.wp-amber .wp-stage::before{background:linear-gradient(180deg,#38251b70 0%,#38251b00 36%,#241a1460 55%,#241a14e6 100%)}
.wp-amber .wp-image img{filter:saturate(.8)}
/* Vows: monochrome full-page portrait and a second, separately editable inset. */
.wp-vows .wp-image img{filter:grayscale(1)}
.wd-theme .wp-vows .wp-title.wp-title{max-width:15ch;font:400 calc(5.7cqw * var(--c-scale,1))/1.08 var(--c-heading);letter-spacing:.015em;text-transform:uppercase}
.wd-theme .wp-vows .wp-names.wp-names{font-size:calc(6cqw * var(--c-scale,1));text-transform:uppercase;letter-spacing:.015em}
.wp-inset{position:absolute;right:7cqw;top:39cqw;width:23cqw;aspect-ratio:3/4;padding:1cqw;border:1px solid #ffffff90;background:#fff;box-shadow:0 1cqw 3cqw #00000020}
.wp-no-photo .wp-stage{color:var(--c-ink)}
.wp-no-photo .wp-stage::before{display:none}
.wp-no-photo .wp-top,.wp-no-photo .wp-bottom{text-shadow:none}
.wp-no-photo .wp-details,.wp-no-photo .wp-eyebrow{border-color:var(--wd-rule)}
/* Preserve the same photograph and type positions in every catalog surface. */
:is(.collection-cover,.template-preview,.seo-template-cover):has(.wp-cover){aspect-ratio:2/3!important}
.collection-thumb:has(.wp-cover) .c-miniature{height:1200px}
.collection-thumb .c-miniature .c-cover.wp-cover{width:800px;max-width:none;height:1200px;min-height:1200px;padding:0}
.library .collection-thumb:has(.wp-cover){--catalog-cover-height:1200px}
.library :is(.collection-card .collection-cover,.template-card .template-preview):has(.wp-cover){aspect-ratio:8/11!important}
@media(max-width:480px){
 .wp-cover:not(.wp-compact) .wp-eyebrow{font-size:9px}
 .wp-cover:not(.wp-compact) .wp-date{font-size:11px}
 .wp-cover:not(.wp-compact) .wp-scroll{font-size:9px}
}

/* Identical cover geometry in the catalog, editor and opened invitation. */
.wd-theme.collection-page.c-design-vesper .c-cover-vesper,
.wd-theme.collection-page.c-design-scarlet .c-cover-scarlet{container-type:inline-size;display:block;position:relative;width:100%;max-width:760px;height:auto;min-height:0;padding:0;margin:0 auto;overflow:hidden;background:var(--c-bg)}
.wd-theme.c-design-vesper .c-cover-vesper .vesper-masthead{position:relative;inset:auto;height:12cqw;padding:0 6cqw;grid-template-columns:1fr auto 1fr;font-size:4cqw;background:var(--c-bg);border-bottom:1px solid var(--wd-rule)}
.wd-theme.c-design-vesper .c-cover-vesper .vesper-mark{width:6cqw;height:6cqw;font-size:4cqw}
.wd-theme.c-design-vesper .c-cover-vesper .vesper-edition{display:block;font-size:1.25cqw;letter-spacing:.08em}
.wd-theme.c-design-vesper .c-cover-vesper .vesper-hero{display:grid;grid-template-columns:minmax(0,1fr);min-height:148cqw}
.wd-theme.c-design-vesper .c-cover-vesper .vesper-hero-photo{height:65cqw;min-height:0;max-height:none}
.wd-theme.c-design-vesper .c-cover-vesper .vesper-hero-photo :is(.c-photo,.photo-zoom){display:block;height:100%;width:100%;margin:0;padding:0;border:0;aspect-ratio:auto}
.wd-theme.c-design-vesper .c-cover-vesper .vesper-hero-photo img{height:100%;width:100%;object-fit:cover;object-position:var(--c-cover-position) 42%}
.wd-theme.c-design-vesper .c-cover-vesper .vesper-hero-copy{padding:6cqw 8cqw;min-height:83cqw;gap:2.2cqw;align-items:center;justify-content:center;text-align:center}
.wd-theme.collection-page.c-design-vesper .c-cover-vesper .vesper-hero-copy .c-title{width:100%;margin:0;font:400 calc(10cqw * var(--c-scale,1))/1.08 var(--c-heading);letter-spacing:-.035em;white-space:pre-line}
.wd-theme.c-design-vesper .c-cover-vesper .vesper-lead{font:400 3.7cqw/1.5 var(--c-heading);max-width:32ch;margin:0}
.wd-theme.c-design-vesper .c-cover-vesper .vesper-hero-copy .c-kicker{font-size:1.75cqw;letter-spacing:.18em;margin:0}
.wd-theme.c-design-vesper .c-cover-vesper .vesper-hero-copy .c-name{font:400 2.6cqw/1.8 var(--c-body);margin:0}
.wd-theme.c-design-vesper .c-cover-vesper .vesper-hero-copy .c-small{font-size:1.6cqw;letter-spacing:.08em;margin:0}
.wd-theme.c-design-vesper .c-cover-vesper .vesper-hero-copy .c-date{font-size:2.4cqw;margin:0}
.wd-theme.c-design-vesper .c-cover-vesper .vesper-hero-copy .c-link{font-size:1.8cqw;line-height:1.8;min-height:0;padding:1.5cqw 0;margin:0}
.wr-scarlet-stage{position:relative;isolation:isolate;display:flex;align-items:flex-end;min-height:150cqw;padding:8cqw 8cqw 9cqw}
.wd-theme.collection-page.c-design-scarlet .c-cover-scarlet .wr-scarlet-photo{position:absolute;inset:0;width:100%;height:100%;margin:0;aspect-ratio:auto;z-index:-2}
.wd-theme.collection-page.c-design-scarlet .c-cover-scarlet .wr-scarlet-photo :is(.c-photo,.photo-zoom){display:block;width:100%;height:100%;margin:0;padding:0;border:0;aspect-ratio:auto}
.wd-theme.collection-page.c-design-scarlet .c-cover-scarlet .wr-scarlet-photo img{width:100%;height:100%;object-fit:cover;object-position:var(--c-cover-position) center;filter:grayscale(1)}
.wd-theme.collection-page.c-design-scarlet .c-cover-scarlet .wr-scarlet-photo::after{background:linear-gradient(180deg,#11111135 0%,#11111100 25%,#11111170 45%,#111111ed 85%)}
.wd-theme.collection-page.c-design-scarlet .c-cover-scarlet .wr-folio{display:flex;position:absolute;inset:7cqw 7cqw auto;font-size:1.7cqw;color:#fff;z-index:2}
.wd-theme.collection-page.c-design-scarlet .c-cover-scarlet .wr-cover-copy{width:100%;padding-top:48cqw;text-align:center;color:#fff}
.wd-theme.collection-page.c-design-scarlet .c-cover-scarlet .wr-title{font:400 calc(10cqw * var(--c-scale,1))/1.12 var(--c-heading);letter-spacing:-.04em;color:#fff;margin:3cqw auto;max-width:100%}
.wd-theme.collection-page.c-design-scarlet .c-cover-scarlet .wr-label{font-size:1.8cqw;margin:0;color:#fff}
.wd-theme.collection-page.c-design-scarlet .c-cover-scarlet .wr-names{align-items:center;font:400 calc(5.5cqw * var(--c-scale,1))/1.35 var(--c-heading);margin:3cqw auto;color:#fff}
.wd-theme.collection-page.c-design-scarlet .c-cover-scarlet .wr-names i{font-size:4cqw;margin:1cqw 0;color:var(--c-accent)}
.wd-theme.collection-page.c-design-scarlet .c-cover-scarlet .wr-heart-rule{width:28cqw;height:5cqw;margin:2cqw auto;display:block}
.wd-theme.collection-page.c-design-scarlet .c-cover-scarlet .wr-date{font-size:2.5cqw;margin:3cqw auto 0;color:#fff}
.wd-theme.collection-page.c-design-scarlet .c-cover-scarlet .wr-date>span{font-size:1.8cqw;margin-top:1cqw}
.wd-theme.collection-page.c-design-scarlet .c-cover-scarlet .wr-link{font-size:1.8cqw;min-height:0;margin:3cqw auto 0;padding:1.5cqw 0;color:#fff}
.wd-theme.collection-page.c-design-scarlet .c-cover-scarlet .wr-ribbon{width:55cqw;height:20cqw;right:-22cqw;bottom:12cqw;rotate:-40deg;opacity:.65;z-index:0;pointer-events:none;object-fit:contain}
.wr-scarlet-deck{padding:9cqw 8cqw;text-align:center}
.wd-theme.c-design-scarlet .wr-scarlet-deck .wr-intro{font-size:4cqw;margin:0 auto}
.wd-theme.c-design-scarlet .wr-scarlet-deck .wr-cover-foot{position:static;max-width:none;margin:5cqw auto 0;text-align:center;font-size:1.7cqw}
.collection-thumb .c-miniature:is(.c-design-vesper,.c-design-scarlet){height:1200px}
.collection-thumb .c-miniature :is(.c-cover-vesper,.c-cover-scarlet){width:800px;max-width:none;height:1200px;min-height:1200px;padding:0}
.library .collection-thumb:has(:is(.c-cover-vesper,.c-cover-scarlet)){--catalog-cover-height:1200px}
:is(.collection-cover,.template-preview,.seo-template-cover):has(:is(.c-cover-vesper,.c-cover-scarlet)){aspect-ratio:2/3!important}
/* Artwork belongs to each text panel so opaque date panels cannot hide it. */
body.wc-page .wd-decorated{position:relative;isolation:isolate}
body.wc-page .wd-decorated>.wd-section-art{z-index:0}
body.wc-page .wd-decorated>:not(.wd-section-art){position:relative;z-index:1}
body.wc-page .wd-decorated .wd-accent-start{width:clamp(130px,27%,230px);left:-55px;top:12px;opacity:.48;transform:rotate(-12deg)}
body.wc-page .wd-decorated .wd-accent-end{width:clamp(120px,24%,210px);right:-52px;top:auto;bottom:12px;opacity:.42;transform:rotate(18deg)}
body.wc-page.wd-cinema .wd-decorated .wd-accent{opacity:.38;filter:none}
body.wc-page:is(.wd-vesper,.wd-post,.wd-noir) .wd-decorated .wd-accent{opacity:.24}
body.wc-page .wc-closing-photo.wc-has-photo .wd-accent{opacity:.32;filter:brightness(0) invert(1)}
body.wc-page .wc-closing-split.wc-has-photo .wd-accent{opacity:.32}
/* Complete rose branches sit inside the margins instead of cropped corner panels. */
body.wc-page.wd-vowry-rose .wd-decorated .wd-accent{width:clamp(40px,13%,92px);max-height:calc(100% - 32px);object-fit:contain;opacity:.52;transform:none}
body.wc-page.wd-vowry-rose .wd-decorated .wd-accent-start{left:10px;top:16px;bottom:auto}
body.wc-page.wd-vowry-rose .wd-decorated .wd-accent-end{right:10px;top:auto;bottom:16px;transform:scaleX(-1)}

.collection-thumb .c-miniature.c-design-vesper{height:1280px}
.collection-thumb .c-miniature.c-design-vesper .c-cover-vesper{height:1280px;min-height:1280px}
.library .collection-thumb:has(.c-cover-vesper){--catalog-cover-height:1280px}
:is(.collection-cover,.template-preview,.seo-template-cover):has(.c-cover-vesper){aspect-ratio:5/8!important}

body.wc-page.wd-scarlet .wd-decorated .wd-accent{opacity:.55;filter:brightness(2) saturate(.8)}
body.wc-page.wd-noir .wd-decorated .wd-accent{opacity:.42;filter:brightness(1.4)}

.collection-thumb .c-miniature.wd-theme.collection-page:is(.c-design-vesper,.c-design-scarlet) .c-cover{width:800px;max-width:none}
.library :is(.collection-card .collection-cover,.template-card .template-preview):has(.c-cover-vesper){aspect-ratio:5/8!important}
.library :is(.collection-card .collection-cover,.template-card .template-preview):has(.c-cover-scarlet){aspect-ratio:2/3!important}

/* One engraved front for both gold-flower editions, in the catalog and live card. */
.wd-theme.lw-page .c-cover.ls-cover.ls-engraved :is(.ls-artboard,.ls-copy){min-height:150cqw}
.wd-theme.lw-page .c-cover.ls-cover.ls-engraved .ls-copy{padding:50cqw 16cqw 14cqw;justify-content:center;align-items:center;gap:0;text-align:center}
.wd-theme.lw-page .c-cover.ls-cover.ls-engraved .ls-artboard::after{content:'';position:absolute;inset:var(--ls-frame-top,28cqw) 8cqw 8cqw;border:1px solid color-mix(in srgb,var(--c-accent) 65%,transparent);border-radius:42cqw 42cqw 1cqw 1cqw;outline:0;z-index:1;pointer-events:none}
.wd-theme.lw-page .c-cover.ls-cover.ls-wine-bloom{--ls-frame-top:35cqw}
.wd-theme.lw-page .c-cover.ls-cover.ls-engraved .ls-engraved-vows{display:flex;flex-direction:column;align-items:center;width:100%;margin:0;padding:0}
.wd-theme.lw-page .c-cover.ls-cover.ls-engraved .ls-masthead{width:100%;margin:0 0 8cqw}
.wd-theme.lw-page .c-cover.ls-cover.ls-engraved .ls-eyebrow{font:400 2.2cqw/1.8 var(--c-heading);letter-spacing:.2em;margin:0 0 3cqw;color:var(--c-accent)}
.wd-theme.lw-page .c-cover.ls-cover.ls-engraved .ls-title.ls-title{font-size:calc(3.6cqw * var(--c-scale,1));line-height:1.5;letter-spacing:.12em}
.wd-theme.lw-page .c-cover.ls-cover.ls-engraved .ls-names.ls-names{font-size:calc(10.5cqw * var(--c-scale,1));line-height:1.3;color:var(--c-accent)}
.wd-theme.lw-page .c-cover.ls-cover.ls-engraved .ls-names.ls-names i{font:400 4.5cqw/1.2 'Great Vibes',var(--c-heading);margin:2cqw 0}
.wd-theme.lw-page .c-cover.ls-cover.ls-engraved .ls-engraved-flourish{position:relative;inset:auto;width:42cqw;height:auto;aspect-ratio:731/127;margin:6cqw auto 5cqw;object-fit:contain;opacity:.85}
.wd-theme.lw-page .c-cover.ls-cover.ls-engraved .ls-date.ls-date{font-size:2.5cqw;letter-spacing:.16em;margin:0;color:var(--c-accent)}
.wd-theme.lw-page .c-cover.ls-cover.ls-engraved .ls-date.ls-date>span{font-size:1.9cqw;letter-spacing:.04em;margin-top:1cqw}
.wd-theme.lw-page .c-cover.ls-cover.ls-engraved .ls-cover-deck{margin:0;border:0;padding:4cqw 12cqw 10cqw}
/* Mộc Thu: keep the flowers themselves in view instead of cropping them above the paper. */
.wd-theme.lw-page .c-cover.ls-cover.ls-terracotta .ls-boho{width:53cqw;height:auto;left:-12cqw;right:auto;top:-4cqw;opacity:.9;rotate:-8deg}
.wd-theme.lw-page .c-cover.ls-cover.ls-terracotta .ls-boho-sprig{width:22cqw;height:auto;right:-7cqw;top:7cqw;opacity:.6;rotate:-28deg}
.wd-theme.lw-page .c-cover.ls-cover.ls-terracotta .ls-boho-leaf{width:29cqw;height:auto;right:-8cqw;bottom:-2cqw;opacity:.7;rotate:8deg}

.wd-theme.lw-page .c-cover.ls-cover.ls-terracotta .ls-copy{padding-top:17cqw}
.wd-theme.lw-page .c-cover.ls-cover.ls-terracotta .ls-masthead{width:80%;margin:0 auto 8cqw;text-align:center}
.wd-theme.lw-page .c-cover.ls-cover.ls-terracotta .ls-boho{width:45cqw;left:-12cqw}

/* A wedding is read as a vertical letter: invitation, families, day, memories. */
body.wedding-page .c-invitation{max-width:760px}
body.wedding-page .c-nav{position:relative;justify-content:center}
body.wedding-page .c-nav>a{display:none}
body.wedding-page .wday-families .wday-role{font:italic 14px/1.8 var(--c-heading);margin:22px 0 6px;opacity:.8}
body.wedding-page .wday-families .wday-family-name{font:400 clamp(22px,4vw,30px)/1.5 var(--c-heading);margin:0;overflow-wrap:anywhere;text-wrap:balance}
.wday-calendar{max-width:390px;margin:44px auto 0;padding:30px 20px;text-align:center;border-block:1px solid color-mix(in srgb,currentColor 22%,transparent)}
.wday-calendar>.c-kicker{font-size:10px;letter-spacing:.18em;margin:0 0 10px}
.wday-calendar table{width:100%;border-collapse:separate;border-spacing:2px 8px;table-layout:fixed;font-variant-numeric:lining-nums tabular-nums}
.wday-calendar caption{font:400 29px/1.6 var(--c-heading);padding-bottom:18px}
.wday-calendar caption span{font-size:.7em}
.wday-calendar th{font:500 11px/2 var(--c-body);padding-bottom:10px;opacity:.75}
.wday-calendar td{height:34px;padding:0;font:400 17px/1.5 var(--c-heading)}
.wday-calendar td>span,.wday-calendar time{display:grid;place-items:center;width:34px;height:34px;margin:auto}
.wday-calendar .wday-selected time{position:relative;background:var(--c-ink);color:var(--c-bg);border-radius:50%;outline:1px solid var(--c-ink);outline-offset:3px}
.wday-selected time span{position:absolute;right:-10px;top:-10px;color:var(--c-ink);font:22px/1 serif;background:var(--c-bg);border-radius:50%}
.wday-lunar{font:italic 12px/1.8 var(--c-heading);margin:20px 0 0}
body.wedding-page .wday-calendar+.c-countdown{margin-top:0;border-top:0;background:none}
body.wedding-page .c-agenda{border-top:1px solid color-mix(in srgb,currentColor 20%,transparent)}

/* The Olive cover uses the same container coordinates in the catalog and card. */
.lw-page .c-cover.vo-cover{container-type:inline-size;display:block;position:relative;isolation:isolate;width:100%;max-width:680px;height:auto;min-height:0;margin:0 auto;padding:0;overflow:hidden;background:var(--c-bg);color:var(--c-ink);text-align:center}
.lw-page .c-cover.vo-cover::before,.lw-page .c-cover.vo-cover::after{display:none}
.vo-letterhead{position:relative;padding:9cqw 8cqw 0;z-index:2}
.vo-cover .vo-eyebrow{font:400 1.9cqw/1.8 var(--c-body);letter-spacing:.2em;margin:0 0 2cqw}
.vo-cover .vo-title{display:block;font:400 calc(7cqw * var(--c-scale,1))/1.4 var(--c-heading);margin:0;text-transform:none;letter-spacing:-.02em;white-space:pre-line;overflow-wrap:anywhere}
.vo-envelope{position:relative;height:82cqw;margin:4cqw 0 0;isolation:isolate}
.vo-art{position:absolute;display:block;max-width:none;object-fit:contain;pointer-events:none}
.vo-envelope-back{position:absolute;inset:auto 16.5% 8%;height:48cqw;background:linear-gradient(145deg,#46543a,#2d402d);clip-path:polygon(0 32%,50% 0,100% 32%,100% 100%,0 100%)}
.vo-envelope .vo-branch{width:30%;height:60%;right:0;top:10%;z-index:1;rotate:18deg;opacity:.7}
.vo-portraits{position:absolute;inset:0;z-index:2}
.vo-portrait{position:absolute;top:1%;width:35%;height:70%;border:1cqw solid #ffffff;background:#ffffff;box-shadow:0 1cqw 2cqw #14251220}
.vo-portrait-0{left:15%;rotate:-7deg}
.vo-portrait-1{right:14%;top:4%;rotate:7deg}
.lw-page .vo-cover .vo-portrait .c-photo,.lw-page .vo-cover .vo-portrait .photo-zoom{display:block;position:relative;inset:auto;width:100%;height:100%;min-height:0;aspect-ratio:auto;transform:none;rotate:none;border:0;border-radius:0;margin:0;padding:0;background:none}
.lw-page .vo-cover .vo-portrait img{display:block;width:100%;height:100%;object-fit:cover;border-radius:0}
.vo-portrait figcaption{display:none}
.vo-envelope .vo-pocket{width:100%;height:auto;bottom:0;left:0;z-index:3}
.vo-seal{position:absolute;z-index:4;width:15cqw;height:15cqw;left:42.5cqw;bottom:5cqw;display:grid;place-items:center}
.vo-seal .vo-seal-image{width:100%;height:100%;inset:0;filter:drop-shadow(0 1cqw 1cqw #10241035)}
.vo-seal>span{position:relative;z-index:1;font:italic 3cqw/1 var(--c-heading);color:#efead4}
.vo-signature{position:relative;padding:0 10cqw 9cqw}
.lw-page .vo-cover .vo-names{display:flex;flex-direction:column;gap:0;font:400 calc(8.2cqw * var(--c-scale,1))/1.3 var(--c-heading);text-transform:none;letter-spacing:-.02em;margin:0;color:var(--c-ink)}
.vo-names>span{display:block;max-width:100%;white-space:pre-line;overflow-wrap:anywhere;text-wrap:balance}
.vo-names>i{font:italic 5cqw/1.2 var(--c-heading);margin:1cqw 0;color:var(--c-accent)}
.vo-date{display:block;font:400 3cqw/1.8 var(--c-heading);letter-spacing:.16em;margin:5cqw 0 0}
.vo-subtitle{font:400 1.7cqw/2 var(--c-body);letter-spacing:.1em;max-width:40ch;margin:3cqw auto 0;white-space:pre-line}
.vo-link{display:inline-flex;align-items:center;gap:16px;min-height:44px;color:inherit;text-decoration:none;font:400 12px/1.8 var(--c-body);border-bottom:1px solid color-mix(in srgb,currentColor 30%,transparent);margin-top:5cqw}
.vo-no-photos .vo-envelope{height:48cqw}
.vo-no-photos .vo-envelope-back{inset:10% 17% 8%;height:auto}
.vo-cover.vo-compact .vo-letterhead{padding-top:5cqw}
.vo-cover.vo-compact .vo-envelope{height:78cqw}
.vo-cover.vo-compact.vo-no-photos .vo-envelope{height:48cqw}
.vo-cover.vo-compact .vo-signature{padding-bottom:5cqw}
.vo-cover.vo-compact .vo-subtitle{display:none}
.vo-cover.vo-compact .vo-names{font-size:7cqw}
.vo-cover.vo-compact .vo-date{margin-top:3cqw}
.collection-thumb .c-miniature .c-cover.vo-cover{width:800px;max-width:none;height:1200px;min-height:1200px;padding:0;border:0}
.collection-thumb .c-miniature .vo-cover .vo-names{font-size:7cqw}
.collection-thumb:has(.vo-cover) .c-miniature{height:1200px}
.library .collection-thumb:has(.vo-cover){--catalog-cover-height:1200px}

@media(max-width:480px){
  body.wedding-page .c-nav>div{gap:26px}
  body.wedding-page .c-nav a{font-size:11px}
  body.wedding-page .wday-families{gap:18px}
  body.wedding-page .wday-families .wday-family-name{font-size:23px}
  .wday-calendar{padding:26px 4px}
  .vo-cover:not(.vo-compact) .vo-eyebrow{font-size:10px}
  .vo-cover:not(.vo-compact) .vo-subtitle{font-size:9px}
  .vo-cover:not(.vo-compact) .vo-date{font-size:15px}
}

/* A smaller envelope leaves room for both olive corners and the photographs. */
.wd-theme.lw-page .vo-cover .vo-corner{width:28cqw;height:auto;left:-6cqw;top:1cqw;opacity:.65;rotate:18deg;z-index:1}
.wd-theme.lw-page .vo-cover .vo-envelope{width:84%;height:69cqw;margin:6cqw auto 3cqw}
.wd-theme.lw-page .vo-cover .vo-envelope-back{height:40cqw}
.wd-theme.lw-page .vo-cover .vo-seal{width:12cqw;height:12cqw;left:50%;bottom:4cqw;transform:translateX(-50%)}
.wd-theme.lw-page .vo-cover .vo-seal>span{font-size:2.5cqw}
.wd-theme.lw-page .vo-cover.vo-no-photos .vo-envelope{height:41cqw}
.wd-theme.lw-page .vo-cover.vo-no-photos .vo-envelope-back{height:auto}

/* Six references, six compositions. Images, artwork and type remain separate. */
.lw-page .c-cover.vc-cover{container-type:inline-size;display:block;position:relative;isolation:isolate;max-width:760px;width:100%;height:auto;min-height:0;padding:0;margin:0 auto;overflow:hidden;background:var(--c-bg);color:var(--c-ink);text-align:center}
.lw-page .c-cover.vc-cover::before,.lw-page .c-cover.vc-cover::after{display:none}
.vc-cover *{box-sizing:border-box}
.vc-cover .vc-heading,.vc-cover .vc-signature{position:relative;z-index:2}
.vc-cover .vc-heading{padding:8cqw 8cqw 0}
.vc-cover .vc-eyebrow{font:500 1.75cqw/1.9 var(--c-body);letter-spacing:.17em;margin:0 0 2.5cqw;white-space:pre-line}
.lw-page .vc-cover .vc-title{display:block;color:inherit;max-width:100%;font:400 calc(7.2cqw * var(--c-scale,1))/1.3 var(--c-heading);letter-spacing:-.025em;text-transform:none;margin:0 auto;overflow-wrap:anywhere;text-wrap:balance;white-space:pre-line}
.lw-page .vc-cover .vc-names{display:flex;flex-direction:column;align-items:center;gap:.5cqw;width:100%;max-width:none;margin:0;font:400 calc(7.2cqw * var(--c-scale,1))/1.35 var(--c-heading);letter-spacing:-.015em;color:inherit;text-transform:none}
.vc-names>span{display:block;max-width:100%;overflow-wrap:anywhere;text-wrap:balance;white-space:pre-line}
.vc-names>i{display:block;font:italic 4.2cqw/1 var(--c-heading);margin:.5cqw auto}
.vc-cover .vc-date{display:block;margin:5cqw auto 0;font:400 2.8cqw/1.8 var(--c-heading);letter-spacing:.17em;color:inherit}
.vc-cover .vc-subtitle{margin:3cqw auto 0;max-width:38ch;font:400 1.75cqw/2 var(--c-body);letter-spacing:.1em;white-space:pre-line;overflow-wrap:anywhere}
.vc-cover .vc-art{display:block;position:absolute;max-width:none;height:auto;object-fit:contain;pointer-events:none;user-select:none}
.vc-cover .vc-photo{position:relative;overflow:hidden}
.lw-page .vc-cover .vc-photo .c-photo,.lw-page .vc-cover .vc-photo .photo-zoom{display:block;position:relative;inset:auto;width:100%;height:100%;min-height:0;margin:0;padding:0;aspect-ratio:auto;border:0;border-radius:0;transform:none;rotate:none;background:none}
.lw-page .vc-cover .vc-photo img{display:block;width:100%;height:100%;max-width:none;object-fit:cover;border-radius:0}
.vc-cover .vc-photo figcaption{display:none}
.vc-cover .vc-monogram{display:block;font:italic 14cqw/1 var(--c-heading);letter-spacing:-.15em;padding-right:.15em;color:var(--c-accent)}
.vc-cover .vc-deck{position:relative;padding:9cqw 11cqw 8cqw;background:var(--c-bg);color:var(--c-ink)}
.vc-cover .vc-intro{max-width:34ch;margin:0 auto;font:italic 3.3cqw/1.9 var(--c-heading);white-space:pre-line;text-wrap:pretty}
.vc-cover .vc-link{display:inline-flex;align-items:center;gap:20px;min-height:44px;margin:5cqw auto 0;padding:4px 0;border-bottom:1px solid color-mix(in srgb,currentColor 35%,transparent);color:inherit;font:400 12px/1.6 var(--c-body);text-decoration:none}
.vc-cover .vc-link:focus-visible{outline:2px solid currentColor;outline-offset:6px}
/* 01. A photograph, generous white space and one small red accent. */
.vc-minimal-hero{position:relative;min-height:134cqw;display:flex;align-items:flex-end;isolation:isolate;background:#a6a5a0;color:#fff}
.vc-minimal-hero>.vc-photo{position:absolute;inset:0}
.vc-minimal-hero::after{content:'';position:absolute;inset:0;background:linear-gradient(180deg,#15151408 15%,#16171612 42%,#11181799 100%);z-index:1;pointer-events:none}
.vc-minimal-copy{position:relative;z-index:2;width:100%;padding:55cqw 7cqw 14cqw}
.vc-minimal .vc-heading{padding:0 0 7cqw}
.vc-minimal .vc-eyebrow{font-size:1.7cqw;letter-spacing:.2em}
.lw-page .vc-minimal .vc-title{font-size:calc(8cqw * var(--c-scale,1));font-style:italic}
.lw-page .vc-minimal .vc-names{font-size:calc(4.6cqw * var(--c-scale,1));text-transform:uppercase;letter-spacing:.035em;gap:1cqw}
.vc-minimal .vc-names>i{font-size:3.3cqw}
.vc-photo-folio{position:absolute;z-index:2;left:5cqw;top:7cqw;writing-mode:vertical-rl;font:400 1.5cqw/1.8 var(--c-body);letter-spacing:.18em}
.vc-minimal .vc-deck::before{content:'';position:absolute;width:5px;height:5px;border-radius:50%;background:var(--c-accent);left:calc(50% - 2.5px);top:4cqw}
/* 02. Two white portrait prints with complete, freestanding rose sprigs. */
.vc-rose-stage{position:relative;min-height:150cqw;padding-bottom:8cqw;background:var(--c-ink);color:#fffdf4;isolation:isolate}
.vc-rose .vc-heading{max-width:76%;margin:auto;padding:12cqw 0 0}
.lw-page .vc-rose .vc-title{font-size:calc(5cqw * var(--c-scale,1));font-style:italic}
.vc-rose .vc-eyebrow{opacity:.88;font-size:1.6cqw}
.vc-rose-portraits{position:relative;width:78%;height:61cqw;margin:9cqw auto 7cqw}
.lw-page .vc-cover.vc-rose .vc-rose-print{position:absolute;width:47%;height:54cqw;padding:0;border:1.8cqw solid #fff;border-radius:0;background:#fff;box-shadow:0 1.5cqw 3cqw #10231530}
.lw-page .vc-cover.vc-rose .vc-photo-0{left:0;top:0;rotate:-4deg}
.lw-page .vc-cover.vc-rose .vc-photo-1{right:0;top:10cqw;rotate:4deg}
.vc-rose-portraits:has(>.vc-rose-print:only-of-type) .vc-rose-print{left:26.5%;right:auto;top:4cqw;rotate:-3deg}
.vc-rose-portraits .vc-monogram{display:none}
.vc-rose-stage>.vc-rose-top{width:26cqw;right:3cqw;top:3cqw;z-index:1;rotate:0deg}
.vc-rose-stage>.vc-rose-bottom{width:24cqw;left:3cqw;bottom:3cqw;z-index:1;rotate:0deg;transform:scaleX(-1)}
.vc-rose .vc-signature{max-width:70%;margin:0 auto}
.lw-page .vc-rose .vc-names{font-size:calc(5.4cqw * var(--c-scale,1));font-style:italic}
.vc-rose .vc-names>i{font-size:3.7cqw;color:#ddd7b0}
.vc-rose .vc-date{font-size:2.3cqw;margin-top:3cqw}
/* 03. A coastal editorial opens with a full-bleed image and olive monogram. */
.vc-coast-hero{position:relative;min-height:139cqw;display:flex;flex-direction:column;justify-content:space-between;isolation:isolate;background:var(--c-ink);color:#fffdf4}
.vc-coast-hero>.vc-photo{position:absolute;inset:0}
.vc-coast-hero::after{content:'';position:absolute;inset:0;z-index:1;background:linear-gradient(180deg,#18211e55,transparent 40%,#15221f88);pointer-events:none}
.vc-coast .vc-heading{padding:8cqw 8cqw 0}
.lw-page .vc-coast .vc-title{font-style:italic;font-size:calc(7.5cqw * var(--c-scale,1))}
.vc-coast .vc-eyebrow{font-size:1.5cqw}
.vc-coast-copy{position:relative;z-index:2;padding:45cqw 8cqw 9cqw}
.lw-page .vc-coast .vc-names{font-size:calc(7.6cqw * var(--c-scale,1));text-transform:uppercase;line-height:1.12;letter-spacing:-.04em}
.vc-coast .vc-names>i{font-size:3.5cqw;line-height:1.4}
.vc-coast .vc-date{margin-top:4cqw;font-size:2.5cqw}
.vc-fine-rule{display:block;width:18cqw;height:1px;background:currentColor;margin:5cqw auto 0;opacity:.7}
.vc-coast-paper{padding:9cqw 9cqw 0;color:var(--c-ink)}
.vc-coast .vc-coast-paper .vc-subtitle{max-width:30ch;line-height:2.2}
.vc-coast .vc-deck{padding-top:6cqw}
/* 04. The white/red journal balances its masthead, image and ribbon. */
.vc-ruby-masthead{display:flex;justify-content:space-between;align-items:center;gap:3cqw;padding:4cqw 5cqw;border-top:1cqw solid var(--c-accent);color:var(--c-accent)}
.vc-ruby-masthead .vc-eyebrow{margin:0;font-size:1.45cqw;letter-spacing:.1em}
.vc-ruby-masthead>span{font:400 1.35cqw/1.5 var(--c-body);letter-spacing:.07em}
.vc-ruby-hero{position:relative;min-height:105cqw;margin:0 4cqw;display:flex;align-items:flex-end;isolation:isolate;color:#fff;background:var(--c-ink)}
.vc-ruby-hero>.vc-photo{position:absolute;inset:0}
.vc-ruby-hero::after{content:'';position:absolute;inset:0;z-index:1;background:linear-gradient(180deg,transparent 40%,#1727288c);pointer-events:none}
.vc-ruby-copy{position:relative;z-index:2;width:100%;padding:55cqw 6cqw 8cqw}
.lw-page .vc-ruby .vc-title{font-size:calc(5cqw * var(--c-scale,1));font-style:italic;margin-bottom:4cqw}
.lw-page .vc-ruby .vc-names{font-size:calc(6.1cqw * var(--c-scale,1));line-height:1.25}
.vc-ruby .vc-names>i{font-size:3cqw}
.vc-ruby .vc-date{font-size:2cqw;margin-top:4cqw}
.vc-ruby-foot{position:relative;padding:7cqw 19cqw 5cqw;min-height:30cqw}
.vc-ruby-foot .vc-monogram{font-size:11cqw}
.vc-ruby-foot .vc-subtitle{font-size:1.5cqw}
.vc-ruby-ribbon{position:absolute;right:7cqw;top:0;width:8cqw;height:24cqw;padding-top:3cqw;background:var(--c-accent);color:#fff;font:5cqw/1 serif;clip-path:polygon(0 0,100% 0,100% 100%,50% 88%,0 100%)}
/* 05. Red ceremonial portrait, embossed envelope and separate wax seal. */
.vc-hy-hero{position:relative;min-height:133cqw;display:flex;flex-direction:column;justify-content:space-between;background:var(--c-accent);color:#fff2db;isolation:isolate}
.vc-hy-hero>.vc-photo{position:absolute;inset:28cqw 0 auto;height:65cqw;mask-image:linear-gradient(transparent,#000 9%,#000 90%,transparent)}
.vc-hy-hero::after{content:'';position:absolute;inset:0;z-index:1;background:linear-gradient(180deg,#5e0d1755,transparent 35%,#46070b94);pointer-events:none}
.vc-hy .vc-heading{padding-top:8cqw}
.vc-hy .vc-eyebrow{font-size:1.55cqw}
.lw-page .vc-hy .vc-title{font:italic calc(7cqw * var(--c-scale,1))/1.25 var(--c-heading)}
.vc-hy-copy{position:relative;z-index:2;padding:70cqw 8cqw 8cqw}
.lw-page .vc-hy .vc-names{font-size:calc(7cqw * var(--c-scale,1));text-transform:uppercase;line-height:1.1;letter-spacing:-.025em}
.vc-hy .vc-names>i{font-size:3.5cqw;line-height:1.2}
.vc-hy .vc-date{font-size:2.5cqw;margin-top:4cqw}
.vc-hy-letter{position:relative;isolation:isolate;height:92cqw;margin:0 auto;max-width:100%;background:var(--c-bg);padding-top:14cqw}
.vc-hy-letter .vc-red-floral{width:59cqw;left:1cqw;top:3cqw;opacity:.6;rotate:-25deg;z-index:-1}
.vc-hy-letter .vc-happiness{width:8cqw;right:12cqw;top:9cqw;opacity:.6}
.vc-letter-paper{position:relative;width:55%;min-height:56cqw;margin:0 auto;padding:8cqw 4cqw 15cqw;border:1px solid color-mix(in srgb,var(--c-accent) 25%,transparent);background:var(--c-bg);rotate:-6deg;box-shadow:0 1cqw 3cqw #632d2120}
.vc-letter-paper .vc-eyebrow{font-size:1.35cqw}
.vc-letter-paper .vc-monogram{font-size:14cqw;margin-top:4cqw}
.vc-letter-paper .vc-subtitle{font-size:1.5cqw}
.vc-hy-letter .vc-red-pocket{width:69cqw;height:48cqw;left:15.5cqw;bottom:5cqw;z-index:2;object-fit:fill}
.vc-hy-letter .vc-red-seal{width:12cqw;height:12cqw;left:44cqw;bottom:24cqw;z-index:3;filter:drop-shadow(0 1cqw 1cqw #42122130)}
.vc-hy .vc-deck{padding-top:0}
/* 06. A garden portrait folds into a white arch framed by small blossoms. */
.vc-garden-hero{position:relative;min-height:91cqw;display:flex;flex-direction:column;justify-content:flex-start;isolation:isolate;background:var(--c-ink);color:#fffdf2}
.vc-garden-hero>.vc-photo{position:absolute;inset:0}
.vc-garden-hero::after{content:'';position:absolute;inset:0;z-index:1;background:linear-gradient(180deg,#102115aa,transparent 70%);pointer-events:none}
.vc-garden .vc-heading{padding-top:7cqw}
.lw-page .vc-garden .vc-title{font-size:calc(6.5cqw * var(--c-scale,1));font-style:italic}
.vc-garden .vc-heading .vc-eyebrow{font-size:1.45cqw}
.vc-garden-arch{position:relative;min-height:92cqw;margin-top:-17cqw;z-index:3;isolation:isolate;padding:13cqw 10cqw 11cqw}
.vc-garden-arch::before{content:'';position:absolute;inset:0 7%;background:var(--c-bg);border-radius:48cqw 48cqw 0 0;z-index:-1}
.vc-garden-vows{position:relative;z-index:2;width:80%;margin:0 auto}
.vc-garden-vows>.vc-eyebrow{font-size:1.5cqw;margin-bottom:6cqw}
.lw-page .vc-garden .vc-names{font-size:calc(6.5cqw * var(--c-scale,1));font-style:italic}
.vc-garden .vc-date{font-size:2.4cqw}
.vc-garden-vows .vc-subtitle{font-size:1.6cqw;margin-top:4cqw}
.vc-garden-arch>.vc-garden-flower{width:100%;height:85%;left:0;bottom:0;object-fit:fill;z-index:1}
.vc-garden-arch>.vc-garden-lace{width:100%;height:30cqw;left:0;top:-11cqw;z-index:1;object-fit:fill}
.vc-garden .vc-deck{padding-top:0}
/* An empty photo slot leaves a deliberate paper composition, never a broken image. */
.vc-no-photo .vc-minimal-hero,.vc-no-photo .vc-coast-hero,.vc-no-photo .vc-ruby-hero,.vc-no-photo .vc-hy-hero,.vc-no-photo .vc-garden-hero{background:var(--c-ink)}
.vc-no-photo .vc-minimal-copy{padding-top:32cqw}
.vc-no-photo .vc-coast-copy,.vc-no-photo .vc-ruby-copy,.vc-no-photo .vc-hy-copy{padding-top:25cqw}
.vc-no-photo .vc-rose-portraits:has(>.vc-monogram:only-child){height:28cqw}
.vc-no-photo .vc-rose-portraits:has(>.vc-monogram:only-child) .vc-monogram{display:block;position:absolute;inset:8cqw 0 auto;text-align:center;font-size:17cqw}
/* The same compositions are scaled for the catalog instead of screenshot covers. */
.collection-thumb .c-miniature .c-cover.vc-cover{width:800px;max-width:none;height:1200px;min-height:1200px;padding:0}
.collection-thumb:has(.vc-cover) .c-miniature{height:1200px}
.library .collection-thumb:has(.vc-cover){--catalog-cover-height:1200px}
.vc-compact .vc-minimal-hero,.vc-compact .vc-coast-hero{min-height:150cqw}
.vc-compact .vc-coast-paper{display:none}
.vc-compact .vc-rose-stage{min-height:150cqw}
.vc-compact .vc-ruby-hero{min-height:108cqw}
.vc-compact .vc-ruby-foot{padding-top:5cqw}
.vc-compact .vc-ruby-foot .vc-subtitle{display:none}
/* The catalog opens on the first scene; the envelope continues inside the full card. */
.vc-compact .vc-hy-hero{min-height:150cqw}
.vc-compact .vc-hy-copy{padding:80cqw 8cqw 10cqw}
.vc-compact .vc-hy-letter{display:none}
.vc-compact .vc-garden-hero{min-height:87cqw}
.vc-compact .vc-garden-arch{min-height:80cqw;padding-top:11cqw}
.vc-compact .vc-garden-vows .vc-subtitle{display:none}
/* Page rhythms continue below the cover using the shared editable sections. */
body:is(.wd-vowry-minimal,.wd-vowry-rose,.wd-vowry-coast,.wd-vowry-ruby,.wd-vowry-hy,.wd-vowry-garden) .c-invitation{max-width:760px}
body:is(.wd-vowry-minimal,.wd-vowry-rose,.wd-vowry-coast,.wd-vowry-ruby,.wd-vowry-hy,.wd-vowry-garden) .c-section{padding-inline:clamp(24px,8vw,72px)}
body.wd-vowry-minimal .wedding-event{background:var(--c-secondary);padding:36px 24px;border-radius:28px;border:0}
body.wd-vowry-minimal .wedding-event+.wedding-event{padding:36px 24px;border:0;margin-top:18px}
body.wd-vowry-minimal .c-countdown-digits>div{background:var(--c-accent);color:var(--c-bg);padding:10px 8px;border-radius:10px;min-width:54px}
body.wd-vowry-minimal .c-countdown-digits strong{font-size:28px}
body.wd-vowry-minimal .c-countdown-digits .countdown-separator{display:none}
body.wd-vowry-minimal .c-section-heading h2,body.wd-vowry-ruby .c-section-heading h2{color:var(--c-accent)}
body.wd-vowry-rose .wedding-event{padding:38px 24px;border:1px solid var(--c-accent);border-radius:5px;background:color-mix(in srgb,var(--c-bg) 94%,var(--c-secondary))}
body.wd-vowry-rose .wedding-event+.wedding-event{padding-top:38px;border-top:1px solid var(--c-accent)}
body.wd-vowry-rose .wedding-photo-invitation .photo-zoom{border-radius:0;aspect-ratio:4/3}
body.wd-vowry-rose .wday-calendar{border:1px solid var(--c-accent);border-radius:5px;background:var(--c-bg)}
body.wd-vowry-rose .wd-accent-start{width:42%;left:-19%;opacity:.65}
body.wd-vowry-rose .wd-accent-end{width:40%;right:-22%;opacity:.55}
body.wd-vowry-coast .wday-calendar{background:var(--c-ink);color:var(--c-bg);padding:32px 20px;border:0}
body.wd-vowry-coast .wday-calendar .wday-selected time{background:var(--c-bg);color:var(--c-ink);outline-color:var(--c-bg)}
body.wd-vowry-coast #memories{background:var(--c-ink);color:var(--c-bg)}
body.wd-vowry-coast #memories .c-section-heading h2,body.wd-vowry-coast #memories .c-kicker{color:var(--c-bg)}
body.wd-vowry-coast .wedding-photo-story .photo-zoom{border-radius:0}
body.wd-vowry-coast .wedding-photo-invitation{rotate:0;width:100%;padding:0;border:0}
body.wd-vowry-coast #memories .c-gallery>.c-photo{background:none;border:0;padding:0;box-shadow:none;rotate:0}
body.wd-vowry-ruby .c-families{border-left:2px solid var(--c-accent);padding-left:22px;border-block:0;gap:24px}
body.wd-vowry-ruby .wday-calendar{background:var(--c-accent);color:var(--c-bg);padding:30px 18px;border:0;border-radius:7px}
body.wd-vowry-ruby .wday-calendar .wday-selected time{background:var(--c-bg);color:var(--c-accent);outline-color:var(--c-bg)}
body.wd-vowry-ruby .wedding-event .we-date-row{border-block:1px dotted var(--c-accent);padding-block:14px}
body.wd-vowry-ruby .wedding-event .we-date-row>strong{border:0;font-size:70px}
body.wd-vowry-hy .wd-accent-start{opacity:.55;width:38%;left:-17%;top:8%}
body.wd-vowry-hy .wd-accent-end{opacity:.45;width:34%;right:-19%}
body.wd-vowry-hy .we-title,body.wd-vowry-hy .wday-family-name{color:var(--c-accent)}
body.wd-vowry-hy #memories{background:var(--c-accent);color:var(--c-bg)}
body.wd-vowry-hy #memories .c-section-heading h2,body.wd-vowry-hy #memories .c-kicker{color:var(--c-bg)}
body.wd-vowry-hy .wday-calendar{border:1px solid var(--c-accent);background:color-mix(in srgb,var(--c-bg) 95%,var(--c-secondary))}
body.wd-vowry-garden .wedding-event{padding:34px 22px;border:1px solid var(--c-accent);border-radius:14px;background:var(--c-bg)}
body.wd-vowry-garden .wedding-event+.wedding-event{padding-top:34px;border-top:1px solid var(--c-accent)}
body.wd-vowry-garden .wedding-photo-invitation{margin-bottom:0}
body.wd-vowry-garden .wedding-photo-invitation .photo-zoom{border-radius:14px 14px 0 0;aspect-ratio:3/2}
body.wd-vowry-garden .wedding-photo-story{rotate:-5deg;max-width:390px;margin-inline:auto;padding:9px 9px 25px}
body.wd-vowry-garden .wd-accent-start{width:70%;left:-37%;opacity:.55}
body.wd-vowry-garden .wd-accent-end{width:55%;right:-28%;opacity:.5}
@media(max-width:480px){
 .vc-cover:not(.vc-compact) .vc-eyebrow{font-size:9px}
 .vc-cover:not(.vc-compact) .vc-subtitle{font-size:9px;letter-spacing:.055em}
 .vc-cover:not(.vc-compact) .vc-date{font-size:12px}
 .vc-cover:not(.vc-compact) .vc-intro{font-size:16px}
 .vc-cover:not(.vc-compact) .vc-ruby-masthead .vc-eyebrow{font-size:8px}
 .vc-cover:not(.vc-compact) .vc-ruby-masthead>span{font-size:7px}
 .vc-cover:not(.vc-compact) .vc-letter-paper .vc-eyebrow{font-size:7px}
 .vc-cover:not(.vc-compact) .vc-letter-paper .vc-subtitle{font-size:8px}
 .vc-cover:not(.vc-compact) .vc-ruby-foot .vc-subtitle{font-size:8px}
 body.wd-vowry-minimal .c-countdown-digits{gap:8px}
 body.wd-vowry-ruby .c-families{gap:18px;padding-left:16px}
 body.wd-vowry-rose .wedding-event,body.wd-vowry-garden .wedding-event{padding-inline:18px}
}

/* Calligraphy is a separate accent; user-selected font choices override it. */
.lw-page .vc-cover .vc-title{font-family:var(--vc-script,var(--c-heading));font-style:normal;line-height:1.5}
.lw-page :is(.vc-rose,.vc-garden) .vc-names{font-family:var(--vc-script,var(--c-heading));font-style:normal;font-size:calc(7.4cqw * var(--c-scale,1));line-height:1.45}

/* Complete reference collection: live type, full photographs and continuous paper. */
.lw-page .c-cover.vx-cover{container-type:inline-size;display:block;position:relative;isolation:isolate;width:100%;max-width:760px;height:auto;min-height:0;margin:0 auto;padding:0;overflow:hidden;background:var(--c-bg);color:var(--c-ink);text-align:center}
.lw-page .c-cover.vx-cover::before,.lw-page .c-cover.vx-cover::after{display:none}
.vx-cover *{box-sizing:border-box}
.vx-stage{position:relative;isolation:isolate;min-height:145cqw;display:flex;flex-direction:column;justify-content:space-between;background:var(--c-ink);color:#fffdf4}
.vx-stage>.vx-image{position:absolute;inset:0;z-index:-2}
.vx-stage::after{content:'';position:absolute;inset:0;z-index:-1;background:linear-gradient(180deg,#17201966,transparent 38%,#1720191a 52%,#101a19b3);pointer-events:none}
.vx-cover .vx-image{overflow:hidden}
.lw-page .vx-cover .vx-image :is(.c-photo,.photo-zoom){display:block;position:relative;inset:auto;width:100%;height:100%;min-height:0;margin:0;padding:0;aspect-ratio:auto;border:0;border-radius:0;background:none;transform:none;rotate:none;box-shadow:none}
.lw-page .vx-cover .vx-image img{display:block;width:100%;height:100%;object-fit:cover;border-radius:0}
.vx-image figcaption{display:none}
.vx-top,.vx-bottom{position:relative;z-index:2;padding:10cqw 8cqw}
.vx-bottom{padding-top:40cqw}
.vx-cover .vx-eyebrow{font:400 1.9cqw/1.9 var(--c-body);letter-spacing:.18em;margin:0 0 3cqw;white-space:pre-line}
.lw-page .vx-cover .vx-title{display:block;font:400 calc(8cqw * var(--c-scale,1))/1.45 var(--vc-script,var(--c-heading));letter-spacing:0;color:inherit;text-transform:none;margin:0 auto;max-width:100%;white-space:pre-line;text-wrap:balance;overflow-wrap:anywhere}
.lw-page .vx-cover .vx-names{display:flex;flex-direction:column;align-items:center;gap:1cqw;font:400 calc(7.6cqw * var(--c-scale,1))/1.35 var(--c-heading);letter-spacing:-.025em;text-transform:none;color:inherit;max-width:100%;margin:5cqw auto 0}
.vx-names>span{display:block;max-width:100%;overflow-wrap:anywhere;white-space:pre-line;text-wrap:balance}
.vx-names>i{font:italic 5cqw/1.2 var(--c-heading)}
.vx-date{display:block;font:400 3cqw/1.8 var(--c-heading);letter-spacing:.18em;margin:5cqw 0 0}
.vx-art{position:absolute;max-width:none;pointer-events:none;object-fit:contain;height:auto;z-index:1}
.vx-deck{padding:10cqw 9cqw;background:var(--c-bg);color:var(--c-ink)}
.vx-deck>p{font:400 3.6cqw/1.9 var(--c-heading);max-width:36ch;white-space:pre-line;margin:0 auto}
.vx-deck>a{display:inline-flex;align-items:center;gap:20px;min-height:44px;font:400 12px/1.7 var(--c-body);margin-top:22px;color:inherit;border-bottom:1px solid currentColor;text-decoration:none}
.vx-deck>a:focus-visible{outline:2px solid currentColor;outline-offset:6px}
/* Dấu Yêu: a monochrome editorial print with a separate masthead and dateline. */
.vx-editorial-front{display:grid;grid-template-rows:auto minmax(96cqw,1fr) auto;gap:5cqw;min-height:150cqw;padding:7cqw 7cqw 6cqw;background:var(--c-bg);color:var(--c-ink);text-align:left}
.vx-editorial-masthead{border-bottom:1px solid currentColor;padding-bottom:3cqw}
.vx-editorial .vx-eyebrow{font-size:1.7cqw;letter-spacing:.22em;margin:0 0 2cqw}
.lw-page .vx-cover.vx-editorial .vx-title{font:400 calc(5.2cqw * var(--c-scale,1))/1.2 var(--c-heading);text-transform:uppercase;letter-spacing:.09em}
.vx-editorial-print{position:relative;isolation:isolate;display:flex;align-items:flex-end;min-width:0;min-height:96cqw;background:var(--c-secondary);color:#fff}
.vx-editorial-print>.vx-image{position:absolute;inset:0;z-index:-2}
.vx-editorial-print::after{content:'';position:absolute;inset:0;z-index:-1;background:linear-gradient(transparent 35%,#10151038 58%,#101510c9);pointer-events:none}
.lw-page .vx-cover.vx-editorial .vx-image img{filter:grayscale(1);object-position:var(--c-cover-position,center) 38%}
.vx-editorial-signature{width:100%;padding:10cqw 6cqw 7cqw;pointer-events:none}
.lw-page .vx-cover.vx-editorial .vx-names{align-items:flex-start;font:400 calc(7.8cqw * var(--c-scale,1))/1.15 var(--c-heading);letter-spacing:-.035em;margin:0;gap:1cqw}
.vx-editorial .vx-names>i{font-size:4.5cqw;margin:1cqw 0}
.vx-editorial-footer{display:flex;align-items:center;justify-content:space-between;gap:3cqw}
.vx-editorial .vx-date{font:400 2.1cqw/1.8 var(--c-body);letter-spacing:.12em;margin:0}
.vx-editorial-footer>span{font:italic 3.4cqw/1.4 var(--c-heading)}
.vx-editorial.vx-empty .vx-editorial-print{color:var(--c-ink);align-items:center}
.vx-editorial.vx-empty .vx-editorial-print::after{display:none}
/* Ngày Thương: slate lettering on white paper above a wide photograph. */
.vx-poster-front{display:flex;flex-direction:column;justify-content:space-between;gap:6cqw;min-height:150cqw;padding:8cqw 7cqw 6cqw;background:var(--c-bg);color:var(--c-ink)}
.vx-poster .vx-eyebrow{font-size:1.8cqw;margin:0 0 3cqw}
.vx-poster-mark{display:block;font:400 7cqw/1 serif;margin:0 auto 3cqw}
.lw-page .vx-cover.vx-poster .vx-title{font:400 calc(4cqw * var(--c-scale,1))/1.4 var(--c-heading);text-transform:uppercase;letter-spacing:.16em}
.lw-page .vx-cover.vx-poster .vx-names{font:400 calc(9cqw * var(--c-scale,1))/1.1 var(--c-heading);letter-spacing:-.035em;margin:4cqw 0 0;gap:1cqw}
.vx-poster .vx-names>i{font-size:4.5cqw;line-height:1;margin:1cqw 0}
.vx-poster-print{position:relative;width:100%;aspect-ratio:3/2}
.vx-poster-print>.vx-image{position:absolute;inset:0}
.lw-page .vx-cover.vx-poster .vx-image img{object-position:var(--c-cover-position,center) center}
.vx-poster-footer{padding-top:3cqw;border-top:1px solid color-mix(in srgb,currentColor 35%,transparent)}
.vx-poster .vx-date{font:400 2.5cqw/1.8 var(--c-body);letter-spacing:.18em;margin:0}
.vx-poster.vx-empty .vx-poster-front{justify-content:center;gap:12cqw}
.vx-magnolia .vx-art-top{width:40%;top:-4%;left:-15%}
.vx-magnolia .vx-art-bottom{width:45%;bottom:-3%;right:-16%}
.vx-magnolia .vx-bottom{background:linear-gradient(transparent,#283524cc);padding-top:35cqw}
.vx-paper{position:relative;isolation:isolate;padding:13cqw 14cqw 12cqw;overflow:hidden}
/* These cutouts are cropped on opposite edges; face their intact petals toward the names. */
.vx-paper .vx-art{transform:scaleX(-1)}
.vx-paper .vx-art-top{width:35%;left:-11%;top:0}
.vx-paper .vx-art-bottom{width:32%;right:-9%;bottom:0}
.vx-paper :is(.vx-title,.vx-names,.vx-date,.vx-eyebrow){position:relative;z-index:2}
.lw-page .vx-botanical .vx-title{font-size:calc(6cqw * var(--c-scale,1))}
.lw-page .vx-botanical .vx-names{font-family:var(--vc-script,var(--c-heading));font-size:calc(8cqw * var(--c-scale,1));margin-top:5cqw}
.vx-landscape{position:relative;height:75cqw}
.vx-landscape>.vx-image{height:100%}
.vx-gold-heading{position:relative;padding:8cqw 10cqw 9cqw}
.vx-gold-heading .vx-art-crest{position:relative;width:62%;height:22cqw;margin:0 auto 5cqw;display:block}
.lw-page .vx-golden .vx-title{font:400 calc(4.5cqw * var(--c-scale,1))/1.4 var(--c-heading);letter-spacing:.15em;text-transform:uppercase}
.lw-page .vx-golden .vx-names{font-size:calc(6.7cqw * var(--c-scale,1))}
.vx-golden .vx-landscape{height:84cqw}
.vx-red-heading{position:relative;padding:9cqw 9cqw 7cqw;color:var(--c-accent)}
.lw-page .vx-red-home .vx-title{font:500 calc(13cqw * var(--c-scale,1))/1.1 var(--c-heading);text-transform:uppercase;max-width:6ch;letter-spacing:-.06em}
.vx-heart{position:absolute;right:13%;bottom:17%;font:12cqw/1 serif;rotate:-20deg}
.vx-red-home .vx-stage{min-height:97cqw;justify-content:flex-end}
.vx-red-home .vx-bottom{padding-top:50cqw}
.vx-empty .vx-stage{background:var(--c-ink)}
.vx-empty .vx-landscape{display:none}
.vx-compact .vx-deck{display:none}
.vx-compact .vx-stage{min-height:150cqw}
.vx-compact.vx-red-home .vx-stage{min-height:90cqw}
.vx-compact.vx-botanical .vx-paper{display:flex;min-height:150cqw;flex-direction:column;justify-content:center;padding:18cqw 14cqw}
.vx-compact.vx-botanical .vx-landscape{display:none}
.vx-compact.vx-golden .vx-gold-heading{padding-block:5cqw}
.collection-thumb .c-miniature .c-cover.vx-cover{width:800px;max-width:none;height:1200px;min-height:1200px;padding:0}
.collection-thumb:has(.vx-cover) .c-miniature{height:1200px}
.library .collection-thumb:has(.vx-cover){--catalog-cover-height:1200px}

/* Scope all body changes to these fourteen templates. */
body.wd-vowry .c-invitation{max-width:760px;width:100%;padding:0;box-shadow:none;border:0;border-radius:0}
body.wd-vowry .c-cover.vo-cover{max-width:760px}
body.wd-vowry :is(#event,#story,#memories){padding:0;border:0}
body.wd-vowry .c-section-heading{border:0;margin:0;padding:0;text-align:center}
body.wd-vowry .c-section-heading :is(h2,.c-kicker){text-align:center;margin-inline:auto;color:inherit}
body.wd-vowry .c-section-heading h2{font-family:var(--vc-script,var(--c-heading));font-size:clamp(32px,6vw,50px);line-height:1.55;max-width:22ch;letter-spacing:0}
body.wd-vowry .vw-introduction{padding:66px clamp(24px,7vw,68px) 45px}
body.wd-vowry .vw-introduction>.c-message{max-width:40ch;margin:22px auto;font:400 18px/1.9 var(--c-heading);text-align:center}
body.wd-vowry .vw-introduction>.c-signature{text-align:center}
body.wd-vowry .c-families{border:0;max-width:none;padding:32px 0 0;gap:28px}
body.wd-vowry .vw-invitation-photo,body.wd-vowry .vw-story-hero{position:relative;isolation:isolate;overflow:hidden}
body.wd-vowry .wedding-inline-photo{width:100%;max-width:none;margin:0;padding:0;border:0;background:none;rotate:none;transform:none;box-shadow:none}
body.wd-vowry .wedding-inline-photo .c-photo{display:block;width:100%;padding:0;margin:0;border:0;background:none;box-shadow:none;rotate:none}
body.wd-vowry .wedding-inline-photo .photo-zoom{display:block;width:100%;border:0;padding:0;border-radius:0;aspect-ratio:4/3;overflow:hidden;background:var(--c-secondary)}
body.wd-vowry .wedding-inline-photo img{display:block;width:100%;height:100%;object-fit:cover;border-radius:0}
body.wd-vowry .wedding-inline-photo figcaption{display:none}
.vw-photo-caption{position:absolute;bottom:0;inset-inline:0;pointer-events:none;margin:0;padding:55px 25px 25px;color:#fff;background:linear-gradient(transparent,#132018a6);font:400 10px/2 var(--c-body);letter-spacing:.15em;text-align:center;white-space:pre-line}
body.wd-vowry .vw-ceremonies{position:relative;isolation:isolate;overflow:hidden;padding:45px clamp(24px,7vw,68px);background:var(--c-bg)}
.vw-section-flower{position:absolute;left:-85px;top:14%;width:190px;height:auto;opacity:.22;z-index:-1;pointer-events:none}
body.wd-vowry .wedding-schedule{margin:0 auto}
body.wd-vowry .wedding-event{border:0;border-radius:0;background:none;padding:30px 0;max-width:none;box-shadow:none}
body.wd-vowry .wedding-event+.wedding-event{border-top:1px solid color-mix(in srgb,currentColor 20%,transparent);padding:42px 0 26px;margin-top:22px}
.vw-event-note{text-align:center;max-width:36ch;margin:24px auto 0;font:italic 16px/1.9 var(--c-heading);white-space:pre-line}
body.wd-vowry .vw-date-panel{padding:12px clamp(20px,7vw,64px) 50px;background:var(--c-secondary);color:var(--c-ink)}
body.wd-vowry .wday-calendar{margin:22px auto 0;border:0;border-radius:0;background:none;color:inherit;padding:25px 4px}
body.wd-vowry .c-countdown{border:0;background:none;color:inherit;margin:0 auto;padding:24px 0 0}
body.wd-vowry .c-countdown-digits>div{border:0;border-radius:0;background:none;color:inherit;min-width:42px;padding:0}
body.wd-vowry .c-countdown-digits strong{font-size:clamp(30px,6vw,48px)}
body.wd-vowry .c-location{margin:0;padding:42px clamp(24px,7vw,68px);border:0;border-radius:0}
body.wd-vowry #agenda{background:var(--c-bg);border:0;padding:50px clamp(24px,7vw,68px)}
body.wd-vowry .vw-story-hero .photo-zoom{aspect-ratio:4/5}
.vw-story-hero::after{content:'';position:absolute;inset:35% 0 0;background:linear-gradient(transparent,#13201bbb);pointer-events:none}
.vw-story-heading{position:absolute;z-index:2;inset:auto 0 0;padding:55px 25px 32px;color:#fff;pointer-events:none}
body.wd-vowry .vw-story-heading .c-section-heading h2{color:inherit;font-size:clamp(34px,7vw,56px);margin-bottom:0}
.vw-story-empty{position:relative;color:var(--c-ink);padding-top:55px}
body.wd-vowry .vw-story-copy{padding:45px clamp(24px,7vw,68px) 55px}
body.wd-vowry .c-moments{display:grid;grid-template-columns:1fr;gap:0;max-width:580px;margin:auto}
body.wd-vowry .c-moment{display:grid;grid-template-columns:35px minmax(0,1fr);padding:26px 0;border:0;border-top:1px solid color-mix(in srgb,currentColor 18%,transparent);gap:18px;text-align:left}
body.wd-vowry .c-moment-copy{min-width:0}
body.wd-vowry #memories .c-gallery-copy{padding:55px 26px 28px;margin:0}
body.wd-vowry #memories .c-gallery-copy .c-section-intro{text-align:center;margin:0 auto}
body.wd-vowry #memories .c-gallery{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:4px;width:100%;max-width:none;margin:0;padding:0;overflow:visible;perspective:none}
body.wd-vowry #memories .c-gallery>.c-photo{position:relative;display:block;width:100%;min-width:0;margin:0;padding:0;border:0;border-radius:0;background:none;box-shadow:none;rotate:none;transform:none;grid-column:auto;grid-row:auto;align-self:stretch}
body.wd-vowry #memories .c-gallery>.c-photo:nth-child(3n+1){grid-column:1/-1}
body.wd-vowry #memories .c-gallery>.c-photo:last-child:nth-child(3n+2){grid-column:1/-1}
body.wd-vowry #memories .c-gallery .photo-zoom{display:block;width:100%;aspect-ratio:3/4;border:0;border-radius:0;padding:0;transform:none;overflow:hidden}
body.wd-vowry #memories .c-gallery>.c-photo:nth-child(3n+1) .photo-zoom,body.wd-vowry #memories .c-gallery>.c-photo:last-child:nth-child(3n+2) .photo-zoom{aspect-ratio:4/3}
body.wd-vowry #memories .c-gallery img{display:block;width:100%;height:100%;border-radius:0;object-fit:cover;transform:none}
body.wd-vowry #memories .c-gallery figcaption{display:none}
body.wd-vowry .vw-closing{padding:75px 30px 65px;background:var(--c-bg);border:0}
body.wd-vowry .vw-closing h2{font-family:var(--vc-script,var(--c-heading));font-size:clamp(40px,7vw,60px);line-height:1.5}
/* Individual rhythms continue through the invitation, calendar and memories. */
body:is(.wd-vowry-hy,.wd-vowry-red-home,.wd-vowry-golden) .vw-date-panel{background:var(--c-accent);color:var(--c-bg)}
body.wd-vowry-golden .vw-date-panel{background:var(--c-secondary);color:var(--c-ink)}
body:is(.wd-vowry-coast,.wd-vowry-garden,.wd-vowry-olive,.wd-vowry-olive-twelve) .vw-date-panel{background:var(--c-ink);color:var(--c-bg)}
body.wd-vowry .vw-date-panel .wday-selected time{background:currentColor;outline-color:currentColor}
body.wd-vowry .vw-date-panel .wday-selected time{background:var(--c-accent);color:var(--c-bg);outline-color:var(--c-accent)}
body:is(.wd-vowry-hy,.wd-vowry-red-home) .vw-date-panel .wday-selected time{background:var(--c-bg);color:var(--c-accent);outline-color:var(--c-bg)}
body.wd-vowry-olive-twelve .vw-date-panel{background:var(--c-secondary);color:var(--c-ink)}
body.wd-vowry-twelve .vw-ceremonies{background:var(--c-secondary)}
body.wd-vowry-editorial .vw-story-copy{background:var(--c-secondary)}
body:is(.wd-vowry-magnolia,.wd-vowry-rose) .vw-introduction{padding-top:80px}
body.wd-vowry-golden #memories{background:var(--c-bg);color:var(--c-ink)}
.wd-vowry .vc-hy-hero>.vc-photo{inset:0;height:100%;mask-image:none}
@media(max-width:480px){
 .vx-cover:not(.vx-compact) .vx-eyebrow{font-size:9px}
 .vx-cover:not(.vx-compact) .vx-date{font-size:12px}
 .vx-cover:not(.vx-compact) .vx-deck>p{font-size:17px}
 body.wd-vowry .c-families{gap:18px}
 body.wd-vowry .c-family>p:not(.c-kicker){font-size:14px}
 body.wd-vowry .c-moment{gap:10px;grid-template-columns:27px minmax(0,1fr)}
 body.wd-vowry .c-countdown-digits{gap:12px}
}

/* Red Home and Golden: complete stationery covers, scaled from the same canvas. */
.lw-page .vx-cover:is(.vx-red-home,.vx-golden){min-height:150cqw;background:var(--c-bg);padding:0}
.vx-red-home .vx-red-heading{padding:5cqw 10cqw 4cqw}
.lw-page .vx-red-home .vx-title{font:400 calc(10cqw * var(--c-scale,1))/1.12 var(--c-heading);letter-spacing:-.035em;max-width:8ch}
.vx-red-rule{display:block;width:9cqw;margin:3cqw auto 0;font:400 7cqw/1.1 serif;color:var(--c-accent)}
.vx-cover .vx-ceremony-portrait{position:relative;width:76%;height:66cqw;margin:0 auto;isolation:isolate}
.vx-cover .vx-ceremony-portrait>.vx-image{position:relative;inset:auto;height:100%;overflow:hidden;border-radius:40cqw 40cqw 0 0;outline:1px solid var(--c-accent);outline-offset:1.5cqw}
.vx-cover .vx-ceremony-portrait .vx-art{width:40cqw;height:auto;z-index:2;object-fit:contain}
.vx-cover .vx-ceremony-portrait .vx-art-left{left:-19cqw;bottom:-5cqw;transform:rotate(-12deg)}
.vx-cover .vx-ceremony-portrait .vx-art-right{right:-19cqw;top:-3cqw;transform:scaleX(-1) rotate(-16deg)}
.vx-red-names{padding:3cqw 8cqw 4cqw}
.lw-page .vx-red-home .vx-names{font-size:calc(6cqw * var(--c-scale,1));line-height:1.3;gap:0;margin:3cqw auto 0}
.vx-red-home .vx-names>i{font-size:4cqw;margin:.8cqw 0}
.vx-red-home .vx-date{font-size:2.6cqw;margin-top:3cqw}
.vx-golden .vx-gold-heading,.vx-compact.vx-golden .vx-gold-heading{padding:7cqw 10cqw 6cqw}
.vx-happiness-seal{display:grid;place-items:center;width:15cqw;height:15cqw;margin:0 auto 4cqw;border:1px solid var(--c-accent);border-radius:50%;outline:1px solid color-mix(in srgb,var(--c-accent) 40%,transparent);outline-offset:1cqw;color:var(--c-accent);font:400 10cqw/1 serif}
.lw-page .vx-golden .vx-names{font-size:calc(6cqw * var(--c-scale,1));line-height:1.35;margin:4cqw auto 0}
.vx-golden .vx-date{font-size:2.5cqw;margin-top:4cqw}
.vx-golden .vx-ceremony-portrait{height:59cqw;margin-bottom:7cqw}
.vx-golden .vx-ceremony-portrait .vx-art{filter:brightness(1.35) saturate(.75)}
.vx-cover.vx-empty .vx-ceremony-portrait{display:none}
.vx-cover.vx-empty:is(.vx-red-home,.vx-golden){display:flex;flex-direction:column;justify-content:center}

.vx-red-home .vx-ceremony-portrait{height:60cqw}

/* Hỷ Mộng opens as red stationery; the portrait is tucked into its envelope. */
.wd-theme.lw-page .vc-cover.vc-hy .vc-hy-hero{min-height:150cqw;padding:16cqw 14cqw;justify-content:center;align-items:center;gap:8cqw;background:var(--c-bg);color:var(--c-ink);text-align:center}
.wd-theme.lw-page .vc-cover.vc-hy .vc-hy-hero::after{inset:6cqw;border:1px solid color-mix(in srgb,var(--c-accent) 55%,transparent);outline:1px solid color-mix(in srgb,var(--c-accent) 22%,transparent);outline-offset:1.4cqw;background:none;z-index:0}
.wd-theme.lw-page .vc-cover.vc-hy .vc-hy-hero .vc-heading{padding:0;position:relative;z-index:1}
.wd-theme.lw-page .vc-cover.vc-hy .vc-hy-emblem{position:relative;z-index:1;display:block;font:400 15cqw/1 serif;color:var(--c-accent)}
.wd-theme.lw-page .vc-cover.vc-hy .vc-hy-hero .vc-eyebrow{font-size:2cqw;color:var(--c-accent);margin:0 0 4cqw}
.wd-theme.lw-page .vc-cover.vc-hy .vc-title{font:400 calc(8cqw * var(--c-scale,1))/1.45 var(--vc-script,var(--c-heading));color:var(--c-accent)}
.wd-theme.lw-page .vc-cover.vc-hy .vc-hy-copy{width:100%;padding:0}
.wd-theme.lw-page .vc-cover.vc-hy .vc-names{font-size:calc(7cqw * var(--c-scale,1));line-height:1.4;text-transform:none;letter-spacing:-.02em;color:var(--c-ink);margin:0}
.wd-theme.lw-page .vc-cover.vc-hy .vc-names>i{font-size:4cqw;margin:2cqw 0}
.wd-theme.lw-page .vc-cover.vc-hy .vc-date{font-size:2.8cqw;letter-spacing:.14em;margin-top:6cqw;color:var(--c-accent)}
.wd-theme.lw-page .vc-cover.vc-hy .vc-hy-flower-top{width:36cqw;height:auto;left:-12cqw;top:6cqw;opacity:.6;rotate:-15deg;z-index:0}
.wd-theme.lw-page .vc-cover.vc-hy .vc-hy-flower-bottom{width:35cqw;height:auto;right:-12cqw;bottom:5cqw;opacity:.55;rotate:165deg;z-index:0}
.wd-theme.lw-page .vc-cover.vc-hy .vc-hy-letter{height:93cqw;padding-top:7cqw}
/* The envelope asset has transparent side margins: its visible pocket is 52cqw wide. */
.wd-theme.lw-page .vc-cover.vc-hy .vc-letter-paper{width:44%;rotate:-3deg}
.wd-theme.lw-page .vc-cover.vc-hy .vc-letter-photo{min-height:0;padding:2cqw 2cqw 5cqw}
.wd-theme.lw-page .vc-cover.vc-hy .vc-letter-photo .vc-hy-portrait{position:relative;inset:auto;width:100%;height:54cqw;aspect-ratio:auto;margin:0}
.wd-theme.lw-page .vc-cover.vc-hy .vc-letter-photo .vc-hy-portrait img{object-position:var(--c-cover-position,center) 30%}
.wd-theme.lw-page .vc-cover.vc-hy .vc-letter-photo .vc-subtitle{margin:2cqw auto 0;font-size:1.5cqw;line-height:1.6}
.wd-theme.lw-page .vc-cover.vc-hy .vc-hy-letter .vc-red-pocket{width:78cqw;height:45cqw;left:11cqw;bottom:7cqw;object-fit:contain}
.wd-theme.lw-page .vc-cover.vc-hy .vc-hy-letter .vc-red-seal{bottom:23cqw}
