@import url('https://fonts.googleapis.com/css2?family=Cormorant+Garamond:wght@400;500;600;700&family=DM+Sans:wght@400;500;600&family=Great+Vibes&display=swap');
*{box-sizing:border-box}html{scroll-behavior:smooth}body{margin:0;background:#070707;color:#f7eee6;font-family:'DM Sans',sans-serif;overflow-x:hidden}.opening{position:fixed;inset:0;z-index:100;background:#070707;display:block;overflow:hidden;transition:visibility 0s 1.8s}.opening.done{visibility:hidden;pointer-events:none}.env{position:absolute;inset:0;background:radial-gradient(circle at 50% 50%,#17130f 0,#090909 46%,#050505 100%);transform:scale(1);transition:transform 1.5s cubic-bezier(.22,1,.36,1),opacity 1.1s ease}.env::before,.env::after{content:'';position:absolute;top:0;bottom:0;width:50%;pointer-events:none;transition:transform 1.35s cubic-bezier(.76,0,.24,1)}.env::before{left:0;background:linear-gradient(34deg,transparent 49.65%,rgba(215,177,93,.98) 50%,transparent 50.35%);}.env::after{right:0;background:linear-gradient(-34deg,transparent 49.65%,rgba(215,177,93,.98) 50%,transparent 50.35%)}.gold-line{position:absolute;inset:0;background:linear-gradient(146deg,transparent 49.86%,rgba(255,226,158,.18) 49.95%,transparent 50.04%),linear-gradient(34deg,transparent 49.86%,rgba(255,226,158,.18) 49.95%,transparent 50.04%);opacity:.8}.seal-wrap{position:absolute;left:50%;top:50%;transform:translate(-50%,-50%);z-index:5;text-align:center;transition:transform .95s cubic-bezier(.34,1.56,.64,1),opacity .55s}.seal{width:112px;height:112px;border-radius:50%;border:2px solid #e8c978;background:radial-gradient(circle at 30% 22%,#f6dda0 0,#c39145 36%,#8b5c25 72%,#633d17 100%);box-shadow:0 0 0 6px rgba(202,157,73,.10),0 0 38px rgba(216,173,88,.24),inset 0 4px 8px rgba(255,255,255,.35),inset 0 -9px 16px rgba(50,25,5,.35);color:#fff4d0;font-family:'Cormorant Garamond',serif;font-weight:700;font-size:25px;display:grid;place-items:center;cursor:pointer;position:relative}.seal::before{content:'✦  ✧  ✦';position:absolute;top:16px;left:50%;transform:translateX(-50%);font-size:12px;letter-spacing:2px}.seal::after{content:'Z  F';position:absolute;bottom:18px;left:50%;transform:translateX(-50%);font-size:18px;letter-spacing:5px}.seal span{opacity:0}.ornament{position:absolute;left:50%;top:50%;transform:translate(-50%,-104px);font-size:48px;color:#f1d58e;filter:drop-shadow(0 3px 5px rgba(0,0,0,.55));font-family:serif}.seal-hint{position:absolute;left:50%;bottom:9%;transform:translateX(-50%);z-index:6;white-space:nowrap;color:#d8b66d;letter-spacing:3px;font-size:8px;opacity:.9;transition:opacity .4s}.opening.open .seal-wrap{transform:translate(-50%,-50%) scale(1.12) rotate(3deg);opacity:0}.opening.open .seal-hint{opacity:0}.opening.open .env{transform:scale(1.06);opacity:0}.opening.open .env::before{transform:translateX(-100%)}.opening.open .env::after{transform:translateX(100%)}.opening.open .gold-line{opacity:0;transition:opacity .8s}.site{opacity:0;transform:scale(1.025);filter:blur(7px);transition:opacity 1.25s cubic-bezier(.22,1,.36,1),transform 1.6s cubic-bezier(.22,1,.36,1),filter 1.35s ease}.site.show{opacity:1;transform:none;filter:none}.music-btn{position:fixed;right:18px;bottom:18px;z-index:40;width:46px;height:46px;border-radius:50%;border:1px solid #bd914c;background:rgba(8,8,8,.78);backdrop-filter:blur(10px);color:#e0bd78;font-size:18px;display:none;box-shadow:0 8px 25px rgba(0,0,0,.3)}.hero{height:100svh;min-height:650px;position:relative;overflow:hidden}.hero>img{position:absolute;width:100%;height:100%;object-fit:cover;object-position:center;transform:scale(1.08);transition:transform 8s cubic-bezier(.2,.6,.2,1)}.site.show .hero>img{transform:scale(1)}.veil{position:absolute;inset:0;background:linear-gradient(180deg,rgba(0,0,0,.04),rgba(0,0,0,.86))}.hero-content{position:absolute;inset:auto 0 0;padding:0 24px 56px;text-align:center;opacity:0;transform:translateY(28px);transition:opacity 1.2s .45s ease,transform 1.2s .45s cubic-bezier(.22,1,.36,1)}.site.show .hero-content{opacity:1;transform:none}.arabic{font-family:'Cormorant Garamond',serif}.arabic.large{font-size:22px;margin-bottom:18px}.eyebrow{font-size:9px;letter-spacing:3px;color:#c9a365}.hero h1{font-family:'Great Vibes',cursive;font-size:clamp(68px,18vw,105px);font-weight:400;line-height:.9;margin:12px 0;color:#f2d39a}.hero h1 i{font-family:'Cormorant Garamond',serif;font-size:.42em;font-style:normal;color:#fff}.script{font-family:'Great Vibes',cursive;font-size:30px;color:#fff;margin:18px 0 9px}.hero-date{font-size:11px;letter-spacing:5px}.scroll{display:inline-block;margin-top:28px;color:#fff;text-decoration:none;font-size:8px;letter-spacing:2px;animation:pulse 2.4s ease-in-out infinite}@keyframes pulse{50%{opacity:.4;transform:translateY(4px)}}.panel{padding:90px 22px;text-align:center;max-width:900px;margin:auto;background:#f8eee8;color:#4b3839;opacity:0;transform:translateY(45px);transition:opacity 1s ease,transform 1.1s cubic-bezier(.22,1,.36,1)}.panel.visible{opacity:1;transform:none}.panel h2{font-family:'Cormorant Garamond',serif;font-size:51px;font-weight:500;margin:12px 0;color:#6b4a49}.panel p{max-width:620px;margin:12px auto;line-height:1.9;font-size:14px;color:#765f60}.line{color:#b3884e;font-size:20px;margin:22px}.quote{margin:30px auto;font-family:'Cormorant Garamond',serif;font-size:19px}.quote small{font-family:'DM Sans',sans-serif;font-size:9px;letter-spacing:1px}.dark{max-width:none;background:#0d0d0d;color:#f7eee8}.dark h2{color:#f2d39a}.countdown{display:grid;grid-template-columns:repeat(4,1fr);max-width:720px;margin:36px auto 28px;gap:8px}.countdown div{border:1px solid #6d522d;padding:17px 4px;background:#111;transition:transform .35s ease,border-color .35s ease}.countdown div:hover{transform:translateY(-4px);border-color:#d2ab62}.countdown b{display:block;font-family:'Cormorant Garamond',serif;color:#e0bd78;font-size:38px}.countdown span{font-size:7px;letter-spacing:1.7px;color:#bda67c}.date-big{font-family:'Cormorant Garamond',serif;letter-spacing:3px;font-size:19px;color:#e4c88e}.time{margin-top:15px;color:#c4aa7f;font-size:11px;letter-spacing:2px}.details{max-width:none;background:#101010;color:#eee0d5}.details h2{color:#e9cc94}.detail-grid{max-width:720px;margin:38px auto;display:grid;grid-template-columns:repeat(3,1fr);border-top:1px solid #4b3824;border-bottom:1px solid #4b3824}.detail-grid div{padding:28px 10px}.detail-grid span{display:block;color:#bd9250;font-size:8px;letter-spacing:2px;margin-bottom:10px}.detail-grid strong{display:block;font-family:'Cormorant Garamond',serif;font-size:20px;font-weight:500}.detail-grid small{display:block;margin-top:7px;color:#bcae9d;font-size:10px}.gold-btn{display:inline-block;padding:14px 22px;border:1px solid #b58a4b;border-radius:999px;color:#e5c581;text-decoration:none;font-size:8px;letter-spacing:2px;transition:transform .3s ease,background .3s ease,color .3s ease}.gold-btn:hover{transform:translateY(-3px);background:#b58a4b;color:#fff}.gallery{max-width:none;background:#171212;color:#eee}.gallery h2{color:#e7c88e}.gallery-grid{max-width:780px;margin:35px auto 0;display:grid;grid-template-columns:1fr 1fr;gap:10px}.gallery-grid figure{margin:0;overflow:hidden;border:1px solid rgba(194,148,75,.4);border-radius:12px;opacity:0;transform:scale(.94);transition:opacity 1s ease,transform 1.1s cubic-bezier(.22,1,.36,1)}.gallery.visible figure{opacity:1;transform:none}.gallery.visible figure:nth-child(2){transition-delay:.12s}.gallery.visible figure:nth-child(3){transition-delay:.24s}.gallery-grid figure:first-child{grid-row:span 2}.gallery-grid img{width:100%;height:100%;min-height:240px;object-fit:cover;display:block;transition:transform 1.1s cubic-bezier(.22,1,.36,1)}.gallery-grid figure:hover img{transform:scale(1.045)}.gallery-grid .photo-wide{grid-column:1/-1}.gallery-grid .photo-wide img{min-height:220px}.message{max-width:none;background:#0d0d0d;color:#f5e8dc}.message h2{color:#e8c98f}.message p{color:#d2c1b5}.signature{font-family:'Great Vibes',cursive;font-size:38px;color:#e1bd78;margin:25px}.directions{max-width:none;background:#f5e7df}.map-card{max-width:650px;height:220px;margin:30px auto;background:linear-gradient(135deg,#eadfd0,#f9f4e9);border:1px solid #d2b892;border-radius:18px;display:flex;flex-direction:column;align-items:center;justify-content:center;color:#57463f;box-shadow:inset 0 0 40px rgba(110,80,45,.08);transition:transform .6s cubic-bezier(.22,1,.36,1)}.map-card:hover{transform:translateY(-6px)}.pin{color:#b17a38;font-size:35px;margin-bottom:8px}.map-card b{font-family:'Cormorant Garamond',serif;font-size:25px}.map-card span{font-size:10px;letter-spacing:2px;margin-top:5px}.directions .gold-btn{background:#a87d45;color:#fff;border:0}.site footer{background:#080808;text-align:center;padding:65px 20px;color:#eee}.footer-name{font-family:'Great Vibes',cursive;color:#dfbc78;font-size:34px;margin:12px}.site footer small{font-size:8px;letter-spacing:3px;color:#a99069}@media(max-width:650px){.detail-grid{grid-template-columns:1fr}.detail-grid div{border-bottom:1px solid #4b3824}.detail-grid div:last-child{border-bottom:0}.countdown b{font-size:30px}.panel{padding:72px 18px}.gallery-grid img{min-height:210px}.hero-content{padding-bottom:45px}.seal{width:102px;height:102px}.ornament{font-size:43px;transform:translate(-50%,-96px)}}

/* CINEMATIC LUXURY OPENING V3 */
.opening{background:#040404;perspective:1400px}
.envelope-full{overflow:hidden}
.envelope{transform-style:preserve-3d;will-change:transform,opacity}
.opening-copy{transition:opacity .55s ease,transform .7s cubic-bezier(.16,1,.3,1);animation:hint 2.4s ease-in-out infinite}
@keyframes hint{0%,100%{opacity:.45;transform:translateY(0)}50%{opacity:1;transform:translateY(-3px)}}
.seal{will-change:transform,opacity,filter}
.opening.open .seal{animation:sealBreak .82s cubic-bezier(.16,1,.3,1) forwards}
@keyframes sealBreak{0%{transform:translate(-50%,-50%) scale(1);opacity:1;filter:brightness(1)}32%{transform:translate(-50%,-50%) scale(1.12) rotate(-2deg);filter:brightness(1.55)}65%{transform:translate(-50%,-50%) scale(.72) rotate(5deg);opacity:.72}100%{transform:translate(-50%,-50%) scale(.08) rotate(12deg);opacity:0}}
.opening.open .envelope{animation:envelopeReveal 1.65s .1s cubic-bezier(.16,1,.3,1) forwards}
@keyframes envelopeReveal{0%{transform:scale(1) translateY(0);opacity:1}48%{transform:scale(1.012) translateY(-8px);opacity:1}100%{transform:scale(1.065) translateY(-55px);opacity:0}}
.opening.open .letter-preview{transform:translateY(-34%) scale(1.025);transition:transform 1.5s .25s cubic-bezier(.16,1,.3,1)}
.opening.open .opening-copy{opacity:0;transform:translateY(14px)}
.site{filter:blur(14px);transform:scale(1.04);transition:opacity 1.15s .2s,filter 1.35s .2s,transform 1.35s .2s}
.site.show{filter:blur(0);transform:scale(1)}
.site.show .hero>img{animation:heroSettle 2.3s cubic-bezier(.16,1,.3,1) both}
@keyframes heroSettle{from{transform:scale(1.08)}to{transform:scale(1)}}
.panel{opacity:0;transform:translateY(30px);transition:opacity .95s ease,transform 1.05s cubic-bezier(.16,1,.3,1)}
.panel.revealed{opacity:1;transform:none}
.gallery-grid figure{opacity:0;transform:translateY(28px) scale(.985);transition:opacity .9s ease,transform 1s cubic-bezier(.16,1,.3,1)}
.gallery-grid figure.revealed{opacity:1;transform:none}
/* Updated cinematic video opening */
.opening{background:#040404;display:block;overflow:hidden}
.opening-video{position:absolute;inset:0;width:100%;height:100%;object-fit:cover;opacity:.92;filter:brightness(.72);z-index:0}
.opening-overlay{position:absolute;inset:0;background:radial-gradient(circle at 50% 50%,transparent 0,rgba(0,0,0,.18) 48%,rgba(0,0,0,.72) 100%);z-index:1}
.opening-copy{position:absolute;top:17%;left:0;right:0;text-align:center;z-index:4;text-shadow:0 2px 18px rgba(0,0,0,.75)}
.opening-monogram{font-family:'Cormorant Garamond',serif;font-size:clamp(48px,12vw,80px);font-weight:600;letter-spacing:6px;color:#f2d39a}
.opening-title{margin-top:8px;font-family:'Cormorant Garamond',serif;font-size:clamp(23px,6vw,36px);letter-spacing:4px;color:#fff4df;text-transform:uppercase}
.seal-wrap{z-index:5;top:63%;}
.seal{border-color:#f0d58f;box-shadow:0 0 0 7px rgba(202,157,73,.12),0 0 45px rgba(230,190,95,.52),inset 0 4px 8px rgba(255,255,255,.35),inset 0 -9px 16px rgba(50,25,5,.35);animation:sealGlow 2s ease-in-out infinite}
.seal-hint{position:static;transform:none;margin-top:16px;font-size:10px;letter-spacing:2px;color:#f2d39a;text-transform:none;animation:hint 2s ease-in-out infinite}
@keyframes sealGlow{50%{box-shadow:0 0 0 10px rgba(202,157,73,.08),0 0 65px rgba(240,199,102,.78),inset 0 4px 8px rgba(255,255,255,.4),inset 0 -9px 16px rgba(50,25,5,.35)}}
.opening.open .seal{animation:sealBreak .82s cubic-bezier(.16,1,.3,1) forwards}
.opening.open .opening-copy,.opening.open .seal-hint{opacity:0;transition:opacity .35s ease}
.opening.open .opening-video{animation:openingVideoExit 1.1s ease forwards}
@keyframes openingVideoExit{to{transform:scale(1.06);opacity:0}}
/* Sparkles */
.glitter-layer{position:fixed;inset:0;pointer-events:none;z-index:35;overflow:hidden}
.sparkle{position:absolute;width:var(--size);height:var(--size);border-radius:50%;background:rgba(255,232,170,.9);box-shadow:0 0 7px rgba(255,220,140,.9);opacity:0;animation:flySparkle linear infinite;transform:translate3d(0,0,0)}
.sparkle::after{content:'';position:absolute;left:50%;top:50%;width:1px;height:calc(var(--size)*3);background:rgba(255,244,210,.75);transform:translate(-50%,-50%) rotate(45deg)}
@keyframes flySparkle{0%{opacity:0;transform:translate3d(0,30px,0) scale(.6)}15%{opacity:.8}55%{opacity:.45}100%{opacity:0;transform:translate3d(var(--drift),-120px,0) scale(1.2)}}
/* RSVP */
.rsvp{max-width:none;background:#f8eee8}
.rsvp-form{max-width:560px;margin:28px auto 12px;display:grid;gap:12px}
.rsvp-form input{width:100%;padding:15px 17px;border:1px solid #d4bfae;border-radius:10px;background:rgba(255,255,255,.72);font:inherit;color:#4b3839;outline:none}
.rsvp-form input:focus{border-color:#b3884e;box-shadow:0 0 0 3px rgba(179,136,78,.1)}
.rsvp-form .gold-btn{background:#a87d45;color:#fff;cursor:pointer;font:inherit;font-size:8px}
.rsvp-thanks{margin:18px auto;color:#8a693d;font-size:13px}
.admin-link{margin-top:25px;border:0;background:none;color:#8f765f;text-decoration:underline;cursor:pointer;font-size:10px;letter-spacing:1px}
.admin-panel{max-width:780px;margin:22px auto 0;padding:20px;border:1px solid #d4bfae;border-radius:14px;background:rgba(255,255,255,.55);text-align:left}
.admin-head{display:flex;justify-content:space-between;align-items:center}.admin-head h3{margin:0;font-family:'Cormorant Garamond',serif;font-size:28px;color:#6b4a49}.admin-head button{border:0;background:none;font-size:25px;cursor:pointer}
.admin-actions{display:flex;gap:8px;margin:16px 0}.admin-actions button{padding:9px 13px;border:1px solid #b58a4b;background:#fff;border-radius:999px;cursor:pointer;color:#6b4a49;font-size:9px}
.rsvp-stats{display:flex;gap:20px;font-size:10px;color:#8a6f61;margin-bottom:12px}.admin-table-wrap{overflow:auto}table{width:100%;border-collapse:collapse;font-size:11px}th,td{padding:10px;border-bottom:1px solid #dfcfc3;text-align:left}th{color:#8f6c43;letter-spacing:1px;font-size:9px}
/* Video before footer */
.media-panel{max-width:none;padding:0;background:#050505;overflow:hidden}
.footer-video{display:block;width:100%;height:auto;max-height:none;object-fit:cover;pointer-events:none}
.credit{margin-top:18px;font-size:10px;letter-spacing:1px;color:#b99a73}
@media(max-width:650px){.opening-copy{top:13%}.seal-wrap{top:62%}.opening-title{letter-spacing:2px}.footer-video{min-height:0}.admin-panel{padding:14px}.rsvp-stats{justify-content:space-between}}

/* FINAL REFINEMENTS */
/* The real wax seal is part of the opening video. This button is only the invisible tap target. */
.opening .seal-wrap{top:33%;width:132px;height:132px;transform:translate(-50%,-50%);}
.opening .seal{width:132px;height:132px;border:0;background:transparent;box-shadow:none;color:transparent;opacity:1;}
.opening .seal::before,.opening .seal::after,.opening .seal span{content:none;display:none;}
.opening .seal:focus{outline:none;box-shadow:none;}
.opening.open .seal{animation:none;opacity:0;}
.opening .seal-hint{position:absolute;left:50%;top:calc(100% + 18px);bottom:auto;transform:translateX(-50%);margin:0;color:#f2d39a;}
.opening.open .seal-hint{opacity:0;}

/* Music on/off control */
.music-btn{width:auto;min-width:128px;height:48px;padding:0 17px;display:none;align-items:center;justify-content:center;gap:9px;border-radius:999px;font-family:'DM Sans',sans-serif;font-size:9px;letter-spacing:1.7px;cursor:pointer;}
.music-icon{font-size:19px;line-height:1;}
.music-label{font-size:9px;letter-spacing:1.7px;}
.music-btn.is-on{background:rgba(255,248,240,.94);color:#76575a;border-color:#d5c1b5;box-shadow:0 8px 28px rgba(0,0,0,.16);}

/* Save-the-date section styled like a polished invitation card */
.save-date-panel{max-width:none;background:#f8eee8;color:#4b3839;padding:72px 18px 86px;}
.save-date-panel h2{color:#6b4a49;margin-bottom:28px;}
.save-date-video-wrap{width:min(100%,650px);margin:0 auto;border-radius:22px;overflow:hidden;border:1px solid rgba(174,135,83,.28);box-shadow:0 18px 45px rgba(80,55,40,.12);background:#eee2db;}
.save-date-video{display:block;width:100%;height:auto;aspect-ratio:9/16;object-fit:cover;pointer-events:none;}

/* Password-protected admin login */
.admin-login{max-width:430px;margin:22px auto 0;padding:22px;border:1px solid #d4bfae;border-radius:14px;background:rgba(255,255,255,.55);text-align:left;}
.admin-login p{font-size:12px!important;line-height:1.6!important;margin:8px 0 16px!important;}
.admin-login input{width:100%;padding:14px 16px;border:1px solid #d4bfae;border-radius:10px;background:rgba(255,255,255,.8);font:inherit;color:#4b3839;outline:none;margin-bottom:12px;}
.admin-login .gold-btn{background:#a87d45;color:#fff;cursor:pointer;font:inherit;font-size:8px;width:100%;}
.admin-error{margin-top:12px;color:#a34f4f;font-size:10px;}
.admin-actions{flex-wrap:wrap;}

@media(max-width:650px){
  .opening .seal-wrap{top:50%;width:116px;height:116px;}
  .opening .seal{width:116px;height:116px;}
  .opening .seal-hint{top:calc(100% + 14px);}
  .music-btn{right:14px;bottom:14px;min-width:122px;height:46px;}
  .save-date-panel{padding:62px 14px 72px;}
  .save-date-video-wrap{border-radius:18px;max-width:100%;}
}


/* OPENING VIDEO PLAYBACK FIX */
.opening-video{
  position:absolute;
  inset:0;
  width:100%;
  height:100%;
  object-fit:cover;
  opacity:1;
  filter:none;
  z-index:0;
  transform:none;
  animation:none !important;
  will-change:auto;
  background:#f3eee7;
}
.opening.open .opening-video{
  opacity:1;
  transform:none;
  animation:none !important;
}
.opening.open .opening-overlay{opacity:.55;transition:opacity .35s ease;}

/* The seal visible in the video is the only button; this element is invisible. */
.opening .seal-wrap{top:33%;}
.opening .seal{background:transparent !important;border:0 !important;box-shadow:none !important;color:transparent !important;opacity:1;cursor:pointer;}
.opening .seal:hover,.opening .seal:active,.opening .seal:focus{background:transparent !important;box-shadow:none !important;outline:none;}
@media(max-width:650px){
  .opening .seal-wrap{top:33%;}
  .opening .seal{width:116px;height:116px;}
}

/* Music control stays fixed and visible during the entire invitation scroll. */
.music-btn{
  position:fixed !important;
  right:18px;
  bottom:calc(18px + env(safe-area-inset-bottom));
  z-index:9999 !important;
  display:none;
  visibility:visible;
  opacity:1;
  pointer-events:auto;
}
.site.show .music-btn{display:flex !important;}
@media(max-width:650px){
  .music-btn{right:14px;bottom:calc(14px + env(safe-area-inset-bottom));}
}


/* FINAL MUSIC CONTROL FIX — viewport fixed across every invitation section */
.music-btn{
  position:fixed !important;
  right:18px !important;
  bottom:calc(18px + env(safe-area-inset-bottom)) !important;
  z-index:2147483647 !important;
  display:none;
  visibility:visible !important;
  opacity:1 !important;
  pointer-events:auto !important;
  transform:none !important;
}
@media(max-width:650px){
  .music-btn{
    right:14px !important;
    bottom:calc(14px + env(safe-area-inset-bottom)) !important;
  }
}

/* FINAL OPENING SEAL ALIGNMENT
   The wax seal is part of the opening video. Keep the DOM button invisible and
   align its hit area to the real seal shown in the video. */
.opening .seal-wrap{
  left:50% !important;
  top:50.8% !important;
  width:clamp(108px,30vw,230px) !important;
  height:clamp(108px,30vw,230px) !important;
  transform:translate(-50%,-50%) !important;
  z-index:10 !important;
}
.opening .seal{
  width:100% !important;
  height:100% !important;
  min-width:0 !important;
  min-height:0 !important;
  padding:0 !important;
  margin:0 !important;
  background:transparent !important;
  border:0 !important;
  box-shadow:none !important;
  color:transparent !important;
  opacity:1 !important;
  cursor:pointer !important;
  -webkit-tap-highlight-color:transparent !important;
}
.opening .seal::before,
.opening .seal::after,
.opening .seal span{display:none !important;content:none !important;}
.opening .seal-hint{
  position:absolute !important;
  left:50% !important;
  top:calc(100% + 10px) !important;
  bottom:auto !important;
  transform:translateX(-50%) !important;
  margin:0 !important;
  white-space:nowrap !important;
  z-index:11 !important;
  color:#f2d39a !important;
  text-shadow:0 2px 12px rgba(0,0,0,.45) !important;
  font-size:10px !important;
  letter-spacing:2px !important;
}
@media(max-width:650px){
  .opening .seal-wrap{
    top:50.8% !important;
    width:clamp(104px,30vw,128px) !important;
    height:clamp(104px,30vw,128px) !important;
  }
  .opening .seal-hint{
    top:calc(100% + 9px) !important;
    font-size:9px !important;
    letter-spacing:1.7px !important;
  }
}
