/* Animação original com os assets existentes: sem vídeo, bibliotecas ou imagens adicionais. */
.gift-mode .site-header{display:none}.gift-mode #app{min-height:calc(100svh - 3px);padding:20px;overflow:hidden}.gift-screen{width:min(640px,100%);text-align:center;position:relative;display:flex;flex-direction:column;align-items:center;justify-content:center}.gift-screen h1{font:800 clamp(27px,5.4vw,38px)/1.15 Manrope,Arial,sans-serif;letter-spacing:-.8px;margin:0 0 14px;overflow-wrap:anywhere}.gift-screen>p{font:600 20px/1.4 Manrope,Arial,sans-serif;color:#f6f1ec;margin:0}.gift-scene{height:355px;width:min(400px,100%);position:relative;display:grid;place-items:center;perspective:800px;margin:5px 0 0}.gift-light{position:absolute;width:270px;height:270px;background:radial-gradient(ellipse,#ff143b30,transparent 68%);opacity:.8;pointer-events:none}.gift-chocolate{position:absolute;width:205px;aspect-ratio:555/694;filter:drop-shadow(0 14px 18px #0008);animation:gift-float 3.8s ease-in-out infinite;z-index:2;pointer-events:none}.gift-half{position:absolute;inset:0;width:100%;height:100%;object-fit:contain;transition:transform 1s cubic-bezier(.2,.7,.2,1),opacity .9s}.gift-half-top{clip-path:inset(0 0 50% 0)}.gift-half-bottom{clip-path:inset(50% 0 0 0)}.gift-pointer{position:absolute;right:0;top:48px;font:850 22px/1 Manrope,Arial,sans-serif;color:#fff;transform:rotate(7deg);z-index:3;transition:opacity .2s}.gift-pointer svg{display:block;width:95px;height:90px;margin:4px 0 0 -15px;fill:none;stroke:#fff;stroke-width:4;stroke-linecap:round;stroke-linejoin:round}.gift-open{position:fixed;inset:0;z-index:30;width:100%;height:100%;border:0;border-radius:0;background:transparent;cursor:pointer;padding:0}.gift-open:focus-visible{outline:2px solid #fff;outline-offset:-7px}.gift-ticket{position:absolute;z-index:1;width:min(330px,94%);min-height:240px;padding:18px 24px;display:flex;flex-direction:column;align-items:center;justify-content:center;gap:12px;color:#382000;border:2px solid #f7da7d;border-radius:12px;background:linear-gradient(120deg,#ad6e18 0%,#f8db83 18%,#fff0ac 35%,#dca537 52%,#ffe9a4 73%,#b77c22 100%);box-shadow:inset 0 0 0 5px #56300e33,inset 0 0 0 7px #ffedb766,0 18px 40px #0008;transform:translateY(42px) scale(.32) rotate(0);opacity:0;transition:transform 1.1s cubic-bezier(.16,1,.3,1),opacity .5s}.gift-ticket-name{font:800 17px/1.25 Manrope,Arial,sans-serif;overflow-wrap:anywhere;max-width:100%}.gift-ticket-discount{font:900 76px/.92 Archivo,Arial,sans-serif;letter-spacing:-3px;text-shadow:0 1px 0 #fff5}.gift-ticket-discount>span{display:block;margin-top:9px;font:850 19px/1.1 Manrope,Arial,sans-serif;letter-spacing:.4px}.gift-ticket-campaign{font:850 22px/1.15 Manrope,Arial,sans-serif}.gift-screen .gift-status{font-size:16px;line-height:1.45;max-width:420px;margin:2px 0 0;min-height:0;color:#ffdfa0}.gift-status:empty{display:none}.gift-continue{margin-top:20px;min-width:min(290px,100%);min-height:58px;font-size:19px;justify-content:center;z-index:3}.gift-spark{position:absolute;z-index:4;color:#ffe6a0;font-size:30px;opacity:0;pointer-events:none}.spark-one{left:8%;top:12%}.spark-two{right:3%;top:50%;font-size:22px}.spark-three{left:15%;bottom:10%;font-size:20px}.gift-opened .gift-pointer{opacity:0}.gift-opened .gift-chocolate{animation:none}.gift-opened .gift-half-top{transform:translate(-48px,-100px) rotate(-22deg);opacity:.18}.gift-opened .gift-half-bottom{transform:translate(45px,100px) rotate(17deg);opacity:.12}.gift-opened .gift-ticket{opacity:1;transform:translateY(0) scale(1) rotate(-3deg);z-index:3}.gift-opened .gift-light{background:radial-gradient(ellipse,#f2c74b55,transparent 68%)}.gift-opened .gift-spark{animation:gift-spark 1.2s ease-out both}.gift-opened .spark-two{animation-delay:.15s}.gift-opened .spark-three{animation-delay:.3s}@keyframes gift-float{0%,100%{transform:translateY(0) rotate(-6deg)}50%{transform:translateY(-7px) rotate(-4deg)}}@keyframes gift-spark{0%{opacity:0;transform:scale(.4) rotate(0)}45%{opacity:1;transform:scale(1.2) rotate(12deg)}100%{opacity:0;transform:scale(.8) rotate(25deg)}}.page-hidden .gift-chocolate,.page-hidden .gift-spark{animation-play-state:paused!important}
@media(max-height:700px){.gift-mode #app{padding:16px}.gift-screen h1{font-size:27px;margin-bottom:10px}.gift-screen>p{font-size:18px}.gift-scene{height:295px}.gift-chocolate{width:175px}.gift-pointer{top:25px;font-size:20px}.gift-ticket{min-height:218px;gap:10px;padding:16px 20px}.gift-ticket-discount{font-size:65px}.gift-ticket-campaign{font-size:21px}.gift-continue{margin-top:14px}}
@media(max-width:360px){.gift-screen h1{font-size:25px}.gift-screen>p{font-size:17px}.gift-scene{height:290px}.gift-pointer{right:-3px;font-size:18px}.gift-pointer svg{width:80px;height:80px}.gift-ticket{padding:17px 15px}.gift-ticket-campaign{font-size:20px}.gift-screen .gift-status{font-size:15px}.gift-continue{font-size:17px}}
@media(prefers-reduced-motion:reduce){.gift-chocolate,.gift-opened .gift-spark{animation:none}.gift-half,.gift-ticket,.gift-pointer{transition:none}.gift-opened .gift-half{opacity:0}.gift-opened .gift-ticket{transform:none}}
@media(max-width:360px) and (max-height:700px){.gift-scene{height:250px}.gift-chocolate{width:150px}.gift-pointer{top:12px}}
@media(max-height:600px){.gift-mode #app{padding:12px}.gift-screen h1{font-size:22px}.gift-screen>p{font-size:17px}.gift-scene{height:220px}.gift-chocolate{width:145px}.gift-ticket{min-height:200px;gap:8px;padding:14px}.gift-ticket-discount{font-size:59px}.gift-ticket-campaign{font-size:19px}.gift-continue{min-height:52px;margin-top:12px;font-size:17px}.gift-screen .gift-status{font-size:15px}}
.gift-restored .gift-half,.gift-restored .gift-ticket,.gift-restored .gift-pointer{transition:none}.gift-restored .gift-spark{animation:none}
/* Closed foil package, torn seam and ticket emerging toward the viewer. */
.gift-scene{width:min(620px,100%);height:365px;perspective:1000px}.gift-chocolate{width:200px;height:285px;aspect-ratio:auto;transform-style:preserve-3d}.wrapper-body,.wrapper-top{position:absolute;left:0;width:100%;background:repeating-linear-gradient(125deg,transparent 0 12px,#e5143230 13px 14px),linear-gradient(110deg,#140509,#54101d 24%,#11070a 50%,#771225 76%,#18070c);border:1px solid #b83845;box-shadow:inset 4px 0 8px #ff829640,inset -8px 0 12px #000c,0 12px 25px #0009}.wrapper-body{top:57px;height:228px;border-radius:5px 5px 13px 13px;display:flex;align-items:center;justify-content:center;flex-direction:column;clip-path:polygon(0 0,8% 3%,16% 0,23% 3%,32% 0,41% 4%,50% 0,59% 3%,68% 0,77% 3%,86% 0,94% 3%,100% 0,100% 100%,0 100%)}.wrapper-body>img{width:82%;height:auto;margin-top:19px}.wrapper-seal{display:grid;place-items:center;width:105px;height:105px;background:linear-gradient(140deg,#444,#050505);border:8px solid #fa002c;box-shadow:0 0 0 3px #65000e,inset 0 2px 8px #fff6,0 6px 10px #000;position:relative;border-radius:50%;color:white;font:900 66px/1 Manrope,Arial}.wrapper-seal:after{content:'';position:absolute;width:112%;height:9px;background:#fa002c;transform:rotate(-47deg);box-shadow:0 2px 2px #0009}.wrapper-top{top:0;height:70px;border-radius:8px 8px 0 0;z-index:4;clip-path:polygon(0 0,100% 0,100% 85%,94% 94%,86% 85%,77% 94%,68% 85%,59% 95%,50% 85%,41% 96%,32% 85%,23% 94%,16% 85%,8% 94%,0 85%);transform-origin:0 85%}.wrapper-top>span,.wrapper-ribs{position:absolute;left:4%;width:92%;height:14px;background:repeating-linear-gradient(90deg,#ca4654 0 1px,#22070e 2px 4px);opacity:.8}.wrapper-top>span{top:8px}.wrapper-ribs{bottom:8px}.wrapper-foil{position:absolute;top:52px;left:5%;width:90%;height:40px;background:linear-gradient(120deg,#777,#fff 25%,#777 45%,#eee 75%,#555);opacity:0;clip-path:polygon(0 0,15% 12%,30% 0,45% 20%,60% 0,75% 15%,100% 0,100% 100%,0 100%)}.gift-ticket{width:min(580px,100%);min-height:250px;padding:35px 20px;gap:8px;border-radius:5px;border:2px solid #ffedab;background:repeating-linear-gradient(100deg,transparent 0 3px,#fff1 4px 5px),linear-gradient(115deg,#a96b13,#ffe9a0 23%,#fff2b4 44%,#cf922a 66%,#ffe9a0 85%,#a56a18);box-shadow:inset 0 0 0 7px #9c661a,inset 0 0 0 9px #ffe7a2,0 25px 70px #000c;transform:translateY(35px) translateZ(-100px) scale(.18);opacity:0;transition:none;z-index:6}.ticket-line{display:block;font:900 clamp(20px,4.4vw,33px)/1.25 Manrope,Arial,sans-serif;letter-spacing:-.8px;color:#382000;text-shadow:0 1px #fff8}.gift-opened .gift-chocolate{animation:package-drop 1.9s ease both}.gift-opened .wrapper-top{animation:wrapper-tear 1s cubic-bezier(.5,0,.2,1) both}.gift-opened .wrapper-foil{opacity:1;transition:opacity .2s .3s}.gift-opened .gift-ticket{animation:ticket-leap 1.3s .55s cubic-bezier(.17,.85,.25,1) both;transform:none}.gift-screen .gift-status{display:none}.gift-continue{margin-top:5px}.gift-restored .gift-ticket{animation:none;opacity:1;transform:none}.gift-restored .gift-chocolate{animation:none;opacity:0}.gift-restored .wrapper-top{animation:none}.gift-opened .gift-light{width:100%;height:100%;background:radial-gradient(ellipse,#e6af3855,transparent 70%)}
@keyframes wrapper-tear{0%{transform:rotate(0)}25%{transform:translate(5px,-3px) rotate(5deg)}55%{transform:translate(-30px,-30px) rotate(-20deg)}100%{transform:translate(-150px,-110px) rotate(-65deg);opacity:0}}
@keyframes package-drop{0%,30%{transform:translateY(0) rotate(-5deg)}65%{transform:translateY(65px) rotate(5deg);opacity:.8}100%{transform:translateY(170px) rotate(9deg);opacity:0}}
@keyframes ticket-leap{0%{opacity:0;transform:translateY(40px) translateZ(-140px) rotateX(40deg) scale(.18)}15%{opacity:1}62%{opacity:1;transform:translateY(-32px) translateZ(60px) rotateX(-7deg) rotate(-2deg) scale(1.04)}100%{opacity:1;transform:translateY(0) translateZ(0) rotate(0) scale(1)}}
@media(max-width:420px){.gift-ticket{padding:30px 18px;min-height:230px}.ticket-line{font-size:22px;letter-spacing:-.7px}.gift-pointer{right:0;top:25px}.gift-scene{height:330px}}
@media(max-height:650px){.gift-scene{height:270px}.gift-chocolate{width:165px;height:235px}.wrapper-body{height:178px}.wrapper-seal{width:80px;height:80px;font-size:50px}.gift-ticket{min-height:205px;padding:26px 18px}.gift-screen h1{font-size:26px}.gift-continue{margin-top:0}}
@media(prefers-reduced-motion:reduce){.gift-opened .gift-ticket{animation:none;opacity:1;transform:none}.gift-opened .gift-chocolate{animation:none;opacity:0}.gift-opened .wrapper-top{animation:none}}
/* Bilhete: texto grande com quebras legíveis em telas pequenas. */
.gift-ticket{min-height:270px;padding:30px 22px;gap:12px}.ticket-line{font-size:clamp(30px,5.8vw,44px);line-height:1.14;letter-spacing:-1px;text-wrap:balance}
@media(max-width:420px){.gift-ticket{min-height:265px;padding:26px 19px;gap:12px}.ticket-line{font-size:clamp(28px,8.2vw,34px);line-height:1.13;letter-spacing:-.8px}.gift-scene{height:345px}}
@media(max-height:650px){.gift-ticket{min-height:240px;padding:24px 19px}.ticket-line{font-size:clamp(27px,7.5vw,36px)}.gift-scene{height:285px}}
