/* A wine envelope and a full sheet of laid ivory paper. */
.letter-paper{background-color:#f3ebdd;background-image:url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' width='180' height='180'%3E%3Cfilter id='n'%3E%3CfeTurbulence type='fractalNoise' baseFrequency='.78' numOctaves='3' stitchTiles='stitch'/%3E%3C/filter%3E%3Cpath fill='%237c6b53' opacity='.1' filter='url(%23n)' d='M0 0h180v180H0z'/%3E%3C/svg%3E"),repeating-linear-gradient(0deg,transparent 0,transparent 3px,#8b735205 3px,#8b735205 4px);color:#482330;box-shadow:0 18px 65px #26111935,inset 0 0 25px #ad8d6410}
.cinema.motion-enabled{height:780svh}
.flower-ending.invitation-ending{inset:0;display:block;perspective:1800px;gap:0;clip-path:inset(88px 0 0);scrollbar-width:none;scroll-padding-top:105px}
.invitation-ending::-webkit-scrollbar{display:none}
.motion-enabled .invitation-ending[data-envelope="open"]{overflow:hidden;pointer-events:auto;padding-bottom:20px}
.motion-enabled .invitation-ending[data-envelope="open"] .invitation-paper{overflow:visible}
.motion-enabled .invitation-ending[data-envelope="open"] .invitation-flow{padding-bottom:0}
.invitation-ending[data-envelope="open"] :is(.envelope-back,.envelope-face,.envelope-flap,.invitation-wax,.envelope-address,.invitation-cue){display:none}
.invitation-ending[data-envelope="opening"] :is(.invitation-paper,.paper-fold,.envelope-flap){will-change:transform}
.invitation-flow{position:relative;padding-top:clamp(135px,17svh,185px);display:flex;flex-direction:column;align-items:center;gap:48px}
.invitation-ending .flower-heading{position:relative;inset:auto;opacity:1;transform:none;padding:0;width:100%;flex:none;pointer-events:none}
.invitation-ending .flower-heading h2{font-size:clamp(43px,5.2vw,76px);line-height:1.05;letter-spacing:-.035em}
.invitation-ending .flower-heading h2 em{font:clamp(90px,10vw,144px)/1.3 Ballet,cursive;margin:0 0 -5px;letter-spacing:0}
.invitation-ending .flower-heading>.eyebrow{font-size:12px;margin-bottom:22px}
.invitation-ending .flower-heading>p:last-child{font:20px/1.5 Redaction,serif;margin-top:12px}
.invitation-assembly{--fold-height:305px;position:relative;width:min(700px,86vw);height:320px;perspective:2200px;perspective-origin:50% 50%;flex:none}
.envelope-back{position:absolute;inset:0;background:#321624;border:1px solid #a27d6660;box-shadow:0 22px 35px #1d101a5c,inset 0 1px #d7b48a50;z-index:0}
.envelope-back:after{content:'';position:absolute;inset:7px;background:repeating-linear-gradient(45deg,#b58e5530 0,#b58e5530 1px,transparent 1px,transparent 6px),#533326;opacity:.55}
.envelope-face{position:absolute;inset:0;z-index:4;pointer-events:none;filter:drop-shadow(0 -1px 1px #210c1640)}
.envelope-face>span{position:absolute;inset:0;display:block;background-image:url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' width='130' height='130'%3E%3Cfilter id='n'%3E%3CfeTurbulence baseFrequency='.7' numOctaves='2' stitchTiles='stitch'/%3E%3C/filter%3E%3Cpath filter='url(%23n)' fill='%23fff' opacity='.055' d='M0 0h130v130H0z'/%3E%3C/svg%3E")}
.envelope-left{clip-path:polygon(0 0,55% 57%,0 100%);background-color:#512534;box-shadow:inset 1px 0 #a0776566}
.envelope-right{clip-path:polygon(100% 0,45% 57%,100% 100%);background-color:#42202e;box-shadow:inset -1px 0 #210b18}
.envelope-bottom{clip-path:polygon(0 100%,0 96%,50% 43%,100% 96%,100% 100%);background-color:#482333;box-shadow:inset 0 -1px #b696773a}
.envelope-bottom:before{content:'';position:absolute;inset:0;background:linear-gradient(154deg,transparent 49.5%,#bd927448 49.8%,#29111b33 50%,transparent 50.3%);opacity:.7}
.envelope-flap{position:absolute;inset:0 0 auto;height:61%;z-index:5;transform-origin:50% 0;transform-style:preserve-3d;pointer-events:none}
.envelope-flap>span{position:absolute;inset:0;clip-path:polygon(0 0,100% 0,54% 96%,50% 100%,46% 96%);backface-visibility:hidden;-webkit-backface-visibility:hidden;display:block}
.flap-outside{background:linear-gradient(178deg,#5d3040,#44202f 80%);box-shadow:inset 0 1px #bf967466}
.envelope-flap .flap-lining{transform:rotateX(180deg);clip-path:polygon(0 100%,100% 100%,54% 4%,50% 0,46% 4%);background:repeating-linear-gradient(45deg,transparent 0,transparent 5px,#e4c08715 5px,#e4c08715 6px),linear-gradient(#866145,#af8b60);box-shadow:inset 0 0 35px #4b2d2670}
.invitation-wax{position:absolute;width:92px;height:92px;top:43%;left:calc(50% - 46px);z-index:6;pointer-events:none;filter:drop-shadow(0 4px 4px #1d0a18aa)}
.envelope-address{position:absolute;inset:auto 12% 10%;z-index:5;text-align:center;color:#d6b897;font:italic 20px/1.4 Redaction,serif;text-shadow:0 1px 1px #2b1024;pointer-events:none}
.envelope-address span{display:block;margin-top:8px;font:10px/1.5 Redaction,serif;letter-spacing:.14em;text-transform:uppercase;color:#c2a17c}
.open-invitation{position:absolute;inset:0;z-index:7;border:0;background:transparent;cursor:pointer;padding:0;border-radius:1px;pointer-events:auto}
.open-invitation:focus-visible{outline:1px solid #f7dfb5;outline-offset:10px}
.invitation-cue{position:absolute;top:calc(100% + 25px);left:0;right:0;text-align:center;font:italic 15px/1.5 Redaction,serif;color:#fff3df;text-shadow:0 2px 6px #281827}
.invitation-cue span{font-style:normal;display:inline-block;margin-left:10px}
.invitation-paper{position:absolute;inset:0 18px auto;height:calc(var(--fold-height) * 3);transform-style:preserve-3d;z-index:2;text-align:left;color:#482330}
.paper-fold{position:absolute;left:0;right:0;transform-style:preserve-3d}
.paper-top{top:0;transform-origin:50% 100%;z-index:3}
.paper-middle{top:var(--top-fold-height,var(--fold-height));z-index:1}
.paper-bottom{top:calc(var(--top-fold-height,var(--fold-height)) + var(--middle-fold-height,var(--fold-height)));transform-origin:50% 0;z-index:2}
.panel-content,.panel-reverse{position:absolute;inset:0;backface-visibility:hidden;-webkit-backface-visibility:hidden;box-shadow:none;border-left:1px solid #ab8d672e;border-right:1px solid #ab8d672e}
.panel-content{position:relative;inset:auto;display:flow-root;transform:translateZ(.1px);padding:14px 72px}
.panel-reverse{transform:rotateX(180deg) translateZ(.1px);background-color:#ede2d0}
.paper-top .panel-content{border-top:1px solid #fff9ed99;padding-top:72px}
.paper-middle .panel-content{background-color:#f2eadc;box-shadow:inset 0 1px 1px #987b4f25,inset 0 3px 6px #af906916}
.paper-bottom .panel-content{padding-bottom:78px;border-bottom:1px solid #9f7f5438;box-shadow:inset 0 1px 1px #fffef270,inset 0 4px 9px #cab08b10}
.invitation-letterhead{display:flex;align-items:center;flex-direction:column;gap:0;margin:0 0 34px;color:#765c4d}
.pressed-wordmark{display:block;width:190px;height:75px;background:#572237;mask:url('/brand/atelier-wordmark-light.svg') center/contain no-repeat;-webkit-mask:url('/brand/atelier-wordmark-light.svg') center/contain no-repeat;filter:drop-shadow(0 1px #fff9ec)}
.invitation-letterhead>span:last-child{font:9px/1.6 Redaction,serif;text-transform:uppercase;letter-spacing:.17em}
.invitation-paper p{font:20px/1.65 Redaction,serif;margin:0 0 28px;color:#482330;text-shadow:none;text-wrap:pretty}
.invitation-paper .letter-salutation{font-style:italic;font-size:21px;margin-bottom:24px}
.invitation-paper .panel-content>:last-child{margin-bottom:0}
.invitation-paper .flower-actions{display:flex;flex-direction:row;align-items:stretch;justify-content:stretch;gap:13px;margin:0;min-width:0;opacity:1;isolation:auto}
.invitation-paper .flower-actions a{display:flex;flex:1;justify-content:space-between;gap:14px;min-height:45px;padding:12px 14px;border:1px solid #713f4c75;font:15px/1.3 Redaction,serif;color:#502535;text-shadow:none;background:transparent;transition:background-color .2s,color .2s}
.invitation-paper .flower-actions a span{font-size:17px}
.invitation-paper a:focus-visible{outline:2px solid #6e3445;outline-offset:4px}
/* The application uses the same paper and keeps its existing send choreography. */
.wax-seal{position:absolute;z-index:5;top:43%;left:calc(50% - 35px);width:70px;height:70px;background:url('/brand/atelier-wax-seal.svg') center/contain no-repeat;transform:rotate(-12deg);pointer-events:none}
.wax-seal span{display:none}
.film-timecode{position:absolute;left:4%;bottom:30px;z-index:4;color:#fff5e9;font:10px/1.6 var(--mono);font-variant-numeric:tabular-nums;text-shadow:0 1px 8px #21121c;pointer-events:none}
.journey-hint{bottom:54px}
.tour-timecode{display:block;width:max-content;margin:9px auto 0;font:11px/1.4 var(--mono);font-variant-numeric:tabular-nums;color:#fff3e5;text-shadow:0 1px 4px #21121c}
.cinema:not(.motion-enabled) .invitation-ending{position:relative;inset:auto;min-height:0;padding:90px 0 150px;clip-path:none}
.cinema:not(.motion-enabled) .invitation-flow{padding-top:0;gap:75px;transform:none!important}
.cinema:not(.motion-enabled) .invitation-assembly{height:calc(var(--fold-height) * 3)}
.cinema:not(.motion-enabled) :is(.envelope-back,.envelope-face,.envelope-flap,.invitation-wax,.envelope-address,.open-invitation,.invitation-cue){display:none}
@media(hover:hover) and (pointer:fine){.invitation-paper .flower-actions a:hover{color:#f7eddf;background:#532436}.open-invitation:hover~.invitation-cue{color:#ffe7c3}}
@media(max-width:700px){
 .cinema.motion-enabled{height:850svh}
 .invitation-flow{padding-top:clamp(125px,18svh,170px);gap:42px}
 .invitation-ending .flower-heading h2{font-size:39px}.invitation-ending .flower-heading h2 em{font-size:clamp(62px,19vw,110px);line-height:1.35}
 .invitation-ending .flower-heading>.eyebrow{font-size:10px;margin-bottom:18px}.invitation-ending .flower-heading>p:last-child{font-size:18px;margin-top:16px}
 .invitation-assembly{--fold-height:380px;width:92vw;height:240px}
 .invitation-paper{left:9px;right:9px}.panel-content{padding:12px 28px}.paper-top .panel-content{padding-top:36px}.paper-bottom .panel-content{padding-bottom:38px}
 .invitation-paper p{font-size:18px;line-height:1.65;margin-bottom:24px}.invitation-paper .letter-salutation{font-size:19px;margin-bottom:20px}
 .pressed-wordmark{width:170px;height:70px}.invitation-letterhead{margin-bottom:30px}.invitation-letterhead>span:last-child{font-size:8px}
 .invitation-paper .flower-actions{flex-direction:column;gap:8px}.invitation-paper .flower-actions a{font-size:15px;min-height:45px;padding:12px 15px}
.envelope-address{font-size:19px;bottom:10%}.envelope-address span{font-size:9px}
 .invitation-wax{width:79px;height:79px;left:calc(50% - 39.5px);top:40%}
 .film-timecode{left:6%;bottom:86px;font-size:9px}.journey-hint{bottom:109px}
}
@media(max-width:360px){.invitation-assembly{--fold-height:430px;height:215px}.panel-content{padding-left:23px;padding-right:23px}.invitation-ending .flower-heading h2{font-size:33px}.invitation-ending .flower-heading h2 em{font-size:64px}.invitation-ending .flower-heading>p:last-child{font-size:16px}.invitation-wax{top:37%}.envelope-address{bottom:8%;font-size:17px}}
@media(prefers-reduced-motion:reduce){.invitation-paper a{transition:none}}

/* The invitation offers two unmistakable ways to take part. */
.invitation-paper .flower-actions a{align-items:center;min-height:50px;padding:13px 16px;border:1px solid #502535;font-size:17px;line-height:1.3;color:#fff4e3;background:#502535;box-shadow:inset 0 0 0 3px #edcfb51a,0 2px 4px #43232f18}
.invitation-paper .flower-actions a[href$="#sponsorship"]{background:#633047;border-color:#633047}
.invitation-paper .invitation-sponsor-note{font-size:14px;line-height:1.45;color:#68474c;margin:13px 0 0;text-wrap:pretty}
@media(hover:hover){.invitation-paper .flower-actions a:hover{background:#783e53;color:#fff9ee;border-color:#783e53}}
@media(max-width:700px){.invitation-paper .flower-actions a{font-size:17px;min-height:50px}}

/* Fit the complete sheet after unfolding; keep ordinary document sizing without motion. */
.motion-enabled .invitation-paper .panel-content{padding:8px 54px}
.motion-enabled .invitation-paper .paper-top .panel-content{padding-top:36px}
.motion-enabled .invitation-paper .paper-bottom .panel-content{padding-bottom:36px}
.motion-enabled .invitation-paper p{font-size:20px;line-height:1.45;margin-bottom:16px}
.motion-enabled .invitation-paper .letter-salutation{font-size:21px;margin-bottom:16px}
.motion-enabled .invitation-letterhead{margin-bottom:20px}
.motion-enabled .pressed-wordmark{width:160px;height:62px}
.motion-enabled .invitation-paper .flower-actions a{font-size:17px;min-height:50px;padding:12px}
.motion-enabled .invitation-paper .invitation-sponsor-note{font-size:14px;line-height:1.4;margin:12px 0 0}
.motion-enabled .invitation-paper .panel-content>:last-child{margin-bottom:0}
.invitation-paper:focus-visible{outline:2px solid #cba98c;outline-offset:4px}
@media(max-width:700px){
 .motion-enabled .invitation-paper .panel-content{padding:7px 22px}
 .motion-enabled .invitation-paper .paper-top .panel-content{padding-top:24px}
 .motion-enabled .invitation-paper .paper-bottom .panel-content{padding-bottom:24px}
 .motion-enabled .invitation-paper p{font-size:16px;line-height:1.45;margin-bottom:14px}
 .motion-enabled .invitation-paper .letter-salutation{font-size:17px;margin-bottom:14px}
 .motion-enabled .invitation-letterhead{margin-bottom:16px}
 .motion-enabled .pressed-wordmark{width:136px;height:54px}
 .motion-enabled .invitation-paper .flower-actions{flex-direction:row;gap:8px}
 .motion-enabled .invitation-paper .flower-actions a{font-size:14px;min-height:48px;padding:9px;gap:5px}
 .motion-enabled .invitation-paper .flower-actions a span{font-size:14px}
 .motion-enabled .invitation-paper .invitation-sponsor-note{font-size:12.5px;line-height:1.4;margin:10px 0 0}
 .motion-enabled .invitation-paper .panel-content>:last-child{margin-bottom:0}
}
@media(max-width:700px) and (max-height:760px){
 .motion-enabled .invitation-paper .panel-content{padding:5px 18px}
 .motion-enabled .invitation-paper .paper-top .panel-content{padding-top:18px}
 .motion-enabled .invitation-paper .paper-bottom .panel-content{padding-bottom:18px}
 .motion-enabled .invitation-paper p{font-size:14px;line-height:1.4;margin-bottom:10px}
 .motion-enabled .invitation-paper .letter-salutation{font-size:15px;margin-bottom:10px}
 .motion-enabled .invitation-letterhead{margin-bottom:12px}
 .motion-enabled .pressed-wordmark{width:116px;height:44px}
 .motion-enabled .invitation-paper .flower-actions a{font-size:13px;min-height:44px;padding:8px}
 .motion-enabled .invitation-paper .invitation-sponsor-note{font-size:11.5px;margin-top:8px}
 .motion-enabled .invitation-paper .panel-content>:last-child{margin-bottom:0}
}
