/* Approved local study: off-white cotton, shallow Ganesha wax, gold flourish. */
.envelope-scene{position:relative;width:min(56vw,380px,62svh)}
.envelope-letter{container-type:inline-size}
.envelope-scene .envelope-letter .insert-names{margin-top:23%!important}
.envelope-scene .envelope .swooshes{inset:-60%;width:220%;height:220%;z-index:12;clip-path:none}
.envelope::before{z-index:-1}
.envelope-intro.opening .envelope .trail{animation-duration:2.2s;animation-delay:0s}
.envelope-intro.opening .envelope .trail.second{animation-delay:.2s}
.envelope-intro.opening .envelope-flap{transition-delay:.65s}
.envelope-intro.opening .envelope-left{transition-delay:.75s}
.envelope-intro.opening .envelope-right{transition-delay:.9s}
.envelope-intro.opening .envelope-bottom{transition-delay:1.1s}
.envelope-intro .flecks{display:none}
.envelope-letter .insert-names{white-space:nowrap;font-size:11cqw;max-width:94%;line-height:1.4}
html[lang|="mr"] .envelope-letter .insert-names,html[lang|="hi"] .envelope-letter .insert-names,html[lang|="bn"] .envelope-letter .insert-names,html[lang|="bn"] .envelope-letter .insert-names small{font-size:6.8cqw;white-space:nowrap}
.envelope-kicker{font-size:clamp(9px,2.5vw,12px);letter-spacing:.18em}
html[lang="be"] .envelope-letter .insert-names{font-size:6.8cqw;white-space:nowrap}
.envelope-intro.opening .envelope{transform:scale(.88);transition:transform 2.8s cubic-bezier(.2,.6,.2,1)}
@media(max-width:600px){
 .envelope-scene{width:min(84vw,58svh);transform:translateY(7svh)}
 .envelope-kicker{font-size:clamp(11px,3.7vw,15px);margin-bottom:clamp(24px,6svh,48px)}
 .envelope-prompt{font-size:clamp(24px,8.4vw,36px);margin-top:clamp(24px,5svh,42px)}
 .envelope-hint{font-size:clamp(15px,5vw,21px)}
 .envelope-scene .envelope .wax-seal{width:20%}
 .envelope-intro.opening .envelope{transform:scale(.64);transition-duration:1.4s}
}
.envelope{background:#dedbd3}
.envelope::before,.envelope-panel,.envelope-flap::before,.envelope-flap::after{background-color:#dedbd3;background-image:url('cotton.svg'),linear-gradient(135deg,#faf9f5,#dedbd3);background-size:160px 160px,100% 100%;background-blend-mode:multiply,normal}
.envelope-left{filter:brightness(.95)}.envelope-right{filter:brightness(.92)}.envelope-bottom{filter:brightness(.98)}
.envelope-flap::before,.envelope-flap::after{border-top-color:#ffffff40}.envelope-flap::before{box-shadow:inset 0 2px 3px #52493520;filter:drop-shadow(0 2px 1px #30291f30)}
.envelope-letter{background:#f1e6d2 url('cotton.svg');background-size:160px 160px;background-blend-mode:multiply;border:0}.envelope-letter::before{display:none}
.envelope .wax-seal{width:clamp(43px,11.5vw,62px);background:transparent;border:0;padding:0;box-shadow:none;filter:drop-shadow(0 1px .6px #49351a55);transform:translate(-50%,-50%) rotate(-7deg)}
.wax-seal::before,.wax-seal::after{display:none}.envelope .wax-seal img{filter:saturate(.7) brightness(.97) contrast(.92);mix-blend-mode:normal;opacity:1}
.swooshes{position:absolute;left:-30%;top:-40%;width:160%;height:180%;z-index:12;overflow:visible;pointer-events:none}.trail{stroke-width:2;stroke-dasharray:1500;stroke-dashoffset:1500;opacity:0}.trail.halo{stroke-width:9;filter:blur(5px)}.opening .trail{animation:ceremony-sweep 3.4s cubic-bezier(.22,.55,.3,1) .25s both}.opening .trail.second{animation-delay:.8s;stroke-width:1.3}.opening .trail.second.halo{stroke-width:7}
.flecks{position:absolute;inset:0;pointer-events:none;z-index:10}.fleck{position:absolute;left:50%;top:46%;width:4px;height:7px;border-radius:70% 15%;background:linear-gradient(40deg,#b58330,#fff1b4);opacity:0}.opening .fleck{animation:ceremony-drift 2.8s ease-out var(--delay) forwards}
@keyframes ceremony-sweep{0%{stroke-dashoffset:1500;opacity:0}12%{opacity:.8}50%{opacity:.85}75%{stroke-dashoffset:0;opacity:.45}100%{stroke-dashoffset:-400;opacity:0}}
@keyframes ceremony-drift{0%{opacity:0;transform:translate(0,0) rotate(0)}20%{opacity:.85}100%{opacity:0;transform:translate(var(--x),var(--y)) rotate(var(--r))}}
@media(prefers-reduced-motion:reduce){.swooshes,.flecks{display:none}}
