@font-face{font-family:'DM Serif Display';src:url('brand/dm-serif-display-latin.woff') format('woff');font-weight:400;font-style:normal;font-display:swap}
/* Scoped collection: no styles apply to existing designs. */
body[data-booth-collection=noir-mail]{--ss-display:'Cormorant Garamond',Georgia,serif;--ss-script:'Great Vibes',cursive;--ss-reading:Nunito,Arial,sans-serif;background:var(--paper)}
[data-booth-collection=noir-mail] .bt-tulip{width:75px;height:85px;max-width:100%}
[data-booth-collection=noir-mail] #booth .machine{border-radius:44px 44px 32px 32px;background:linear-gradient(130deg,var(--surface),color-mix(in srgb,var(--soft) 85%,var(--surface)));box-shadow:inset 0 0 0 7px var(--surface),0 25px 45px color-mix(in srgb,var(--ink) 15%,transparent);border:2px solid color-mix(in srgb,var(--accent) 45%,transparent)}
[data-booth-collection=noir-mail] .bt-camera-emblem{position:absolute;right:12px;top:27%;width:48px;pointer-events:none}[data-booth-collection=noir-mail] .bt-camera-emblem .bt-tulip{width:44px;height:52px}
[data-booth-collection=noir-mail] .ss-side-panel{border-radius:20px;background:var(--soft)}[data-booth-collection=noir-mail] .ss-side-panel .bt-tulip{width:34px}
[data-booth-collection=noir-mail] .ss-question-ticket{border-radius:32px;border:1px solid color-mix(in srgb,var(--accent) 25%,transparent);box-shadow:0 14px 36px color-mix(in srgb,var(--accent) 10%,transparent);background:var(--surface)}
[data-booth-collection=noir-mail] #game .answer-card,[data-booth-collection=noir-mail] #game .lb-option,[data-booth-collection=noir-mail] #game .fun-option{border-radius:24px;background:color-mix(in srgb,var(--soft) 55%,var(--surface));border:1px solid color-mix(in srgb,var(--accent) 22%,transparent);min-width:0;overflow-wrap:anywhere}
[data-booth-collection=noir-mail] #invitation{max-width:1200px;margin:auto;padding:0 clamp(14px,3vw,44px);overflow:clip}
[data-booth-collection=noir-mail] #invitation .hero{display:grid!important;grid-template-columns:1.1fr 1fr;align-items:center;gap:clamp(20px,4vw,64px);padding:clamp(36px,7vw,90px) 0 50px;min-height:0;text-align:left;isolation:isolate}
[data-booth-collection=noir-mail] .bt-hero-copy{position:relative;z-index:3;min-width:0;background:color-mix(in srgb,var(--surface) 90%,transparent);border:1px solid color-mix(in srgb,var(--accent) 22%,transparent);border-radius:130px 130px 36px 36px;padding:clamp(28px,4vw,56px) clamp(22px,3vw,42px);text-align:center}
[data-booth-collection=noir-mail] #invitation .hero h1{font:400 clamp(54px,6.5vw,96px)/1.02 var(--ss-display);letter-spacing:-.035em;overflow-wrap:anywhere;margin:20px 0;max-width:100%}
[data-booth-collection=noir-mail] .hero .hero-sub{font-size:clamp(19px,2vw,24px);line-height:1.6;margin:20px auto;max-width:35ch}
[data-booth-collection=noir-mail] .hero .date-line{font-size:clamp(19px,2.2vw,27px);letter-spacing:.04em;margin:20px 0}
[data-booth-collection=noir-mail] .hero .bt-hero-visual{position:relative!important;inset:auto!important;width:100%!important;height:auto!important;min-height:0;margin:0;transform:rotate(2deg);z-index:2}
[data-booth-collection=noir-mail] .hero .hero-photo{position:relative!important;inset:auto!important;width:100%!important;transform:none!important;padding:12px 12px 36px;border-radius:160px 160px 28px 28px;background:var(--surface);box-shadow:0 20px 40px color-mix(in srgb,var(--ink) 13%,transparent);margin:0;aspect-ratio:auto}
[data-booth-collection=noir-mail] .hero .hero-photo img{width:100%;height:auto;aspect-ratio:4/5;object-fit:cover;border-radius:150px 150px 18px 18px}
[data-booth-collection=noir-mail] .hero .photo-note{position:static;transform:none;font:400 clamp(25px,3vw,38px)/1.2 var(--ss-script);text-align:center;margin:15px 0 0}
[data-booth-collection=noir-mail] .hero .ff-hero-bouquet{width:clamp(140px,25vw,300px)!important;bottom:-25px!important;top:auto!important;opacity:.95;z-index:1}
[data-booth-collection=noir-mail] .hero .ff-hero-left{left:-75px!important}[data-booth-collection=noir-mail] .hero .ff-hero-right{right:-90px!important}
[data-booth-collection=noir-mail] .bt-section-nav{display:flex;justify-content:center;flex-wrap:wrap;gap:9px;padding:18px 0 32px}
[data-booth-collection=noir-mail] .bt-section-nav a{padding:12px 19px;border-radius:40px;border:1px solid color-mix(in srgb,var(--ink) 16%,transparent);background:var(--surface);font:600 15px/1.4 var(--ss-reading);color:var(--ink);text-decoration:none}
[data-booth-collection=noir-mail] .bt-section-nav a:hover{background:var(--soft)}
[data-booth-collection=noir-mail] #invitation .section{padding:clamp(42px,7vw,90px) clamp(8px,2vw,24px);scroll-margin-top:90px}
[data-booth-collection=noir-mail] #invitation .section h2{font-family:var(--ss-display);font-size:clamp(40px,5vw,66px);line-height:1.12;letter-spacing:-.025em;overflow-wrap:anywhere}
[data-booth-collection=noir-mail] #invitation .ticket{border:1px solid color-mix(in srgb,var(--accent) 25%,transparent);border-radius:36px;background:var(--soft);overflow:hidden;box-shadow:none}
[data-booth-collection=noir-mail] .ticket-side{border-left:1px dashed color-mix(in srgb,var(--accent) 40%,transparent);background:var(--surface)}
[data-booth-collection=noir-mail] .bt-program .arch-photo,[data-booth-collection=noir-mail] #venue img{border-radius:100px 100px 28px 28px;aspect-ratio:4/5;object-fit:cover}
[data-booth-collection=noir-mail] .details-list .detail{border-radius:24px;background:var(--surface);margin:12px 0;padding:20px;border:1px solid color-mix(in srgb,var(--accent) 18%,transparent)}
[data-booth-collection=noir-mail] .little-details article{border-radius:30px;background:var(--surface);padding:28px 22px;border:1px solid color-mix(in srgb,var(--accent) 16%,transparent)}
[data-booth-collection=noir-mail] .ff-memories{gap:22px;align-items:start}[data-booth-collection=noir-mail] .polaroid.ff-memory{border-radius:60px 60px 22px 22px;padding:10px 10px 22px;background:var(--surface);transform:rotate(var(--bt-card-turn));box-shadow:0 10px 24px color-mix(in srgb,var(--ink) 8%,transparent)}
[data-booth-collection=noir-mail] .ff-memory img{border-radius:50px 50px 14px 14px;aspect-ratio:1;object-fit:cover}
[data-booth-collection=noir-mail] .rsvp-wrap{max-width:900px;border-radius:42px;background:var(--soft);padding:clamp(24px,4vw,48px);border:1px solid color-mix(in srgb,var(--accent) 20%,transparent)}
[data-booth-collection=noir-mail] .lb-rsvp-actions{display:none}[data-booth-collection=noir-mail] .bt-inline-shell{min-height:0!important;background:transparent!important;padding:0!important;max-width:none!important;border:none!important;box-shadow:none!important;display:block!important}
[data-booth-collection=noir-mail] .bt-inline-content{padding:20px 0 0!important;width:100%;max-width:760px;margin:auto;color:var(--ink)}
[data-booth-collection=noir-mail] .bt-inline-content h2{display:none}[data-booth-collection=noir-mail] .bt-inline-content .subtitle{display:none}
[data-booth-collection=noir-mail] .guest-form{background:var(--surface);padding:clamp(20px,4vw,36px);border-radius:28px;max-width:760px;margin:0 auto;box-sizing:border-box;text-align:left}
[data-booth-collection=noir-mail] .guest-form label,[data-booth-collection=noir-mail] .guest-form legend{font:600 17px/1.6 var(--ss-reading);color:var(--ink)}
[data-booth-collection=noir-mail] .guest-form input:not([type=checkbox]):not([type=radio]):not([type=file]),[data-booth-collection=noir-mail] .guest-form textarea{box-sizing:border-box;width:100%;max-width:100%;border-radius:16px;background:var(--paper);font-size:17px;color:var(--ink);border:1px solid color-mix(in srgb,var(--ink) 22%,transparent);padding:14px 16px}
[data-booth-collection=noir-mail] .guest-form .primary,[data-booth-collection=noir-mail] .guest-form .secondary{border-radius:40px;font-size:17px;min-height:48px;white-space:normal;overflow-wrap:anywhere}
[data-booth-collection=noir-mail] .bt-album-section>p{max-width:44ch;margin:0 auto 25px;font-size:20px;line-height:1.6}
[data-booth-collection=noir-mail] .wedding-album{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:14px;margin:30px auto;max-width:850px}[data-booth-collection=noir-mail] .wedding-album img{display:block;width:100%;aspect-ratio:1;object-fit:cover;border-radius:20px}
[data-booth-collection=noir-mail] .faq details{border-radius:20px;border:1px solid color-mix(in srgb,var(--ink) 15%,transparent);padding:18px 22px;margin:12px 0;background:var(--surface)}
@media(max-width:720px){[data-booth-collection=noir-mail] #invitation .hero{grid-template-columns:1fr;gap:24px;padding-top:25px}[data-booth-collection=noir-mail] .bt-hero-copy{border-radius:90px 90px 30px 30px;padding:34px 24px}[data-booth-collection=noir-mail] #invitation .hero h1{font-size:clamp(50px,13vw,78px)}[data-booth-collection=noir-mail] .hero .bt-hero-visual{width:85%!important;margin:auto;transform:rotate(1deg)}[data-booth-collection=noir-mail] .bt-section-nav{justify-content:flex-start;flex-wrap:nowrap;overflow:auto;scrollbar-width:thin;padding-bottom:18px}[data-booth-collection=noir-mail] .bt-section-nav a{flex-shrink:0}[data-booth-collection=noir-mail] .ticket-side{border-left:none;border-top:1px dashed var(--accent)}[data-booth-collection=noir-mail] .photo-actions{display:grid;grid-template-columns:1fr;gap:12px}[data-booth-collection=noir-mail] .wedding-album{grid-template-columns:repeat(2,minmax(0,1fr))}[data-booth-collection=noir-mail] .ff-memories{gap:15px}[data-booth-collection=noir-mail] .bt-inline-content{min-width:0}[data-booth-collection=noir-mail] .guest-form .consent{align-items:flex-start}}
@media(prefers-reduced-motion:reduce){[data-booth-collection=noir-mail] *{scroll-behavior:auto!important}}

[data-booth-collection=noir-mail] .hero .hero-photo{max-width:none!important;max-height:none!important;height:auto!important;min-width:0!important}[data-booth-collection=noir-mail] .hero .hero-photo img{max-width:none!important;max-height:none!important}[data-booth-collection=noir-mail] [hidden]{display:none!important}

[data-booth-collection=noir-mail] .hero .bt-hero-visual{display:block!important;padding:0!important;grid-template-columns:none!important}
[data-booth-collection=noir-mail] .ff-botanical{animation:none!important}
[data-booth-collection=noir-mail] #booth .ss-intro{background:var(--paper);isolation:isolate;border-radius:24px;transform:none!important;z-index:10;padding:8px 0}
[data-booth-collection=noir-mail] #booth .ss-club-mark,[data-booth-collection=noir-mail] #booth .ss-admission,[data-booth-collection=noir-mail] #booth .ss-intro-icons{display:none}
[data-booth-collection=noir-mail] #game .gamecard{border-radius:42px;background:linear-gradient(140deg,color-mix(in srgb,var(--soft) 40%,var(--surface)),var(--surface) 65%);border-color:color-mix(in srgb,var(--accent) 35%,transparent)}
[data-booth-collection=noir-mail] #choices .btn.light,[data-booth-collection=noir-mail] #choices .ss-pose-choice{border-radius:24px;background:color-mix(in srgb,var(--soft) 45%,var(--surface));border-color:color-mix(in srgb,var(--accent) 25%,transparent)}
[data-booth-collection=noir-mail] #choices .btn.light:hover,[data-booth-collection=noir-mail] #choices .selected{background:var(--highlight);color:var(--ink)}
/* Cherry on Top · Love Mail. Every colour follows the invitation palette. */
body[data-booth-collection=noir-mail]{--cherry-leaf:var(--ink);--ss-display:'Cormorant Garamond',Georgia,serif;--ss-reading:'DM Sans',Arial,sans-serif;background:var(--paper);color:var(--ink)}
[data-booth-collection=noir-mail] .cm-icon{width:90px;height:90px;overflow:visible}
[data-booth-collection=noir-mail] #booth{display:grid!important;grid-template-columns:1fr 1.05fr;grid-template-rows:minmax(0,1fr) auto;gap:12px 5vw;padding:clamp(24px,5vh,60px) max(24px,7vw) 20px!important;align-items:center;background:radial-gradient(ellipse at 75% 43%,var(--soft),transparent 65%),var(--paper)}
[data-booth-collection=noir-mail] #booth[hidden],[data-booth-collection=noir-mail] #game[hidden],[data-booth-collection=noir-mail] #invitation[hidden]{display:none!important}
[data-booth-collection=noir-mail] #booth .ss-intro{background:none;z-index:1;padding:0;position:relative;max-width:620px;transform:none!important;text-align:left}
[data-booth-collection=noir-mail] .cm-eyebrow{font:600 11px/1.4 var(--ss-reading);letter-spacing:.22em;display:inline-block;margin:0 0 25px;padding:11px 16px;border:1px solid color-mix(in srgb,var(--ink) 22%,transparent);border-radius:40px}
[data-booth-collection=noir-mail] #booth .ss-title{font:600 clamp(60px,6.8vw,112px)/.94 var(--ss-display);letter-spacing:-.055em;margin:0 0 25px;max-width:9ch;overflow-wrap:normal;color:var(--ink)}
[data-booth-collection=noir-mail] #booth .ss-title em{font:400 1em/1.05 var(--ss-display);font-style:italic;color:var(--accent);padding:0;display:block}
[data-booth-collection=noir-mail] #booth .ss-intro-copy{font:400 clamp(17px,1.5vw,21px)/1.65 var(--ss-reading);max-width:31ch;margin:0}
[data-booth-collection=noir-mail] #booth .booth-scene{width:100%;height:100%;min-height:0;padding:0!important;overflow:visible;align-self:stretch;position:relative;grid-column:2;grid-row:1/3}
[data-booth-collection=noir-mail] .booth-fit{width:400px;height:600px;padding:0!important;transform-origin:top center;left:50%;margin-left:-200px;position:absolute}
[data-booth-collection=noir-mail] #booth .machine.cm-mailbox{width:350px;height:450px;position:relative;margin:25px auto 0;padding:0!important;background:none!important;border:0!important;box-shadow:none!important;border-radius:140px 140px 45px 45px;perspective:1100px;isolation:isolate;overflow:visible}
.cm-box-back{position:absolute;inset:0 4px 0 0;border-radius:145px 145px 42px 42px;background:linear-gradient(130deg,color-mix(in srgb,var(--accent) 42%,#180611),var(--ink));box-shadow:12px 18px 0 color-mix(in srgb,var(--ink) 85%,var(--accent)),17px 34px 50px color-mix(in srgb,var(--ink) 23%,transparent),inset 0 0 0 12px var(--highlight)}
.cm-box-back:before{content:'';position:absolute;inset:24px;border:1px solid color-mix(in srgb,var(--highlight) 45%,transparent);border-radius:125px 125px 25px 25px}
.cm-inside-letter{position:absolute;inset:90px 40px 30px;display:grid;place-items:center;transform:rotate(-9deg);background:var(--surface);border-radius:14px;box-shadow:0 7px 15px #0003}.cm-inside-letter .cm-icon{width:140px!important;height:140px!important}
.cm-door{position:absolute;inset:0;border-radius:145px 145px 42px 42px;background:linear-gradient(125deg,color-mix(in srgb,var(--accent) 70%,var(--surface)),var(--accent) 35%,color-mix(in srgb,var(--accent) 78%,var(--ink)));box-shadow:inset 5px 6px 8px color-mix(in srgb,var(--surface) 40%,transparent),inset -7px -10px 10px color-mix(in srgb,var(--ink) 45%,transparent),0 4px 0 color-mix(in srgb,var(--ink) 65%,var(--accent));transform-origin:5% 60%;transition:transform 1.1s cubic-bezier(.2,.7,.2,1);backface-visibility:hidden;display:flex;align-items:center;flex-direction:column;color:var(--surface);z-index:3}
.cm-door-rim{position:absolute;inset:15px;border:2px solid var(--highlight);border-radius:132px 132px 31px 31px;opacity:.85;pointer-events:none}
.cm-postmark{font:500 9px/1.5 var(--ss-reading);letter-spacing:.2em;margin:44px 25px 10px;text-align:center;max-width:240px}
.cm-door-cherries .cm-icon{width:85px!important;height:85px!important;--accent:var(--surface);--soft:var(--highlight);--cherry-leaf:var(--highlight)}
.cm-mail-slot{position:relative!important;inset:auto!important;width:215px;height:12px;flex-shrink:0;background:var(--ink);border:3px solid var(--highlight);border-radius:30px;box-shadow:inset 0 3px 4px #0007,0 2px 0 #fff2;margin:4px auto 14px}
.cm-box-title{font:400 43px/1.1 var(--ss-display)!important;letter-spacing:-.03em!important;color:var(--surface)!important;margin:0 22px 12px!important;max-width:270px;text-align:center;overflow-wrap:anywhere}
.cm-unlock{border:1px solid var(--highlight);border-radius:45px;padding:8px 22px 12px;min-height:72px;background:linear-gradient(110deg,var(--surface),var(--highlight));box-shadow:inset 0 2px 2px #fff8,0 5px 0 color-mix(in srgb,var(--ink) 65%,var(--accent));color:var(--ink);display:flex;align-items:center;gap:8px;cursor:pointer;touch-action:manipulation;user-select:none;max-width:280px;font:600 15px/1.2 var(--ss-reading);position:relative;z-index:4;transition:translate .2s}
.cm-unlock:hover{translate:0 -3px}.cm-unlock:focus-visible{outline:3px solid var(--surface);outline-offset:5px}.cm-unlock:disabled{cursor:default}.cm-key-art{width:48px;height:48px;display:block}.cm-key-art .cm-icon{width:48px!important;height:48px!important}.cm-turning .cm-key-art{animation:cm-key-turn 1.8s ease-in-out both}
.cm-small-note{font:400 10px/1.5 var(--ss-reading)!important;letter-spacing:.1em;text-align:center;max-width:260px;margin:17px 20px 0!important;color:var(--surface)!important}
.cm-hinge{position:absolute;width:12px;height:40px;background:linear-gradient(90deg,var(--highlight),var(--surface),var(--highlight));border-radius:9px;left:-3px;z-index:5;box-shadow:1px 2px 4px #0003}.cm-hinge-top{top:170px}.cm-hinge-bottom{bottom:60px}
.cm-mailbox-foot{position:absolute;width:160px;height:18px;border-radius:50%;background:color-mix(in srgb,var(--ink) 15%,transparent);filter:blur(5px);bottom:-36px;left:110px;z-index:-1}
.cm-open .cm-door{transform:rotateY(-106deg)}.cm-rattling{animation:cm-rattle .32s ease-in-out 4}
[data-booth-collection=noir-mail] #booth .booth-actions{grid-column:1;grid-row:2;justify-content:flex-start;align-items:center;position:relative;inset:auto;gap:10px;margin:0;padding:0;z-index:2;width:100%}
[data-booth-collection=noir-mail] #booth #toGame{max-width:none;border-radius:40px;background:var(--accent);color:var(--button-text);font:500 15px/1.3 var(--ss-reading);border:0;padding:15px 22px;box-shadow:0 4px 0 color-mix(in srgb,var(--ink) 15%,transparent)}
[data-booth-collection=noir-mail] #booth .machine-btn{width:47px;height:47px;flex-shrink:0;color:var(--ink);font-size:22px}
[data-booth-collection=noir-mail] #booth .print-caption{grid-column:1;grid-row:3;position:relative;inset:auto;text-align:left;color:var(--ink);max-width:35ch;font:400 15px/1.5 var(--ss-reading);margin:0;min-height:2em;align-self:start;padding:0}
.cm-photo-flight{position:fixed;inset:0;overflow:clip;pointer-events:none;z-index:65;contain:strict;user-select:none}
.cm-flight-photo{position:absolute;left:var(--cm-x);top:var(--cm-y);width:var(--cm-size);padding:5px 5px 18px;box-sizing:border-box;background:#fffaf1;border-radius:8px;margin:0;box-shadow:0 6px 24px #26081035;transform-origin:center;will-change:transform,opacity;animation:cm-photo-land 1.2s cubic-bezier(.16,.65,.25,1) both;backface-visibility:hidden}
.cm-flight-photo img{display:block;width:100%;aspect-ratio:1;object-fit:cover;border-radius:4px;filter:none}.cm-flight-photo figcaption{position:absolute;bottom:3px;left:7px;right:7px;font:11px/1.2 'Cormorant Garamond',Georgia,serif;text-align:center;color:#4e1225;white-space:nowrap;overflow:hidden;text-overflow:ellipsis}
.cm-burst-photo{animation-duration:1.1s}
@keyframes cm-photo-land{0%{transform:translateY(-20px) scale(.36);opacity:0}10%{opacity:1}100%{transform:translate(var(--cm-dx),var(--cm-dy)) rotate(var(--cm-angle));opacity:1}}
@keyframes cm-key-turn{25%{transform:rotate(35deg)}50%{transform:rotate(-25deg)}80%,100%{transform:rotate(90deg)}}
@keyframes cm-rattle{0%,100%{translate:0 0}25%{translate:-3px 0}75%{translate:3px 0}}
/* A full, flowing invitation after the seven-question game. */
[data-booth-collection=noir-mail] #invitation{max-width:1260px;padding:0 clamp(18px,4vw,60px)}
[data-booth-collection=noir-mail] #invitation .hero{gap:clamp(25px,6vw,90px);padding-top:70px}
[data-booth-collection=noir-mail] .bt-hero-copy{background:transparent;border:0;padding:20px 0;border-radius:0}
[data-booth-collection=noir-mail] #invitation .hero h1{font-size:clamp(65px,7.8vw,115px);line-height:.95;letter-spacing:-.05em;color:var(--accent);margin:30px 0}
[data-booth-collection=noir-mail] .hero .hero-photo{border-radius:170px 170px 35px 35px;padding:12px 12px 32px;border:1px solid color-mix(in srgb,var(--accent) 20%,transparent);transform:rotate(2deg)!important}
[data-booth-collection=noir-mail] .hero .hero-photo img{border-radius:160px 160px 22px 22px;object-position:center 40%}
[data-booth-collection=noir-mail] .hero .photo-note{font-size:32px;color:var(--accent)}
[data-booth-collection=noir-mail] .bt-section-nav{position:sticky;top:8px;z-index:15;padding:12px;margin:0 0 35px;border-radius:40px;background:color-mix(in srgb,var(--paper) 96%,transparent);border:1px solid color-mix(in srgb,var(--ink) 16%,transparent);box-shadow:0 4px 18px color-mix(in srgb,var(--ink) 5%,transparent);gap:6px}
[data-booth-collection=noir-mail] .bt-section-nav a{border:0;background:transparent}[data-booth-collection=noir-mail] .bt-section-nav a:hover{background:var(--soft)}
[data-booth-collection=noir-mail] #invitation .ticket{background:var(--accent);color:var(--surface);border-radius:60px;border:0;box-shadow:0 12px 0 color-mix(in srgb,var(--soft) 80%,transparent)}
[data-booth-collection=noir-mail] .ticket h2,[data-booth-collection=noir-mail] .ticket .eyebrow,[data-booth-collection=noir-mail] .ticket p,[data-booth-collection=noir-mail] .ticket-date{color:var(--surface)!important}
[data-booth-collection=noir-mail] .ticket-side{background:color-mix(in srgb,var(--accent) 78%,var(--ink));border-color:var(--highlight);color:var(--surface)}
[data-booth-collection=noir-mail] .love-section{border-radius:55px;background:var(--surface);border:1px solid color-mix(in srgb,var(--accent) 15%,transparent);padding:clamp(35px,6vw,70px)!important;margin:70px 0;box-shadow:0 12px 30px color-mix(in srgb,var(--ink) 4%,transparent)}
[data-booth-collection=noir-mail] .love-section .intro-copy{font-size:clamp(20px,2.1vw,27px);line-height:1.7;max-width:45ch;margin:auto}
[data-booth-collection=noir-mail] .details-list .detail{padding:22px 25px;border-radius:28px;background:var(--surface);border-color:color-mix(in srgb,var(--accent) 15%,transparent)}
[data-booth-collection=noir-mail] .detail time{color:var(--accent);font-size:24px}
[data-booth-collection=noir-mail] .little-details{gap:18px}[data-booth-collection=noir-mail] .little-details article{border-radius:38px;border:0;box-shadow:0 8px 0 var(--soft);padding:35px 24px;background:var(--surface)}
[data-booth-collection=noir-mail] .little-details h3{font:600 29px/1.2 var(--ss-display);margin:15px 0}[data-booth-collection=noir-mail] .little-details p{font-size:17px;line-height:1.7}
[data-booth-collection=noir-mail] .ff-memories{grid-template-columns:repeat(3,minmax(0,1fr));gap:25px}
[data-booth-collection=noir-mail] .polaroid.ff-memory{padding:10px 10px 25px;border-radius:25px;background:var(--surface);border:1px solid color-mix(in srgb,var(--accent) 10%,transparent);transition:transform .25s}
[data-booth-collection=noir-mail] .ff-memory img{border-radius:16px;aspect-ratio:1;object-fit:cover}[data-booth-collection=noir-mail] .ff-memory:hover{transform:rotate(0) translateY(-5px)}
[data-booth-collection=noir-mail] .rsvp-wrap{background:var(--soft);border:0;border-radius:65px;padding:clamp(30px,6vw,70px);max-width:900px}
[data-booth-collection=noir-mail] .bt-inline-content{margin:0 auto}[data-booth-collection=noir-mail] .guest-form{background:var(--surface);border-radius:35px}
[data-booth-collection=noir-mail] .bt-album-section{border-top:1px solid color-mix(in srgb,var(--ink) 20%,transparent)}
[data-booth-collection=noir-mail] #game .gamecard{border-radius:55px;background:var(--surface);border:1px solid color-mix(in srgb,var(--accent) 20%,transparent);box-shadow:0 15px 0 var(--soft)}
[data-booth-collection=noir-mail] #gameQuestion{font:600 clamp(31px,3.8vw,53px)/1.07 var(--ss-display);letter-spacing:-.035em;overflow-wrap:anywhere;max-width:20ch;margin:12px auto}
[data-booth-collection=noir-mail] #game .btn,[data-booth-collection=noir-mail] #game .ss-pose-choice{border-radius:25px;min-height:52px;font:500 17px/1.4 var(--ss-reading);padding:15px 22px;white-space:normal;overflow-wrap:anywhere}
[data-booth-collection=noir-mail] #game .btn.light{background:var(--soft);color:var(--ink);border-color:transparent}
[data-booth-collection=noir-mail] #game .ss-question-ticket{border-radius:26px;border-color:var(--highlight);background:var(--paper)}
[data-booth-collection=noir-mail] #gameArt .cm-icon{width:100px;height:100px}
[data-booth-collection=noir-mail] .lb-promise{border-radius:32px;user-select:none;-webkit-user-select:none;touch-action:manipulation}[data-booth-collection=noir-mail] .lb-promise span{font-size:19px;line-height:1.45}
[data-booth-collection=noir-mail] input,[data-booth-collection=noir-mail] textarea{font-size:17px!important}
[data-booth-collection=noir-mail] .footer{padding:60px 20px;background:var(--accent);color:var(--surface);border-radius:60px 60px 0 0;margin-top:60px}[data-booth-collection=noir-mail] .footer p,[data-booth-collection=noir-mail] .footer small,[data-booth-collection=noir-mail] .footer .eyebrow{color:var(--surface)}[data-booth-collection=noir-mail] .footer-art{--accent:var(--surface);--ink:var(--highlight)}
@media(max-width:820px){
 [data-booth-collection=noir-mail] #booth{grid-template-columns:1fr;grid-template-rows:auto minmax(0,1fr) auto auto;gap:7px;padding:14px 20px 12px!important;text-align:center}
 [data-booth-collection=noir-mail] #booth .ss-intro{text-align:center;max-width:none}
 [data-booth-collection=noir-mail] .cm-eyebrow{margin:0 0 9px;font-size:9px;padding:7px 12px}
 [data-booth-collection=noir-mail] #booth .ss-title{font-size:clamp(40px,10.8vw,68px);max-width:none;margin:0 0 9px;line-height:.94}
 [data-booth-collection=noir-mail] #booth .ss-intro-copy{font-size:15px;line-height:1.45;max-width:32ch;margin:0 auto}
 [data-booth-collection=noir-mail] #booth .booth-scene{grid-column:1;grid-row:2;min-height:0;height:100%;padding:0!important}
 [data-booth-collection=noir-mail] #booth .booth-actions{grid-column:1;grid-row:3;justify-content:center}
 [data-booth-collection=noir-mail] #booth .print-caption{grid-column:1;grid-row:4;text-align:center;max-width:none;font-size:13px;min-height:2em;margin:0 auto}
 [data-booth-collection=noir-mail] #booth #toGame{padding:12px 18px;font-size:14px;min-height:45px}
 [data-booth-collection=noir-mail] #invitation .hero{padding-top:40px;gap:25px}
 [data-booth-collection=noir-mail] #invitation .hero h1{font-size:clamp(57px,15vw,88px)}
 [data-booth-collection=noir-mail] .hero .bt-hero-visual{width:90%!important}
 [data-booth-collection=noir-mail] .bt-section-nav{flex-wrap:nowrap;overflow:auto;justify-content:flex-start;top:5px;border-radius:24px;padding:9px;scrollbar-width:none}
 [data-booth-collection=noir-mail] .bt-section-nav a{font-size:13px;padding:10px 12px}
 [data-booth-collection=noir-mail] #invitation .ticket{border-radius:38px}
 [data-booth-collection=noir-mail] .ff-memories{grid-template-columns:repeat(2,minmax(0,1fr));gap:18px}
 [data-booth-collection=noir-mail] .polaroid.ff-memory{padding:7px 7px 20px;border-radius:20px}
 [data-booth-collection=noir-mail] .rsvp-wrap{border-radius:38px;padding:28px 14px}
 [data-booth-collection=noir-mail] #gameQuestion{font-size:clamp(29px,7.7vw,43px)}
 [data-booth-collection=noir-mail] #game .gamecard{border-radius:35px}
 [data-booth-collection=noir-mail] #game .btn{font-size:16px;padding:12px 15px}
}
@media(max-height:680px) and (max-width:820px){[data-booth-collection=noir-mail] #booth .ss-intro-copy{display:none}[data-booth-collection=noir-mail] .cm-eyebrow{margin-bottom:6px}[data-booth-collection=noir-mail] #booth .ss-title{font-size:clamp(36px,9vw,50px);margin-bottom:5px}}
@media(prefers-reduced-motion:reduce){.cm-flight-photo,.cm-rattling,.cm-turning .cm-key-art{animation:none!important}.cm-door{transition:none}.cm-unlock{transition:none}}
[data-booth-collection=noir-mail] #booth{grid-template-areas:none!important}
[data-booth-collection=noir-mail] #booth .ss-intro{grid-area:auto!important;grid-column:1;grid-row:1}
[data-booth-collection=noir-mail] #booth .booth-fit{margin-left:0!important;transform:translateX(-50%) scale(var(--booth-fit,1))!important}
[data-booth-collection=noir-mail] #booth .booth-scene{grid-area:auto!important;grid-column:2;grid-row:1/3}
[data-booth-collection=noir-mail] .cm-scenery{position:absolute;pointer-events:none;user-select:none;z-index:1;filter:drop-shadow(0 8px 10px color-mix(in srgb,var(--ink) 12%,transparent))}
[data-booth-collection=noir-mail] .cm-scenery-one{left:-15px;bottom:110px;rotate:-16deg}.cm-scenery-one .cm-icon{width:105px!important;height:105px!important}
[data-booth-collection=noir-mail] .cm-scenery-two{right:-15px;top:5px;rotate:15deg;background:var(--surface);border:1px solid var(--highlight);border-radius:23px;padding:8px}.cm-scenery-two .cm-icon{width:70px!important;height:70px!important}
@media(max-width:820px){[data-booth-collection=noir-mail] #booth .booth-scene{grid-column:1;grid-row:2}[data-booth-collection=noir-mail] #booth .ss-intro{grid-column:1;grid-row:1}}
.cm-unlock{min-height:96px}
/* A varied cherry garden: fruit, blossom branches, ribbon pairs and paper seals. */
[data-booth-collection=noir-mail] .cm-botanical{display:block;width:100%;height:auto;overflow:visible}
[data-booth-collection=noir-mail] .cm-decor{display:block;position:absolute;pointer-events:none;user-select:none;-webkit-user-select:none;z-index:0;width:130px}
[data-booth-collection=noir-mail] .section,[data-booth-collection=noir-mail] .rsvp-wrap,[data-booth-collection=noir-mail] .little-details article,[data-booth-collection=noir-mail] .footer{position:relative;isolation:isolate}
[data-booth-collection=noir-mail] .cm-mail-corner{right:-35px;bottom:40px;width:125px;rotate:16deg;z-index:4}
[data-booth-collection=noir-mail] .cm-scenery-one{width:135px;bottom:65px;left:-35px;rotate:-12deg}
[data-booth-collection=noir-mail] .cm-hero-garden{left:-90px;bottom:10px;width:180px;rotate:-18deg;opacity:.8;z-index:0}
[data-booth-collection=noir-mail] .cm-hero-blossom{right:-50px;top:25px;width:125px;rotate:13deg;z-index:0}
[data-booth-collection=noir-mail] #invitation .hero{position:relative;isolation:isolate}
[data-booth-collection=noir-mail] .hero .bt-hero-copy,[data-booth-collection=noir-mail] .hero .bt-hero-visual{z-index:2}
[data-booth-collection=noir-mail] .cm-day-cherries{right:-48px;bottom:0;width:135px;rotate:12deg;z-index:2}
[data-booth-collection=noir-mail] .cm-story-stamp{right:-30px;top:-38px;width:95px;rotate:14deg;z-index:2}
[data-booth-collection=noir-mail] .love-section{padding-right:clamp(35px,7vw,90px)!important}
[data-booth-collection=noir-mail] .cm-venue-branch{left:-80px;bottom:-10px;width:160px;rotate:-16deg}
[data-booth-collection=noir-mail] .cm-rsvp-ribbon{left:-45px;top:-45px;width:120px;rotate:-12deg;z-index:2}
[data-booth-collection=noir-mail] .rsvp-bow{width:85px;height:auto;margin:0 auto 8px}
[data-booth-collection=noir-mail] .cm-album-cherries{right:-45px;top:25px;width:130px;rotate:12deg;opacity:.9}
[data-booth-collection=noir-mail] .bt-album-section>h2,[data-booth-collection=noir-mail] .bt-album-section>p{position:relative;z-index:1}
[data-booth-collection=noir-mail] .cm-card-watermark{width:110px;right:-10px;bottom:5px;opacity:.09;rotate:13deg;z-index:0}
[data-booth-collection=noir-mail] .little-details article>h3,[data-booth-collection=noir-mail] .little-details article>p{position:relative;z-index:1}
[data-booth-collection=noir-mail] .cm-footer-bunch{left:20px;bottom:20px;width:140px;rotate:-18deg;--accent:var(--surface);--ink:var(--highlight);opacity:.85}
[data-booth-collection=noir-mail] .section-art{overflow:visible}
@media(max-width:820px){
 [data-booth-collection=noir-mail] .cm-mail-corner{width:105px;right:-5px;bottom:60px}
 [data-booth-collection=noir-mail] .cm-hero-garden{width:100px;left:-40px;bottom:15px;opacity:.65}
 [data-booth-collection=noir-mail] .cm-hero-blossom{width:83px;right:-30px;top:7px}
 [data-booth-collection=noir-mail] .cm-day-cherries{width:80px;right:-15px;bottom:10px}
 [data-booth-collection=noir-mail] .cm-story-stamp{width:68px;right:0;top:-30px}
 [data-booth-collection=noir-mail] .cm-venue-branch{width:100px;left:-43px;bottom:10px;opacity:.65}
 [data-booth-collection=noir-mail] .cm-rsvp-ribbon{width:80px;left:-16px;top:-30px}
 [data-booth-collection=noir-mail] .cm-album-cherries{width:75px;right:-10px;top:0;opacity:.45}
 [data-booth-collection=noir-mail] .cm-footer-bunch{width:75px;left:5px;bottom:8px;opacity:.45}
 [data-booth-collection=noir-mail] .love-section{padding-right:28px!important}
}
/* A richer photographic story, with every image using an existing editable photo slot. */
[data-booth-collection=noir-mail] .cm-story-collage{display:grid;grid-template-columns:1.15fr 1fr;grid-template-rows:1fr 1fr;gap:22px;margin:40px auto 0;max-width:820px;align-items:stretch}
[data-booth-collection=noir-mail] .cm-memory-card{margin:0;background:var(--surface);padding:10px 10px 20px;border:1px solid color-mix(in srgb,var(--accent) 18%,transparent);border-radius:27px;box-shadow:0 12px 25px color-mix(in srgb,var(--ink) 8%,transparent);transform:rotate(var(--cm-card-tilt,0deg));min-width:0;transition:transform .3s,box-shadow .3s}
[data-booth-collection=noir-mail] .cm-memory-card:hover{transform:rotate(0) translateY(-5px);box-shadow:0 18px 30px color-mix(in srgb,var(--ink) 13%,transparent)}
[data-booth-collection=noir-mail] .cm-photo-open{display:block;width:100%;height:100%;padding:0;border:0;border-radius:18px;background:var(--soft);overflow:hidden;cursor:zoom-in;line-height:0}
[data-booth-collection=noir-mail] .cm-photo-open:focus-visible{outline:3px solid var(--accent);outline-offset:4px}
[data-booth-collection=noir-mail] .cm-memory-card img{display:block;width:100%;height:100%;aspect-ratio:1;object-fit:cover;border-radius:18px;filter:none}
[data-booth-collection=noir-mail] .cm-story-photo:first-child{grid-row:1/3;align-self:stretch}.cm-story-photo:first-child img{aspect-ratio:4/5}
[data-booth-collection=noir-mail] .cm-story-photo:not(:first-child) img{aspect-ratio:3/2;max-height:240px}
[data-booth-collection=noir-mail] .cm-photo-ribbon{margin:55px 0;background:var(--soft);border-radius:55px;padding:45px 0!important;overflow:hidden}
[data-booth-collection=noir-mail] .cm-ribbon-heading{text-align:center;padding:0 25px 20px}
[data-booth-collection=noir-mail] .cm-ribbon-heading h2{margin:0 0 14px;font:600 clamp(37px,4.8vw,64px)/1 var(--ss-display);color:var(--accent);letter-spacing:-.035em}
[data-booth-collection=noir-mail] .cm-ribbon-heading p{font:400 18px/1.6 var(--ss-reading);max-width:38ch;margin:auto}
[data-booth-collection=noir-mail] .cm-memory-rail{display:flex;gap:25px;overflow-x:auto;scroll-snap-type:x mandatory;padding:28px 40px 35px;scrollbar-width:thin;scrollbar-color:var(--accent) transparent;overscroll-behavior-x:contain}
[data-booth-collection=noir-mail] .cm-rail-photo{flex:0 0 clamp(210px,26vw,280px);scroll-snap-align:center;display:flex;flex-direction:column;height:auto}
[data-booth-collection=noir-mail] .cm-rail-photo .cm-photo-open{height:auto;aspect-ratio:1}
[data-booth-collection=noir-mail] .cm-memory-card figcaption{font:400 24px/1.25 var(--ss-script);text-align:center;padding:16px 5px 0;overflow-wrap:anywhere;color:var(--accent)}
[data-booth-collection=noir-mail] .cm-memory-controls{display:flex;justify-content:center;gap:12px;padding-top:14px}
[data-booth-collection=noir-mail] .cm-memory-controls button{width:47px;height:47px;border:1px solid var(--accent);border-radius:50%;background:var(--surface);color:var(--accent);font-size:23px;cursor:pointer}
[data-booth-collection=noir-mail] .cm-album-extra{display:flex;flex-direction:column;align-self:start;padding-bottom:16px}
[data-booth-collection=noir-mail] .cm-album-extra .cm-photo-open{aspect-ratio:1;height:auto}
[data-booth-collection=noir-mail] .cm-album-extra figcaption{font-size:25px}
.cm-photo-dialog{position:fixed;border:0;border-radius:24px;background:#fffaf1;padding:12px;max-width:min(90vw,1000px);max-height:90dvh;box-shadow:0 20px 80px #0006}.cm-photo-dialog::backdrop{background:#260a1fe0}.cm-photo-dialog img{display:block;max-width:100%;max-height:calc(85dvh - 45px);object-fit:contain;border-radius:14px}.cm-photo-dialog>button{position:absolute;right:20px;top:20px;border:0;background:#fffaf1;color:#4e1225;width:44px;height:44px;border-radius:50%;font-size:29px;cursor:pointer;box-shadow:0 2px 12px #0002}
[data-booth-collection=noir-mail] .cm-photo-reveal{opacity:.15;translate:0 22px;transition:opacity .7s ease,translate .7s ease}[data-booth-collection=noir-mail] .cm-photo-visible{opacity:1;translate:0 0}
@media(max-width:820px){[data-booth-collection=noir-mail] .cm-story-collage{gap:12px;margin-top:30px}[data-booth-collection=noir-mail] .cm-memory-card{padding:6px 6px 13px;border-radius:20px}[data-booth-collection=noir-mail] .cm-story-collage .cm-story-photo{transform:rotate(calc(var(--cm-card-tilt)/2))}[data-booth-collection=noir-mail] .cm-photo-open,[data-booth-collection=noir-mail] .cm-memory-card img{border-radius:13px}[data-booth-collection=noir-mail] .cm-photo-ribbon{border-radius:32px;padding:32px 0!important}[data-booth-collection=noir-mail] .cm-memory-rail{padding:24px 25px;gap:20px}[data-booth-collection=noir-mail] .cm-rail-photo{flex-basis:74%}[data-booth-collection=noir-mail] .cm-album-extra figcaption{font-size:21px}}
@media(prefers-reduced-motion:reduce){[data-booth-collection=noir-mail] .cm-photo-reveal{opacity:1;translate:none;transition:none}[data-booth-collection=noir-mail] .cm-memory-card{transition:none}}

/* Monochrome editorial edition: satin bows, ink, wax seals and archival photographs. */
body[data-booth-collection=noir-mail]{--ss-display:'DM Serif Display',Georgia,serif;--cherry-leaf:var(--ink)}
[data-booth-collection=noir-mail] #invitation img,[data-booth-collection=noir-mail] .cm-flight-photo img,[data-booth-collection=noir-mail] .cm-photo-dialog img{filter:grayscale(1)!important}
[data-booth-collection=noir-mail] #booth .ss-title{font-weight:400;letter-spacing:-.045em}
[data-booth-collection=noir-mail] #booth .cm-box-title{font-family:'DM Serif Display',Georgia,serif!important;font-size:41px!important}
[data-booth-collection=noir-mail] #gameQuestion{font-weight:400}
[data-booth-collection=noir-mail] .cm-door{background:linear-gradient(125deg,color-mix(in srgb,var(--accent) 60%,var(--surface)),var(--accent) 33%,var(--ink));box-shadow:inset 4px 6px 9px #ffffff45,inset -6px -9px 12px #0008,0 5px 0 var(--ink)}
[data-booth-collection=noir-mail] .cm-photo-ribbon{background:var(--ink);color:var(--surface)}
[data-booth-collection=noir-mail] .cm-ribbon-heading h2,[data-booth-collection=noir-mail] .cm-ribbon-heading p{color:var(--surface)}
[data-booth-collection=noir-mail] .cm-memory-card{box-shadow:0 10px 22px #0002}
[data-booth-collection=noir-mail] .cm-mail-corner{width:110px;right:-20px;bottom:30px;rotate:18deg}
[data-booth-collection=noir-mail] .cm-scenery-one{width:140px;bottom:75px;left:-35px;rotate:-17deg}
[data-booth-collection=noir-mail] .cm-footer-bunch{--ink:var(--highlight);--surface:var(--paper);--soft:var(--highlight)}
[data-booth-collection=noir-mail] .cm-day-cherries{width:120px;rotate:-10deg}
[data-booth-collection=noir-mail] .cm-venue-branch{width:125px}
@media(max-width:820px){[data-booth-collection=noir-mail] .cm-mail-corner{width:90px;right:0}[data-booth-collection=noir-mail] .cm-day-cherries{width:70px}[data-booth-collection=noir-mail] .cm-venue-branch{width:85px}}
[data-booth-collection=noir-mail] .cm-flight-photo{background:var(--surface);box-shadow:0 6px 24px #0003}[data-booth-collection=noir-mail] .cm-flight-photo figcaption{color:var(--ink)}
[data-booth-collection=noir-mail] .cm-photo-dialog{background:var(--surface)}[data-booth-collection=noir-mail] .cm-photo-dialog::backdrop{background:#000d}[data-booth-collection=noir-mail] .cm-photo-dialog>button{background:var(--surface);color:var(--ink)}
[data-booth-collection=noir-mail] .cm-photo-flight{background:transparent}
[data-booth-collection=noir-mail] .cm-photo-dialog>button{z-index:2}
@media(max-height:680px) and (max-width:820px){[data-booth-collection=noir-mail] #booth .booth-fit{height:510px}[data-booth-collection=noir-mail] .cm-unlock{min-height:132px}[data-booth-collection=noir-mail] .cm-postmark{margin-top:32px}[data-booth-collection=noir-mail] .cm-door-cherries .cm-icon{width:72px!important;height:72px!important}[data-booth-collection=noir-mail] #booth .cm-box-title{font-size:37px!important}}
