.d-envelope{--bg:#e8eef4;--bg2:#d9e3ec;--ink:#2e4157;--mut:#6d8196;--ac:#35577d;--card:#fff;--line:rgba(46,65,87,.18);--on-ac:#fff;--hero-ink:#2e4157;--hero-bg:linear-gradient(180deg,#f7f9fb,#e3ebf2);--hero-sh:transparent;--cover-bg:linear-gradient(180deg,#eef3f8,#d5e0ea);--cover-ink:#2e4157;--foot-bg:#d9e3ec;
 --fd:'Cormorant Garamond','Playfair Display',serif;--fh:'Cormorant Garamond','Mukta',serif;--fb:'Jost','Inter','Mukta',sans-serif;font-family:var(--fb);background:linear-gradient(180deg,#f2f6fa,#e1e9f0)}
.d-envelope .fx{z-index:0}.d-envelope .pr{position:absolute;bottom:-30px;border-radius:50%;background:radial-gradient(circle at 32% 30%,#fff 0,#f1f5fa 40%,#cfdbe7 100%);box-shadow:inset -2px -3px 6px rgba(120,150,180,.35),0 4px 10px rgba(80,110,140,.18);opacity:0;animation:pf linear infinite}@keyframes pf{0%{transform:translateY(0);opacity:0}12%{opacity:.85}88%{opacity:.7}100%{transform:translateY(-112vh) translateX(26px);opacity:0}}
.d-envelope .hero .orn-frame{inset:0}.d-envelope .hero .orn-frame svg{width:100%;height:100%}.d-envelope .hero-txt{padding:90px 26px 110px}
.d-envelope .kick{color:var(--mut);letter-spacing:.46em;font-size:10px}.d-envelope .bless{color:var(--ac);font-style:italic;font-family:var(--fh)}
.d-envelope .names{font-family:'Cormorant Garamond',serif;font-style:italic;font-weight:500;font-size:clamp(50px,15vw,112px);line-height:.95;margin:10px 0 14px}.d-envelope .names .n1,.d-envelope .names .n2{display:inline-block;background:linear-gradient(110deg,#2e4157 0%,#5d7893 38%,#2e4157 60%,#7f9bb4 85%,#2e4157 100%);background-size:220% 100%;-webkit-background-clip:text;background-clip:text;color:transparent;-webkit-text-fill-color:transparent;animation:foile 9s ease-in-out infinite;padding:0 .06em}@keyframes foile{0%,100%{background-position:0 0}50%{background-position:100% 0}}
.d-envelope .names .amp{font-family:'Pinyon Script',cursive;font-style:normal;font-size:.7em;color:#b8a468;margin:-2px 0}
.d-envelope .when{font-family:var(--fb);letter-spacing:.24em;text-transform:uppercase;font-size:clamp(11px,3vw,13px);font-weight:400}.d-envelope .when b{color:#b8a468}.d-envelope .time{color:var(--ac);letter-spacing:.3em;font-size:11px}
.d-envelope .sh h2{font-family:'Cormorant Garamond',serif;font-style:italic;font-weight:500;font-size:clamp(28px,7.4vw,40px);color:#2e4157}.d-envelope .intro{font-family:var(--fh);font-style:italic;font-size:clamp(20px,5vw,25px);color:#3c516a}.d-envelope .fam b{font-family:var(--fh);font-weight:700;font-size:22px}.d-envelope .fam small{color:#b8a468;letter-spacing:.3em}
.d-envelope .ev{position:relative;background:#fff;border:1px solid rgba(138,163,186,.5);border-radius:6px;padding:40px 22px 26px;box-shadow:0 26px 50px -34px rgba(46,65,87,.5)}.d-envelope .ev::after{content:'';position:absolute;inset:6px;border:1px solid rgba(138,163,186,.25);border-radius:3px;pointer-events:none}
.d-envelope .ev .orn-evmark{position:absolute;left:50%;top:-15px;transform:translateX(-50%);z-index:2}.d-envelope .sl{width:30px;height:30px;border-radius:50%;background:radial-gradient(circle at 35% 30%,#5f86ad,#1f3a5a 70%);box-shadow:0 3px 8px rgba(31,58,90,.4),inset 0 0 0 3px rgba(255,255,255,.12);position:relative}.d-envelope .sl::after{content:'';position:absolute;inset:9px;border-radius:50%;border:1.5px solid #dfe9f3}
.d-envelope .ev-d b{font-family:'Cormorant Garamond',serif;font-style:italic;font-weight:500;font-size:60px;color:var(--ac)}.d-envelope .ev-d span{color:#b8a468;letter-spacing:.3em}.d-envelope .ev-d small{color:var(--mut)}.d-envelope .ev h3{font-family:'Cormorant Garamond',serif;font-weight:700;font-size:28px}.d-envelope .ev-t{color:var(--ac);letter-spacing:.16em}.d-envelope .ev-w span,.d-envelope .ev-x,.d-envelope .ev-n{color:var(--mut)}
.d-envelope .btn{background:#2e4157;border-color:#2e4157;color:#fff;border-radius:999px;letter-spacing:.12em;font-weight:400;font-size:12px;text-transform:uppercase}.d-envelope .btn.ghost{background:transparent;color:#2e4157}
.d-envelope .cd{gap:8px}.d-envelope .cd-c{width:clamp(64px,19vw,88px);height:clamp(64px,19vw,88px);min-width:0;padding:0;justify-content:center;border-radius:50%;background:radial-gradient(circle at 32% 28%,#fff 0,#eef3f8 55%,#d2deea 100%);border:1px solid #fff;box-shadow:inset -4px -6px 12px rgba(120,150,180,.25),0 10px 22px -12px rgba(46,65,87,.5)}.d-envelope .cd-c b{font-family:'Cormorant Garamond',serif;font-weight:600;color:#2e4157;font-size:clamp(24px,7vw,34px)}.d-envelope .cd-c span{font-size:8px;letter-spacing:.22em;color:var(--mut);margin-top:2px}.d-envelope .cd-date{font-family:var(--fh);font-style:italic;color:var(--mut)}
.d-envelope .st-ph img{border-radius:4px;border:8px solid #fff;box-shadow:0 20px 40px -22px rgba(46,65,87,.55);aspect-ratio:3/4;transform:rotate(-1.5deg)}.d-envelope .st-ph .orn-frame{display:none}.d-envelope .st-tx p{font-size:clamp(19px,4.8vw,23px);color:#3c516a}
.d-envelope .gi{border:6px solid #fff;border-radius:3px;padding:0;box-shadow:0 14px 26px -16px rgba(46,65,87,.5)}.d-envelope .gi img{border-radius:0}
.d-envelope .rs-box{background:#fff;border:1px solid rgba(138,163,186,.5);border-radius:8px}.d-envelope .rs-f input,.d-envelope .rs-f textarea{background:#f6f9fc;border-color:rgba(46,65,87,.2)}.d-envelope .chip.on{background:#2e4157;color:#fff;border-color:#2e4157}.d-envelope .rs-tick{background:#2e4157;color:#fff}
.d-envelope .end-n{font-family:'Pinyon Script',cursive;font-size:clamp(44px,12vw,70px);color:#2e4157}.d-envelope .end-t{color:#3c516a}.d-envelope .foot{background:var(--bg2);border-top:0}.d-envelope .mbtn{background:rgba(46,65,87,.88)}
/* cover: wax-sealed envelope */
.d-envelope .cover{flex-direction:column;justify-content:center;gap:24px;transition:opacity .6s 1.25s,transform 1.2s 1.2s cubic-bezier(.4,0,.2,1)}.d-envelope .cover.go{opacity:0;transform:scale(1.18)}
.d-envelope .cover>.orn{position:relative;inset:auto;flex:none;width:min(84vw,400px);height:calc(min(84vw,400px)*.64);pointer-events:none}.d-envelope .env{position:relative;width:100%;height:100%;perspective:1100px;filter:drop-shadow(0 26px 30px rgba(46,65,87,.35))}
.d-envelope .env>div{position:absolute;inset:0}.d-envelope .eb{background:linear-gradient(180deg,#a4b8ca,#93a9bd);border-radius:5px}
.d-envelope .ec{left:5%;right:5%;top:7%;bottom:3%;background:#fff;border:1px solid rgba(184,164,104,.6);border-radius:3px;transition:transform 1.1s .55s cubic-bezier(.3,.8,.3,1);display:flex;flex-direction:column;align-items:center;justify-content:center;gap:7px}.d-envelope .ec i{display:block;width:44%;height:2px;background:#d7e0e9}.d-envelope .ec i:first-child{width:24%;background:#c8b88a}
.d-envelope .ef{background:linear-gradient(180deg,#c3d2e0,#b3c6d8);clip-path:polygon(0 0,50% 56%,100% 0,100% 100%,0 100%);border-radius:5px}.d-envelope .ef svg{position:absolute;inset:0;width:100%;height:100%}
.d-envelope .efl{background:linear-gradient(180deg,#b7c9da,#9db3c7);clip-path:polygon(0 0,100% 0,50% 58%);transform-origin:50% 0;transition:transform 1s .1s cubic-bezier(.5,0,.3,1);z-index:5;border-radius:5px 5px 0 0}
.d-envelope .seal{position:absolute;left:50%;top:58%;width:clamp(48px,15vw,62px);height:clamp(48px,15vw,62px);transform:translate(-50%,-50%);border-radius:48% 52% 50% 50%/52% 48% 52% 48%;background:radial-gradient(circle at 34% 30%,#6e94bb,#2b4a6e 55%,#1a3050);box-shadow:0 5px 12px rgba(20,40,70,.5),inset 0 0 0 4px rgba(255,255,255,.1),0 0 0 3px rgba(43,74,110,.55);z-index:6;transition:transform .5s,opacity .4s;animation:sp 2.6s ease-in-out infinite;display:flex;align-items:center;justify-content:center;padding:6px}@keyframes sp{0%,100%{box-shadow:0 5px 12px rgba(20,40,70,.5),inset 0 0 0 4px rgba(255,255,255,.1),0 0 0 3px rgba(43,74,110,.55)}50%{box-shadow:0 5px 12px rgba(20,40,70,.5),inset 0 0 0 4px rgba(255,255,255,.1),0 0 0 9px rgba(43,74,110,.12)}}
.d-envelope .cover.go .seal{transform:translate(-50%,-50%) scale(1.5) rotate(14deg);opacity:0;animation:none}.d-envelope .cover.go .efl{transform:rotateX(180deg);animation:fz 1.2s forwards}@keyframes fz{0%{z-index:5}45%{z-index:5}46%,100%{z-index:0}}.d-envelope .cover.go .ec{transform:translateY(-62%) scale(1.05);z-index:4}
.d-envelope .cv-in{padding:0 20px;transition:opacity .4s}.d-envelope .cover.go .cv-in{opacity:0}.d-envelope .cv-kick{letter-spacing:.46em;font-size:10px;color:var(--mut)}.d-envelope .cv-names{font-family:'Cormorant Garamond',serif;font-style:italic;font-weight:500;font-size:clamp(40px,12vw,64px);line-height:.98;color:#2e4157}.d-envelope .cv-names i{font-family:'Pinyon Script',cursive;font-style:normal;color:#b8a468;font-size:.7em}
.d-envelope .cv-date{font-family:var(--fb);letter-spacing:.22em;text-transform:uppercase;font-size:12px;margin-bottom:20px}.d-envelope .cv-btn{background:#2e4157;border-color:#2e4157;color:#fff;letter-spacing:.26em;font-size:11px;font-weight:400}.d-envelope .cv-btn:hover{background:#35577d;color:#fff}
@media(max-height:680px){.d-envelope .cover{gap:14px}.d-envelope .cv-names{font-size:36px}}
.d-envelope .env>.seal{inset:auto;left:50%;top:58%}
