:root{
  --bg:#080000;
  --bg-2:#140202;
  --panel:#151212;
  --panel-2:#201a1a;
  --text:#fff8f8;
  --muted:#bfb3b3;
  --soft:#e9d6d6;
  --red:#ee1117;
  --red-2:#ff4d63;
  --red-dark:#9d090d;
  --line:rgba(255,255,255,.13);
  --glow:0 0 45px rgba(238,17,23,.22);
  --radius:24px;
  --max:1180px;
  font-family:Inter, ui-sans-serif, system-ui, -apple-system, BlinkMacSystemFont, "Segoe UI", sans-serif;
}
*{box-sizing:border-box}
html{scroll-behavior:smooth}
body{margin:0;background:radial-gradient(circle at 68% 8%, rgba(152,24,28,.28), transparent 34%),linear-gradient(180deg,#120505 0%,#080000 42%,#050000 100%);color:var(--text);overflow-x:hidden}
a{color:inherit;text-decoration:none}
button,input,textarea{font:inherit;color:inherit}
img{max-width:100%}
.hidden{display:none!important}
.center{text-align:center}.full{width:100%}.muted-text{color:var(--muted)}
.site-header{position:fixed;top:26px;left:50%;transform:translateX(-50%);z-index:50;width:min(calc(100% - 28px), 870px);height:68px;padding:0 24px;display:flex;align-items:center;justify-content:space-between;background:rgba(13,12,12,.78);border:1px solid rgba(255,255,255,.08);box-shadow:0 18px 60px rgba(0,0,0,.45);backdrop-filter:blur(16px);border-radius:999px}
.site-header.compact{position:sticky;transform:none;left:auto;margin:18px auto 0}.brand{display:flex;gap:10px;align-items:center;font-weight:900;letter-spacing:-.02em}.brand-mark{display:grid;place-items:center;width:28px;height:28px;border-radius:10px;color:var(--red);background:rgba(238,17,23,.12);filter:drop-shadow(0 0 14px rgba(238,17,23,.35))}.desktop-nav{display:flex;gap:42px;color:#d8cece;font-weight:800}.desktop-nav a:hover{color:white}.header-cta{display:none;background:var(--red);padding:12px 18px;border-radius:14px;font-weight:900}.section-blur{position:relative}.section-blur:after{content:"";position:absolute;left:0;right:0;bottom:-1px;height:130px;background:linear-gradient(transparent,rgba(8,0,0,1));pointer-events:none}.section-pad{padding:96px 24px}.hero{min-height:810px;display:grid;grid-template-columns:minmax(0,1.05fr) minmax(360px,.95fr);gap:50px;align-items:center;max-width:var(--max);margin:0 auto;padding:116px 24px 70px}.eyebrow{font-weight:900;color:#ffb4b8;letter-spacing:.08em;text-transform:uppercase;font-size:.78rem}.hero h1{font-size:clamp(3rem,7vw,6.4rem);line-height:.9;margin:18px 0 28px;letter-spacing:-.08em;max-width:720px}.hero-subtitle{font-size:clamp(1.1rem,2vw,1.55rem);line-height:1.45;color:#f3dfdf;max-width:760px;font-weight:700}.hero-actions{display:flex;align-items:center;gap:22px;flex-wrap:wrap;margin:34px 0 20px}.btn{border:0;border-radius:14px;padding:14px 22px;font-weight:950;cursor:pointer;display:inline-flex;align-items:center;justify-content:center;gap:10px;transition:.2s transform,.2s box-shadow,.2s border-color,.2s background}.btn:hover{transform:translateY(-2px)}.btn-primary{background:linear-gradient(135deg,var(--red),var(--red-2));box-shadow:0 18px 40px rgba(238,17,23,.24);color:white}.btn-outline{background:rgba(255,255,255,.03);border:1px solid rgba(255,255,255,.18);color:white}.btn-lg{padding:20px 28px;font-size:1.06rem}.text-link{text-decoration:underline;color:#d8d0d0;font-weight:900}.trust-row{display:flex;gap:22px;flex-wrap:wrap;color:#d9cccc;font-weight:700}.metric-grid{display:grid;grid-template-columns:repeat(3,1fr);gap:8px;margin-top:36px;max-width:650px}.metric-card{min-height:112px;background:rgba(255,255,255,.06);border:1px solid rgba(255,255,255,.12);border-radius:15px;padding:18px;display:flex;flex-direction:column;align-items:center;justify-content:center;text-align:center;gap:8px}.metric-card-number strong{display:block;font-size:2rem;line-height:1;font-weight:1000;color:#fff}.metric-card-number span{display:block;color:#9db1d7;font-weight:800;font-size:1rem}.metric-card-icon span:last-child{display:block;color:#c7d3eb;font-weight:800;font-size:1rem}.metric-icon{display:inline-flex;align-items:center;justify-content:center;width:32px;height:32px}.metric-icon svg{width:100%;height:100%}.metric-icon-bolt{color:#ffd43b;filter:drop-shadow(0 0 12px rgba(255,212,59,.22))}.metric-icon-whatsapp{filter:drop-shadow(0 0 12px rgba(37,211,102,.25))}.hero-visual{min-height:570px;position:relative}.phone-stack{position:relative;display:grid;place-items:center;min-height:570px;perspective:1000px}.mini-card{width:250px;height:430px;border-radius:26px;padding:24px;background:#180809;border:10px solid #131313;box-shadow:0 30px 80px rgba(0,0,0,.62),var(--glow);position:absolute;overflow:hidden}.mini-card:before{content:"";position:absolute;top:0;left:50%;transform:translateX(-50%);width:80px;height:22px;background:#080808;border-radius:0 0 15px 15px}.mini-card h3{font-family:Georgia,serif;font-style:italic;font-size:2rem;margin:20px 0 10px}.mini-card p{color:#ffecec;font-weight:600}.mini-img{height:150px;border-radius:12px;background:#222;margin-top:12px}.gradient-love{background:radial-gradient(circle at 35% 20%,#ffe4d1,transparent 18%),linear-gradient(135deg,#6b0b10,#e22b31 45%,#390306)}.gradient-movie{background:linear-gradient(135deg,#1b1832,#80314a 48%,#06060b)}.card-red{background:linear-gradient(#c8181b,#9d0b0e)}.card-gold{background:linear-gradient(180deg,#231b12,#0d0b08);border-color:#17110a;text-align:center;display:flex;flex-direction:column;justify-content:center;gap:18px}.card-gold h3{font-style:normal;font-size:1.8rem;line-height:1.2}.card-gold a{border:1px solid rgba(246,203,128,.45);padding:14px;font-weight:900;color:#f4d29a}.card-movie{background:#121214}.rotate-left{transform:translateX(-130px) rotateY(22deg) rotateZ(-7deg);z-index:1}.rotate-right{transform:translateX(140px) rotateY(-23deg) rotateZ(8deg);z-index:1}.main-card{z-index:3;transform:translateY(15px) scale(1.04)}.tiny-count{display:grid;grid-template-columns:1fr 1fr;gap:8px;margin-top:18px}.tiny-count b,.tiny-count span{background:rgba(0,0,0,.14);padding:6px;text-align:center}.poster-title{font-weight:950;font-size:1.4rem;letter-spacing:.08em;opacity:.86}.section-title{text-align:center;max-width:780px;margin:0 auto 54px}.section-title h2{font-size:clamp(2.2rem,4.4vw,4.4rem);line-height:1;letter-spacing:-.055em;margin:0 0 20px}.section-title p{color:#dfd2d2;font-size:1.2rem;font-weight:750}.how{background:linear-gradient(180deg,#090000,#120101)}.how-grid{max-width:var(--max);margin:0 auto;display:grid;grid-template-columns:1fr 380px;gap:60px;align-items:center}.steps{padding:0;margin:0;list-style:none;display:grid;gap:22px}.steps li{display:flex;gap:18px;align-items:center;font-size:1.25rem;font-weight:900}.steps span{width:30px;height:30px;border:2px solid var(--red);border-radius:50%;display:grid;place-items:center;color:var(--red);font-size:.9rem;box-shadow:0 0 18px rgba(238,17,23,.2)}.qr-showcase{text-align:center}.fake-qr{width:170px;height:170px;border-radius:18px;background-color:#fff;background-image:linear-gradient(90deg,#111 10px,transparent 10px),linear-gradient(#111 10px,transparent 10px),linear-gradient(90deg,transparent 18px,#111 18px 30px,transparent 30px),linear-gradient(transparent 18px,#111 18px 30px,transparent 30px);background-size:38px 38px,38px 38px,54px 54px,54px 54px;background-position:9px 9px,9px 9px,0 0,0 0;margin:0 auto;border:14px solid #fff;box-shadow:0 24px 80px rgba(0,0,0,.38)}.fake-qr.big{width:210px;height:210px;border-radius:8px;border-width:12px}.dark-section{background:radial-gradient(circle at 50% 0, rgba(238,17,23,.14), transparent 34%),#090000}.plans-grid{max-width:var(--max);margin:0 auto;display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:22px}.plan-card{position:relative;background:linear-gradient(180deg,rgba(255,255,255,.045),rgba(255,255,255,.018));border:2px solid rgba(131,180,189,.6);border-radius:25px;padding:46px;box-shadow:inset 0 0 60px rgba(238,17,23,.05),0 0 40px rgba(60,180,190,.09)}.plan-card.featured{border-color:rgba(73,228,199,.75)}.plan-icon{position:absolute;right:48px;top:48px;font-size:3.2rem}.new-badge{position:absolute;top:35px;right:40px;background:var(--red);border-radius:18px;padding:10px 20px;font-weight:950}.plan-card h3{font-size:2.3rem;margin:0 0 7px;letter-spacing:-.045em}.old-price{color:#776b6b;font-size:1.45rem;font-weight:950;text-decoration:line-through;margin:0}.price{color:var(--red);font-size:2.55rem;line-height:1.1;font-weight:1000;margin:8px 0 18px}.price small{display:block;font-size:.86rem;color:#b9adad;margin-bottom:4px}.badge{display:inline-block;padding:9px 16px;border-radius:999px;border:1px solid rgba(157,216,222,.55);font-size:.86rem;font-weight:950;margin-bottom:26px}.plan-desc{font-weight:800;color:#f1e1e1}.plan-card ul{padding:0;margin:22px 0 26px;list-style:none;display:grid;gap:12px}.plan-card li{font-size:1.08rem;font-weight:900;color:#f5eeee}.plan-card li.muted{color:#a49797}.refund-note{text-align:center;margin:32px auto 0;color:#f0dede;font-weight:850}.examples{background:#080000}.example-tabs{display:flex;justify-content:center;gap:12px;margin-bottom:26px}.tab{border:0;background:rgba(255,255,255,.08);color:white;border-radius:999px;padding:14px 22px;font-weight:950;cursor:pointer}.tab small{color:#bfb6b6}.tab.active{background:#2a2933;box-shadow:0 0 0 1px rgba(255,255,255,.15)}.phone-preview{width:260px;height:520px;border-radius:44px;background:#101010;border:10px solid #171717;box-shadow:0 28px 70px rgba(0,0,0,.55),0 0 0 3px rgba(255,255,255,.08);padding:18px;margin:0 auto;position:relative;overflow:hidden}.phone-notch{position:absolute;top:0;left:50%;transform:translateX(-50%);width:92px;height:27px;background:#050505;border-radius:0 0 18px 18px;z-index:2}.screen{height:100%;border-radius:29px;background:linear-gradient(180deg,#cf171b,#8f090e);padding:42px 16px 16px;text-align:center;overflow:hidden}.preview-photo{height:166px;border-radius:13px;margin-bottom:16px;background-size:cover;background-position:center}.screen h3{font-family:Georgia,serif;font-style:italic;font-size:1.7rem;margin:0 0 8px}.preview-message{font-size:.83rem;line-height:1.35;font-weight:700}.counter-grid{display:grid;grid-template-columns:repeat(2,1fr);gap:12px}.counter-grid div{background:rgba(238,17,23,.88);border-radius:12px;padding:14px 8px;text-align:center}.counter-grid b{display:block;font-size:1.34rem}.counter-grid span{font-weight:900;font-size:.78rem}.small-counter{margin-top:12px}.music-bar{position:absolute;bottom:18px;left:24px;right:24px;background:rgba(0,0,0,.72);border-radius:20px;padding:9px 12px;font-size:.78rem;text-align:left;font-weight:900}.music-bar span{float:right}.faq-list{max-width:900px;margin:0 auto 34px;display:grid;gap:14px}.faq-list details{background:rgba(255,255,255,.07);border:1px solid rgba(255,255,255,.14);border-radius:12px;padding:22px}.faq-list summary{cursor:pointer;font-size:1.14rem;font-weight:950;list-style:none;display:flex;justify-content:space-between}.faq-list summary:after{content:"+";color:var(--red);font-size:1.5rem}.faq-list details[open] summary:after{content:"−"}.faq-list p{color:#d5c9c9;line-height:1.5;font-weight:650}.testimonial-track{display:flex;gap:22px;overflow:hidden;max-width:100vw}.testimonial-track article{min-width:330px;background:linear-gradient(180deg,#242427,#171719);border:1px solid rgba(255,255,255,.11);border-radius:18px;padding:28px;color:#eee;font-weight:700;line-height:1.5}.testimonial-track strong{display:block;margin-top:22px}.site-footer{background:#050000;padding:90px max(24px,calc((100vw - var(--max))/2));display:grid;grid-template-columns:1.2fr 1fr 1fr;gap:80px;color:white}.footer-heart{font-size:2.7rem;color:var(--red)}.site-footer h3{font-size:1.6rem}.site-footer p{color:#e1d4d4;font-weight:700;line-height:1.42}.pay-logos{display:flex;gap:14px;align-items:center}.pay-logos span{font-weight:950;font-size:1.3rem;background:rgba(255,255,255,.08);border-radius:8px;padding:9px 12px}.sr-only{position:absolute!important;width:1px!important;height:1px!important;padding:0!important;margin:-1px!important;overflow:hidden!important;clip:rect(0,0,0,0)!important;white-space:nowrap!important;border:0!important}.whatsapp-float{position:fixed;right:26px;bottom:34px;width:68px;height:68px;border-radius:50%;z-index:49;display:grid;place-items:center;box-shadow:0 18px 44px rgba(0,0,0,.38);transition:transform .2s ease, box-shadow .2s ease;background:transparent}.whatsapp-float:hover{transform:translateY(-2px) scale(1.02);box-shadow:0 24px 54px rgba(0,0,0,.45)}.whatsapp-float svg{width:100%;height:100%;display:block}.cookie-bar{position:fixed;left:50%;bottom:22px;transform:translateX(-50%);width:min(820px,calc(100% - 28px));background:#1d1d1e;border:1px solid rgba(255,255,255,.08);border-radius:13px;display:flex;gap:20px;align-items:center;padding:16px 22px;z-index:60;box-shadow:0 20px 70px rgba(0,0,0,.45)}.cookie-bar p{margin:0;flex:1;color:#eee;font-weight:750}.draft-modal{position:fixed;inset:0;background:rgba(0,0,0,.58);backdrop-filter:blur(8px);display:none;align-items:center;justify-content:center;z-index:80;padding:20px}.draft-modal.show{display:flex}.modal-card{width:min(390px,100%);background:#1c1c1f;border:1px solid rgba(255,255,255,.14);border-radius:18px;padding:26px;text-align:center;position:relative;box-shadow:0 26px 80px rgba(0,0,0,.55)}.modal-close{position:absolute;right:16px;top:12px;background:transparent;border:0;font-size:1.5rem;color:#999;cursor:pointer}.modal-icon{width:58px;height:58px;background:rgba(238,17,23,.18);border-radius:50%;display:grid;place-items:center;margin:0 auto 16px;color:var(--red);font-size:1.6rem}.modal-card h2{line-height:1.1}.modal-card p{color:#bebebe;font-weight:650}.modal-card .btn{margin-top:10px}
/* Editor */
.editor-body,.checkout-body{min-height:100vh}.editor-shell,.checkout-shell{max-width:var(--max);margin:44px auto 0;padding:30px 24px 90px;display:grid;grid-template-columns:minmax(0,1fr) 360px;gap:28px;align-items:start}.wizard-card,.checkout-card,.live-preview,.checkout-preview{background:rgba(18,15,15,.86);border:1px solid rgba(255,255,255,.12);border-radius:24px;padding:28px;box-shadow:0 24px 80px rgba(0,0,0,.35)}.wizard-card h1,.checkout-card h1{font-size:2.4rem;letter-spacing:-.05em;margin:.3rem 0 1rem}.progress-line,.checkout-steps{display:flex;align-items:center;gap:12px;margin-bottom:26px}.progress-line span,.checkout-steps span{width:22px;height:22px;border:2px solid var(--red);border-radius:50%;display:block}.progress-line span.done,.checkout-steps span{background:var(--red);color:white;display:grid;place-items:center;font-size:.8rem;font-weight:900}.checkout-steps i{height:3px;width:72px;background:#ddd;opacity:.8}.step{display:none}.step.active{display:block;animation:fadeUp .3s ease}.choice-grid{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:14px}.choice-card{padding:22px;border:1px solid rgba(255,255,255,.13);border-radius:18px;background:rgba(255,255,255,.045);cursor:pointer;display:grid;gap:10px;position:relative}.choice-card input,.theme-choice input{position:absolute;opacity:0}.choice-card:has(input:checked),.theme-choice:has(input:checked){border-color:var(--red);box-shadow:0 0 0 2px rgba(238,17,23,.15),0 0 32px rgba(238,17,23,.12)}.choice-card span{font-size:2.1rem}.choice-card strong{font-size:1.1rem}.choice-card small{color:var(--red);font-weight:950}.form-grid{display:grid;grid-template-columns:1fr 1fr;gap:16px}label{display:grid;gap:8px;font-weight:900;color:#eee}input,textarea{width:100%;background:#0f0f10;border:1px solid rgba(255,255,255,.15);border-radius:13px;padding:14px 15px;outline:none}input:focus,textarea:focus{border-color:var(--red);box-shadow:0 0 0 3px rgba(238,17,23,.12)}textarea{resize:vertical}.helper{color:#b6abab;font-weight:650;font-size:.9rem}.upload-preview{display:flex;gap:10px;flex-wrap:wrap;margin-top:14px}.upload-preview img{width:72px;height:72px;object-fit:cover;border-radius:12px;border:1px solid rgba(255,255,255,.14)}.themes{grid-template-columns:repeat(4,1fr)}.theme-choice{height:110px;border-radius:18px;padding:12px;border:1px solid rgba(255,255,255,.13);display:flex;align-items:end;font-weight:950;cursor:pointer}.theme-choice.red{background:linear-gradient(135deg,#7b080d,#e91419)}.theme-choice.gold{background:linear-gradient(135deg,#17110a,#b58334)}.theme-choice.pink{background:linear-gradient(135deg,#55173e,#ff62a3)}.theme-choice.blue{background:linear-gradient(135deg,#0d1f3d,#2d8cff)}.switch-row{display:flex;grid-template-columns:auto 1fr;gap:10px;align-items:center;margin-top:22px}.switch-row input{width:auto}.summary-box{background:rgba(255,255,255,.055);border:1px solid rgba(255,255,255,.12);border-radius:18px;padding:18px;color:#eee;line-height:1.6}.wizard-actions{display:flex;justify-content:space-between;gap:12px;margin-top:28px}.live-preview{position:sticky;top:110px;text-align:center}.live-preview h2,.checkout-preview h2{margin-top:0}.editor-phone{width:230px;height:470px}.editor-phone .screen{padding-top:39px}.editor-phone .preview-photo{height:135px}.autosave{color:#6ee2b5;font-weight:900}.checkout-card hr{border:0;border-top:1px solid rgba(255,255,255,.14);margin:24px 0}.payment-tabs{background:#1a2634;border-radius:10px;padding:4px;display:grid;grid-template-columns:1fr 1fr;margin-bottom:20px}.payment-tabs button{border:0;background:transparent;color:white;padding:12px;font-weight:950;border-radius:8px}.payment-tabs button.active{background:var(--red)}.pix-box{text-align:center}.timer{background:#242124;border-radius:8px 8px 0 0;padding:10px;font-size:.9rem;display:inline-block}.pix-box p{color:#ddd}.pix-box textarea{height:78px;font-size:.82rem;margin:10px 0}.checkout-actions{display:flex;justify-content:space-between;gap:12px;margin-top:20px}.checkout-preview{position:sticky;top:110px;text-align:center}
/* Gift */
.addon-card{display:flex!important;align-items:center;gap:14px;background:rgba(255,255,255,.055);border:1px solid rgba(255,255,255,.15);border-radius:15px;padding:16px;cursor:pointer}.addon-card input{width:20px;height:20px;accent-color:var(--red);flex:none}.addon-card strong{display:block;color:#fff}.addon-card small{display:block;color:#ffb4b8;font-weight:850;margin-top:4px}.music-fields{margin-top:16px}.checkout-addon{color:#ffb4b8;font-weight:900;margin-top:-6px}
.gift-body{min-height:100vh;background:radial-gradient(circle at 50% 5%,rgba(238,17,23,.18),transparent 35%),#070000}.gift-cover{min-height:100vh;display:grid;place-items:center;padding:24px}.gift-cover-card{width:min(390px,100%);min-height:540px;border-radius:28px;background:linear-gradient(180deg,#241c13,#0d0b08);border:1px solid rgba(246,203,128,.22);box-shadow:0 30px 100px rgba(0,0,0,.6);display:flex;flex-direction:column;align-items:center;justify-content:center;text-align:center;padding:36px;position:relative;overflow:hidden}.gift-cover-card:before,.gift-cover-card:after{content:"";position:absolute;left:50%;width:1px;height:110px;background:linear-gradient(transparent,#a67a39,transparent)}.gift-cover-card:before{top:0}.gift-cover-card:after{bottom:0}.gift-cover-card p{color:#d6b16f;font-family:Georgia,serif;font-style:italic}.gift-cover-card h1{font-family:Georgia,serif;font-weight:400;line-height:1.15;margin:24px 0 34px}.gift-page{padding:30px 16px 80px;max-width:560px;margin:0 auto}.gift-card{background:linear-gradient(180deg,#bd171b,#85080b);border:10px solid #121212;border-radius:34px;min-height:90vh;padding:28px 18px;text-align:center;box-shadow:0 30px 90px rgba(0,0,0,.55)}.gift-photo{height:330px;border-radius:18px;background:linear-gradient(135deg,#6b0b10,#e22b31);background-size:cover;background-position:center;margin-bottom:24px}.gift-card h1{font-family:Georgia,serif;font-style:italic;font-size:2.4rem;margin:0}.gift-subtitle{font-weight:950}.letter{background:rgba(255,255,255,.11);border-radius:18px;padding:20px;line-height:1.55;font-weight:700;white-space:pre-wrap}.gift-card h2{font-family:Georgia,serif;font-style:italic}.music-link{display:inline-flex;margin:24px 0;padding:12px 18px;background:rgba(0,0,0,.28);border-radius:999px;font-weight:950}.made-by{opacity:.75;font-weight:900}.hearts-layer{position:fixed;inset:0;pointer-events:none;overflow:hidden;z-index:1}.heart{position:absolute;color:#ff6b75;animation:floatHeart linear forwards;font-size:22px;opacity:.86}@keyframes floatHeart{from{transform:translateY(110vh) rotate(0deg);opacity:0}10%{opacity:.86}to{transform:translateY(-20vh) rotate(360deg);opacity:0}}.reveal{opacity:0;transform:translateY(22px);animation:fadeUp .7s ease forwards}.delay-1{animation-delay:.16s}.delay-2{animation-delay:.3s}@keyframes fadeUp{to{opacity:1;transform:none}}
@media (max-width:950px){.site-header{top:14px;height:60px}.desktop-nav{display:none}.header-cta{display:block}.hero{grid-template-columns:1fr;min-height:auto;padding-top:110px}.hero-visual{min-height:450px}.metric-grid{grid-template-columns:1fr}.how-grid,.editor-shell,.checkout-shell{grid-template-columns:1fr}.plans-grid{grid-template-columns:1fr}.site-footer{grid-template-columns:1fr;gap:34px}.live-preview,.checkout-preview{position:relative;top:auto}.form-grid{grid-template-columns:1fr}.themes{grid-template-columns:repeat(2,1fr)}.cookie-bar{align-items:flex-start}.cookie-bar p{font-size:.86rem}.rotate-left{transform:translateX(-80px) rotateY(15deg) rotateZ(-7deg) scale(.83)}.rotate-right{transform:translateX(88px) rotateY(-15deg) rotateZ(8deg) scale(.83)}.main-card{transform:translateY(15px) scale(.92)}.mini-card{width:230px;height:400px}.checkout-steps i{width:34px}}
@media (max-width:560px){.site-header{padding:0 16px}.brand{font-size:.95rem}.hero h1{font-size:3.35rem}.hero-actions .btn,.hero-actions .text-link{width:100%;justify-content:center}.trust-row{font-size:.9rem}.section-pad{padding:70px 16px}.plan-card{padding:32px 24px}.plan-icon{right:28px;top:32px}.choice-grid{grid-template-columns:1fr}.wizard-actions,.checkout-actions{flex-direction:column}.btn{width:100%}.cookie-bar{bottom:10px;padding:13px;gap:11px}.cookie-bar span{display:none}.cookie-bar .btn{width:auto}.whatsapp-float{right:15px;bottom:92px;width:54px;height:54px}.gift-photo{height:250px}}

/* =========================
   MimoQR advanced creator
   ========================= */
.creator-pro-body{background:#120001;color:#fff;min-height:100vh}.creator-header{display:none}.creator-pro-shell{min-height:100vh;display:grid;grid-template-columns:minmax(520px,1fr) 430px;gap:70px;align-items:start;padding:86px 70px 90px;background:linear-gradient(180deg,#140102 0%,#0b0000 100%)}.creator-panel{max-width:880px}.pro-progress{display:flex;align-items:center;gap:13px;margin:0 0 34px}.pro-progress span{width:30px;height:30px;border:3px solid #ef1117;border-radius:50%;display:grid;place-items:center;background:#120001;position:relative;flex:none}.pro-progress span.done{background:#130204}.pro-progress span.done:after{content:'✓';font-weight:1000;color:#ef1117;font-size:14px}.pro-progress span.active{box-shadow:0 0 0 4px rgba(239,17,23,.08)}.pro-progress i{height:4px;width:74px;background:#e5e1e6;border-radius:8px;opacity:.95}.pro-progress i.done{background:#e5e1e6}.pro-step{display:none}.pro-step.active{display:block;animation:fadeUp .28s ease}.pro-step h1{font-size:2rem;line-height:1.1;margin:0 0 14px;letter-spacing:-.04em}.pro-step p{font-size:1.07rem;line-height:1.45;font-weight:750;max-width:850px}.pro-plan-grid{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:18px;margin-top:22px}.pro-plan-card{position:relative;min-height:190px;padding:28px;border:2px solid rgba(69,188,207,.7);border-radius:24px;background:linear-gradient(180deg,#121010,#080707);display:flex;flex-direction:column;justify-content:center;gap:7px;cursor:pointer}.pro-plan-card input{position:absolute;opacity:0}.pro-plan-card:has(input:checked){border-color:#ef1117;box-shadow:0 0 0 2px rgba(239,17,23,.18),0 0 34px rgba(239,17,23,.17)}.pro-plan-card .plan-emoji{position:absolute;right:28px;top:28px;font-size:2.5rem}.pro-plan-card strong{font-size:1.65rem;letter-spacing:-.04em}.pro-plan-card small{font-weight:1000;color:#ef1117;font-size:1.3rem}.pro-plan-card em{font-style:normal;color:#d8cccc;font-weight:800}.pro-form-grid{display:grid;grid-template-columns:1fr 1fr;gap:20px;max-width:760px}.pro-form-grid .span-2{grid-column:1/-1}.pro-form-grid label,.pro-step label{font-weight:900}.pro-step textarea,.pro-step input{background:#252525;border:1px solid rgba(255,255,255,.18);font-weight:800}.pro-step textarea{max-width:860px;min-height:210px}.pro-actions-inline{margin-top:14px}.counter-label{max-width:270px;margin:26px 0}.calendar-widget{width:360px;max-width:100%;margin-top:24px}.calendar-head{display:flex;align-items:center;justify-content:space-between;margin-bottom:16px}.calendar-head strong{font-size:1.45rem}.calendar-head button{background:transparent;border:0;color:#ef1117;font-size:2rem;font-weight:900;cursor:pointer;padding:0 12px}.calendar-week,.calendar-days{display:grid;grid-template-columns:repeat(7,1fr);gap:10px;text-align:center}.calendar-week span{color:#aaa;font-weight:900}.calendar-days span{min-height:34px}.calendar-days button{height:36px;background:transparent;border:2px solid transparent;color:white;border-radius:50%;font-weight:950;cursor:pointer}.calendar-days button:hover,.calendar-days button.selected{border-color:#ef1117;color:white}.selected-date{display:block;margin:16px 0;color:#fff}.check-line{display:flex!important;grid-template-columns:auto 1fr;gap:10px;align-items:center;margin-top:20px}.check-line input{width:auto;accent-color:#ef1117}.upload-button{display:inline-flex!important;align-items:center;justify-content:center;background:#ef1117;border-radius:10px;padding:17px 28px;width:auto;cursor:pointer;margin:8px 0 28px}.upload-button input{display:none}.photo-strip{display:flex;gap:20px;flex-wrap:wrap}.photo-strip div{position:relative}.photo-strip img{width:150px;height:150px;object-fit:cover;border-radius:12px}.photo-strip button{position:absolute;right:-10px;top:-10px;width:28px;height:28px;border:0;border-radius:50%;background:#ef1117;color:#fff;font-weight:900}.music-search{max-width:460px;margin:8px 0 12px}.music-results{width:min(850px,100%);background:#1d1d1d;border-radius:9px;padding:8px}.music-results.disabled{opacity:.72}.music-help{padding:16px;margin:0;color:#bbb}.music-result{display:grid;grid-template-columns:64px 1fr auto;gap:18px;align-items:center;padding:13px;border-radius:8px}.music-result + .music-result{border-top:1px solid rgba(255,255,255,.05)}.music-result strong{font-size:.96rem}.music-result button{background:#ef1117;color:white;border:0;border-radius:8px;padding:16px 22px;font-weight:1000;cursor:pointer}.music-cover{width:56px;height:42px;border-radius:3px;background:linear-gradient(135deg,#1b1832,#8b2d2d,#e5b95c)}.cover-1{background:linear-gradient(135deg,#50321d,#fff1c6,#271815)}.cover-2{background:linear-gradient(135deg,#061e38,#01a9c5,#fafafa)}.cover-3{background:linear-gradient(135deg,#522,#e9d1d1,#333)}.cover-4{background:linear-gradient(135deg,#142d2f,#44a,#121212)}.music-result.selected{background:#191919}.music-offset{max-width:360px}.palette-grid{display:grid;grid-template-columns:repeat(2,minmax(220px,1fr));gap:14px;max-width:860px;margin-top:22px}.palette-card{position:relative;min-height:90px;padding:18px;border:2px solid rgba(255,255,255,.22);border-radius:14px;background:#16110f;cursor:pointer}.palette-card input{position:absolute;opacity:0}.palette-card:has(input:checked){border-color:#ef1117;box-shadow:0 0 0 1px #ef1117}.palette-card:has(input:checked):before{content:'✓';position:absolute;left:-10px;top:50%;transform:translateY(-50%);width:28px;height:28px;background:#ef1117;border-radius:50%;display:grid;place-items:center}.palette-card span{display:flex;gap:9px;margin-bottom:12px}.palette-card i{width:28px;height:28px;border-radius:50%;background:#ddd}.palette-card strong{font-weight:1000}.palette-card.gold strong{color:#e2bb75}.palette-card.ruby{background:#21020c}.palette-card.ruby strong{color:#ff7aa0}.palette-card.sapphire{background:#07172d}.palette-card.sapphire strong{color:#82b8ff}.palette-card.rose{background:#350817}.palette-card.rose strong{color:#e8a0b8}.palette-card.emerald{background:#061e16}.palette-card.emerald strong{color:#62d9b0}.palette-card.noir{background:#050504}.palette-card.noir strong{color:#e6c58c}.palette-card.gold i:nth-child(1){background:#c49b58}.palette-card.gold i:nth-child(2){background:#fffdf8}.palette-card.gold i:nth-child(3){background:#e8d4ad}.palette-card.ruby i:nth-child(1){background:#a83246}.palette-card.ruby i:nth-child(2){background:#fff}.palette-card.ruby i:nth-child(3){background:#e6bdc8}.palette-card.sapphire i:nth-child(1){background:#42699e}.palette-card.sapphire i:nth-child(2){background:#f5fbff}.palette-card.sapphire i:nth-child(3){background:#b7cadb}.palette-card.rose i:nth-child(1){background:#bc7c8d}.palette-card.rose i:nth-child(2){background:#fff}.palette-card.rose i:nth-child(3){background:#e3beca}.palette-card.emerald i:nth-child(1){background:#367f68}.palette-card.emerald i:nth-child(2){background:#f3fffb}.palette-card.emerald i:nth-child(3){background:#b7d7cb}.palette-card.noir i:nth-child(1){background:#d8b574}.palette-card.noir i:nth-child(2){background:#14110d;border:1px solid #6e604c}.palette-card.noir i:nth-child(3){background:#4a4338}.extra-film,.extra-birthday{display:none}.creator-pro-body[data-plan="filme"] .extra-film,.creator-pro-body[data-plan="aniversario"] .extra-birthday,.creator-pro-body:not([data-plan="filme"]):not([data-plan="aniversario"]) .extra-default{display:grid!important}.creator-pro-body[data-plan="filme"] .extra-default,.creator-pro-body[data-plan="aniversario"] .extra-default{display:none!important}.movie-only{display:none}.creator-pro-body[data-plan="filme"] .movie-only{display:grid}.summary-total{color:#ef1117;font-size:1.25rem;font-weight:1000}.pro-nav-actions{margin-top:38px;max-width:860px}.pro-nav-actions .btn{min-width:140px}.phone-live{position:sticky;top:70px;display:grid;justify-content:center}.pro-phone{width:330px;height:650px;border:8px solid #353535;border-radius:50px;background:#070707;padding:14px;box-shadow:0 30px 80px rgba(0,0,0,.55);position:relative;overflow:hidden}.pro-phone .phone-notch{top:0;width:120px;height:30px}.pro-screen{height:100%;border-radius:36px;overflow:hidden;position:relative;background:#fff}.elegant-screen{min-height:100%;background:linear-gradient(180deg,#fffdf7,#fff8ee);color:#0b0b0b;text-align:center;padding:42px 28px 32px;overflow:auto}.ornament,.small-ornament{display:flex;gap:14px;align-items:center;justify-content:center;color:#b78c50;font-family:Georgia,serif;font-style:italic;font-size:.83rem;letter-spacing:.06em}.ornament span,.small-ornament span{height:1px;background:#e6d1ad;width:55px}.small-ornament{margin:18px 0}.small-ornament i{width:6px;height:6px;background:#b78c50;transform:rotate(45deg)}.photo-card{width:150px;height:210px;border-radius:5px;margin:55px auto 54px;background:linear-gradient(135deg,#1b1832,#80314a 48%,#f1c475);background-size:cover;background-position:center;box-shadow:0 24px 34px rgba(0,0,0,.2)}.dots{display:flex;justify-content:center;gap:7px;margin:0 0 28px}.dots i{width:7px;height:7px;background:#dfd4c8;border-radius:50%}.dots b{width:22px;height:6px;background:#c29b5f;border-radius:9px}.elegant-screen h2{font-family:"Brush Script MT","Segoe Script",cursive;font-size:2.45rem;font-weight:400;margin:8px 0 4px}.date-line{font-family:Georgia,serif;font-size:.72rem;letter-spacing:.22em;color:#b38b56}.elegant-screen article{font-family:Georgia,serif;font-style:italic;color:#856a4e;margin:26px 0;line-height:1.5}.section-label{text-transform:uppercase;letter-spacing:.34em;color:#a8754b;font-size:.76rem;margin:30px 0 16px}.music-card{display:grid;grid-template-columns:46px 1fr 52px;gap:12px;align-items:center;text-align:left;background:#fffaf2;border:1px solid #ead8bb;border-radius:4px;padding:15px;box-shadow:0 14px 26px rgba(141,97,44,.12)}.music-thumb{width:46px;height:46px;background:linear-gradient(135deg,#111,#e0b25b);border-radius:3px}.music-card strong{display:block;font-family:Georgia,serif;white-space:nowrap;overflow:hidden;text-overflow:ellipsis;max-width:130px}.music-card small{color:#8f7d6c}.music-card button{width:48px;height:48px;border:0;border-radius:50%;background:#e5c48a;font-weight:1000;font-size:1.2rem}.elegant-count{display:grid;grid-template-columns:repeat(3,1fr);row-gap:10px;column-gap:14px}.elegant-count b{font-family:Georgia,serif;font-size:1.05rem}.elegant-count span{text-transform:uppercase;color:#b6824b;font-size:.62rem;letter-spacing:.16em}.elegant-screen footer{border-top:1px solid #eadcc5;margin-top:28px;padding-top:28px;color:#b99260;font-family:Georgia,serif;font-style:italic}.theme-emerald .elegant-screen{background:linear-gradient(180deg,#fafffc,#f2fff9)}.theme-emerald .date-line,.theme-emerald .section-label,.theme-emerald .elegant-count span{color:#357e65}.theme-emerald .dots b,.theme-emerald .small-ornament i{background:#357e65}.theme-sapphire .elegant-screen{background:linear-gradient(180deg,#f8fbff,#eef6ff)}.theme-ruby .elegant-screen{background:linear-gradient(180deg,#fff9fb,#fff0f4)}.theme-rose .elegant-screen{background:linear-gradient(180deg,#fff7f8,#fff1f5)}.theme-noir .elegant-screen{background:linear-gradient(180deg,#121212,#050505);color:#f4eee3}.theme-noir .music-card{background:#171717;color:#fff;border-color:#5b4a35}.theme-noir .elegant-screen article{color:#e7d2b0}.movie-screen{height:100%;overflow:auto;background:#050505;color:#fff;padding:44px 28px 85px;text-align:left}.movie-screen h2{font-family:Impact, Haettenschweiler, 'Arial Narrow Bold', sans-serif;font-size:3.2rem;line-height:.93;white-space:pre-line;margin:0 0 16px;text-transform:capitalize}.movie-screen em{display:block;color:#ef1117;font-size:1rem;margin-bottom:26px}.movie-screen p{font-weight:850;line-height:1.55;color:#dfdfdf}.watch-btn{background:#fff;color:#000;border:0;border-radius:7px;padding:14px 26px;font-weight:1000;margin:16px 0}.movie-date{background:#41080b;border:1px solid #b41a22;color:#fff;border-radius:7px;padding:13px 14px;font-weight:950;margin:10px 0 28px}.scenes-label{text-transform:uppercase;letter-spacing:.12em;color:#aaa}.scene-row{display:flex;gap:9px;margin:12px 0 20px;overflow:hidden}.scene-row div{width:84px;height:54px;border-radius:5px;background:linear-gradient(135deg,#1b1832,#80314a,#f1c475);background-size:cover;background-position:center;flex:none}.scene-row div:nth-child(2){background:linear-gradient(135deg,#2a0000,#111,#e10000)}.scene-row div:nth-child(3){background:#f7f7f7}.movie-player{position:absolute;left:22px;right:22px;bottom:15px;display:grid;grid-template-columns:42px 1fr 34px;gap:10px;align-items:center;background:#050505;border-top:1px solid rgba(255,255,255,.08);padding-top:12px}.movie-player div{width:42px;height:28px;background:linear-gradient(135deg,#1b1832,#e2b96e);border-radius:3px}.movie-player strong{font-size:.8rem;white-space:nowrap;overflow:hidden;text-overflow:ellipsis}.movie-player button{width:34px;height:34px;border-radius:50%;background:transparent;color:#fff;border:2px solid #fff}.birthday-screen{height:100%;background:#c6191b;color:#fff;text-align:center;padding:54px 18px 80px;overflow:auto}.birthday-photo{height:270px;border-radius:10px;background:linear-gradient(135deg,#1b1832,#80314a,#f1c475);background-size:cover;background-position:center;margin-bottom:24px}.birthday-screen h2{font-family:"Brush Script MT","Segoe Script",cursive;font-size:3rem;line-height:1.05;font-weight:400;margin:10px 0}.birthday-screen p{font-family:Georgia,serif;line-height:1.45;color:#ffecec}.phone-aniversario .pro-screen{background:#c6191b}.phone-filme .pro-screen{background:#050505}.phone-filme{border-color:#333}.phone-aniversario{border-color:#333}
@media (max-width:1100px){.creator-pro-shell{grid-template-columns:1fr;gap:34px;padding:84px 22px}.phone-live{position:relative;top:auto;order:-1}.creator-panel{max-width:none}.pro-progress{overflow-x:auto}.pro-progress i{width:52px}.pro-phone{width:300px;height:590px}.pro-plan-grid,.palette-grid{grid-template-columns:1fr}.pro-form-grid{grid-template-columns:1fr}.pro-form-grid .span-2{grid-column:auto}}@media (max-width:560px){.creator-pro-shell{padding:76px 12px}.pro-progress{gap:8px}.pro-progress span{width:26px;height:26px}.pro-progress i{width:34px}.pro-step h1{font-size:1.55rem}.music-result{grid-template-columns:48px 1fr;}.music-result button{grid-column:1/-1}.phone-live{display:none}.pro-nav-actions{flex-direction:row}.pro-nav-actions .btn{min-width:0;width:auto}.photo-strip img{width:115px;height:115px}}
.checkout-pro-body{background:#110000;color:#fff;min-height:100vh}.checkout-pro-shell{min-height:100vh;display:grid;grid-template-columns:minmax(560px,1fr) 430px;gap:80px;align-items:center;padding:80px 70px}.checkout-pro-panel{max-width:880px}.checkout-pro-panel h1{font-size:2rem;margin:0 0 14px}.checkout-pro-panel p{font-weight:850}.checkout-pro-panel strong{color:#ef1117}.checkout-pro-panel hr{border:0;border-top:1px solid rgba(255,255,255,.7);margin:20px 0}.pro-payment-tabs{max-width:390px}.pro-pix-box{text-align:center;max-width:800px}.realistic-qr{width:190px;height:190px;background:#fff;margin:28px auto 16px;background-image:linear-gradient(90deg,#000 8px,transparent 8px),linear-gradient(#000 8px,transparent 8px),linear-gradient(90deg,transparent 15px,#000 15px 26px,transparent 26px),linear-gradient(transparent 15px,#000 15px 26px,transparent 26px);background-size:30px 30px,30px 30px,43px 43px,43px 43px;border:12px solid #fff;box-shadow:0 0 0 1px #111}.pro-pix-box .timer{background:#242424;border-radius:4px 4px 0 0;padding:8px 12px;display:inline-block}.pro-pix-box textarea{height:70px;background:#252525;max-width:800px}.pro-checkout-actions{margin-top:28px}.checkout-pro-preview{display:grid;justify-content:center}@media(max-width:1050px){.checkout-pro-shell{grid-template-columns:1fr;padding:70px 18px}.checkout-pro-preview{order:-1}.checkout-progress{overflow-x:auto}}@media(max-width:560px){.checkout-pro-preview{display:none}.checkout-pro-shell{padding:50px 12px}.pro-checkout-actions{flex-direction:column}}
.gift-pro-body{background:#080000;color:#fff;min-height:100vh}.gift-pro-page{min-height:100vh;padding:24px 14px 70px;display:grid;place-items:start center}.published-elegant{width:min(430px,100%);background:linear-gradient(180deg,#fffdf7,#fff8ee);color:#0d0b0b;border-radius:28px;padding:38px 28px;text-align:center;box-shadow:0 24px 80px rgba(0,0,0,.55)}.published-photo{width:190px;height:280px;border-radius:6px;margin:44px auto;background:linear-gradient(135deg,#1b1832,#80314a,#f1c475);background-size:cover;background-position:center;box-shadow:0 24px 34px rgba(0,0,0,.18)}.published-elegant h1{font-family:"Brush Script MT","Segoe Script",cursive;font-size:3rem;font-weight:400;margin:8px 0 2px}.letter-text{background:rgba(185,139,78,.08);border-radius:14px;padding:16px;font-family:Georgia,serif;font-style:italic;color:#806344;line-height:1.55;white-space:pre-wrap}.published-music{max-width:320px;margin:0 auto}.share-final{margin-top:28px}.published-movie{width:min(430px,100%);min-height:720px;background:#050505;border-radius:26px;padding:48px 30px 100px;position:relative;box-shadow:0 24px 80px rgba(0,0,0,.55)}.published-movie h1{font-family:Impact, Haettenschweiler, 'Arial Narrow Bold', sans-serif;text-transform:capitalize;font-size:4.2rem;line-height:.92;margin:0 0 16px}.published-movie em{color:#ef1117;display:block;margin-bottom:28px}.published-movie p{font-weight:850;line-height:1.55;color:#e2e2e2}.published-scenes div{width:110px;height:70px}.published-player{position:absolute}.published-birthday{width:min(430px,100%);min-height:720px;background:#c6191b;border-radius:26px;padding:48px 22px 100px;text-align:center;position:relative;box-shadow:0 24px 80px rgba(0,0,0,.55)}.published-birthday h1{font-family:"Brush Script MT","Segoe Script",cursive;font-size:3.8rem;font-weight:400}.published-birthday p{font-family:Georgia,serif;line-height:1.55}.theme-noir .published-elegant{background:linear-gradient(180deg,#121212,#060606);color:#f4eee3}.theme-noir .letter-text{color:#e7d2b0}.theme-emerald .published-elegant{background:linear-gradient(180deg,#fbfffd,#f2fff9)}.theme-sapphire .published-elegant{background:linear-gradient(180deg,#f8fbff,#eef6ff)}.theme-ruby .published-elegant{background:linear-gradient(180deg,#fff9fb,#fff0f4)}.theme-rose .published-elegant{background:linear-gradient(180deg,#fff7f8,#fff1f5)}


/* ===== Ajustes 2026-07: fluxo aniversário e preview ===== */
.creator-pro-body[data-plan="aniversario"] .counter-label{display:none!important}
.creator-pro-body[data-plan="aniversario"] .final-fields{display:none!important}
.effect-card{display:flex!important;align-items:center;gap:18px;width:min(850px,100%);margin-top:24px;padding:18px 20px;border:2px solid rgba(255,76,164,.88);border-radius:14px;background:rgba(255,76,164,.12);cursor:pointer;position:relative}
.effect-card input{position:absolute;opacity:0;width:1px;height:1px}.effect-icon{width:58px;height:58px;display:grid;place-items:center;border-radius:10px;background:rgba(255,76,164,.18);font-size:1.8rem;flex:none}.effect-card strong{display:block;font-size:1.05rem}.effect-card small{display:block;color:#dbcfd7;font-weight:800;margin-top:4px}.effect-card b{margin-left:auto;width:30px;height:30px;border-radius:50%;display:grid;place-items:center;background:#ff4ca4;color:#fff}.effect-card:has(input:not(:checked)){border-color:rgba(255,255,255,.18);background:rgba(255,255,255,.05)}.effect-card:has(input:not(:checked)) b{display:none}
.birthday-screen{padding-bottom:128px;scrollbar-width:thin;scrollbar-color:rgba(255,255,255,.42) transparent}.birthday-photo{height:250px}.birthday-screen h2{font-size:2.85rem}.birthday-message{font-family:Inter,ui-sans-serif,system-ui,-apple-system,BlinkMacSystemFont,"Segoe UI",sans-serif!important;font-style:normal!important;font-weight:950!important;font-size:.98rem;line-height:1.32!important;color:#fff!important;max-width:255px;margin:12px auto 10px;white-space:pre-wrap;overflow-wrap:anywhere}.birthday-date{display:inline-block;margin:8px auto 18px;color:#ffd6d6;font-weight:900}.birthday-player{background:#050505!important;border-top:1px solid rgba(255,255,255,.1);padding-top:10px}.birthday-player strong{font-size:.72rem;max-width:170px;text-transform:uppercase}.birthday-player div{background-size:cover;background-position:center}.creator-pro-body[data-plan="aniversario"] .pro-step h1{color:#ff4ca4}.creator-pro-body[data-plan="aniversario"] .pro-progress span.done:after,.creator-pro-body[data-plan="aniversario"] .pro-progress span.active{color:#ef1117}.creator-pro-body[data-plan="aniversario"] .pro-step textarea{min-height:220px}.creator-pro-body[data-plan="aniversario"] .phone-live{top:54px}.creator-pro-body[data-plan="aniversario"] .pro-phone{width:330px;height:650px}
@media(max-width:1100px){.birthday-photo{height:235px}.birthday-message{max-width:235px;font-size:.93rem}.creator-pro-body[data-plan="aniversario"] .pro-phone{width:300px;height:590px}}

/* Página final aniversário */
.published-birthday{padding-bottom:128px}.published-birthday .birthday-photo{height:280px}.published-birthday .final-birthday-message{max-width:330px;font-size:1.05rem;margin:16px auto;color:#fff!important;font-family:Inter,ui-sans-serif,system-ui,-apple-system,BlinkMacSystemFont,"Segoe UI",sans-serif!important;font-weight:950!important;line-height:1.38!important;white-space:pre-wrap;overflow-wrap:anywhere}.published-birthday .published-player{position:absolute;left:22px;right:22px;bottom:18px}


/* Depoimentos em movimento */
.demo-note{
  color:#b8b0b0;
  font-size:.95rem;
  font-weight:800;
  margin-top:-8px;
}
.testimonial-marquee{
  position:relative;
  width:100%;
  overflow:hidden;
  padding:4px 0 22px;
  -webkit-mask-image:linear-gradient(90deg,transparent 0,#000 10%,#000 90%,transparent 100%);
  mask-image:linear-gradient(90deg,transparent 0,#000 10%,#000 90%,transparent 100%);
}
.testimonial-row{
  display:flex;
  gap:22px;
  width:max-content;
  will-change:transform;
}
.marquee-left-to-right{
  animation:mimoTestimonialsLTR 42s linear infinite;
}
.testimonial-marquee:hover .marquee-left-to-right{
  animation-play-state:paused;
}
.testimonial-row article{
  width:430px;
  min-height:178px;
  flex:0 0 auto;
  background:linear-gradient(180deg,#242427,#171719);
  border:1px solid rgba(255,255,255,.11);
  border-radius:18px;
  padding:28px 30px;
  color:#eee;
  box-shadow:0 20px 55px rgba(0,0,0,.28);
}
.testimonial-row p{
  margin:0 0 22px;
  font-weight:800;
  line-height:1.55;
  color:#f2eeee;
}
.testimonial-row strong{
  display:block;
  margin-bottom:4px;
  color:#fff;
}
.testimonial-row small{
  display:block;
  color:#ff8b96;
  font-weight:900;
  font-size:.78rem;
}
@keyframes mimoTestimonialsLTR{
  from{transform:translateX(-50%)}
  to{transform:translateX(0)}
}
@media (max-width:560px){
  .testimonial-row article{
    width:320px;
    min-height:190px;
    padding:24px;
  }
  .marquee-left-to-right{
    animation-duration:34s;
  }
}


/* Métodos de pagamento no footer */
.payment-brand-row{
  display:flex;
  align-items:center;
  gap:26px;
  flex-wrap:wrap;
  margin-top:18px;
}
.payment-logo{
  display:inline-flex;
  align-items:center;
  justify-content:center;
  flex:none;
}
.visa-logo{
  background:transparent!important;
  padding:0!important;
  color:#fff;
  font-size:1.55rem;
  font-weight:1000;
  letter-spacing:-.08em;
  transform:skew(-12deg);
  text-transform:uppercase;
}
.mastercard-logo{
  width:74px;
  height:42px;
  background:#fff!important;
  border-radius:5px!important;
  padding:0!important;
  position:relative;
  box-shadow:0 6px 20px rgba(255,255,255,.12);
}
.mc-circle{
  position:absolute;
  top:50%;
  width:25px;
  height:25px;
  border-radius:50%;
  transform:translateY(-50%);
  opacity:.72;
}
.mc-left{
  left:22px;
  background:#cfcfcf;
}
.mc-right{
  right:22px;
  background:#8f8f8f;
}
.mc-left::after{
  content:"";
  position:absolute;
  top:0;
  left:13px;
  width:12px;
  height:25px;
  background:#a8a8a8;
  border-radius:0 50% 50% 0;
}
.pix-logo{
  gap:8px;
  background:transparent!important;
  padding:0!important;
  color:#d7d7d7;
}
.pix-symbol{
  position:relative;
  width:32px;
  height:32px;
  display:inline-block;
}
.pix-symbol i{
  position:absolute;
  width:14px;
  height:14px;
  background:#fff;
  border-radius:4px;
  transform:rotate(45deg);
}
.pix-symbol i:nth-child(1){left:9px;top:0}
.pix-symbol i:nth-child(2){left:0;top:9px}
.pix-symbol i:nth-child(3){right:0;top:9px}
.pix-symbol i:nth-child(4){left:9px;bottom:0}
.pix-word{
  font-size:2rem;
  line-height:1;
  font-weight:350;
  letter-spacing:.02em;
  color:#d8d8d8;
}
.pix-logo small{
  display:block;
  align-self:flex-end;
  margin-left:-4px;
  margin-bottom:4px;
  font-size:.42rem;
  color:#9f9f9f;
  white-space:nowrap;
}
.site-footer .pay-logos span{
  font-family:Inter, ui-sans-serif, system-ui, -apple-system, BlinkMacSystemFont, "Segoe UI", sans-serif;
}
@media (max-width:560px){
  .payment-brand-row{gap:18px}
  .visa-logo{font-size:1.35rem}
  .mastercard-logo{width:66px;height:38px}
  .pix-word{font-size:1.75rem}
  .pix-logo small{display:none}
}


/* Showcase animado com exemplos de presentes */
.present-showcase{
  position:relative;
  height:620px;
  display:grid;
  place-items:center;
  perspective:1200px;
  isolation:isolate;
}
.showcase-phone{
  position:absolute;
  width:286px;
  height:525px;
  border:10px solid #111;
  border-radius:34px;
  overflow:hidden;
  box-shadow:0 32px 85px rgba(0,0,0,.62);
  backface-visibility:hidden;
}
.showcase-phone::after{
  content:"";
  position:absolute;
  right:8px;
  top:46px;
  width:5px;
  height:76%;
  border-radius:20px;
  background:rgba(255,255,255,.45);
}
.showcase-notch{
  position:absolute;
  top:0;
  left:50%;
  width:118px;
  height:28px;
  transform:translateX(-50%);
  border-radius:0 0 18px 18px;
  background:#050505;
  z-index:5;
}
.showcase-main-img{
  width:100%;
  height:220px;
  object-fit:cover;
  border-radius:12px;
}
.showcase-dots,.example-dots{
  display:flex;
  align-items:center;
  justify-content:center;
  gap:8px;
  margin:12px 0;
}
.showcase-dots span,.example-dots span{
  width:8px;height:8px;border-radius:50%;background:rgba(255,255,255,.28)
}
.showcase-dots b,.example-dots b{
  width:26px;height:8px;border-radius:999px;background:#fff
}
.showcase-red{
  background:#c9181b;
  padding:50px 20px 76px;
  text-align:center;
  animation:showcaseRed 14s linear infinite;
}
.showcase-red h3,.example-red h3{
  font-family:"Brush Script MT","Segoe Script",cursive;
  font-size:2.65rem;
  line-height:1;
  font-weight:400;
  margin:8px 0 10px;
}
.showcase-red p,.example-red p{
  font-weight:950;
  line-height:1.35;
  margin:0 auto 8px;
}
.showcase-red h4,.example-red h4{
  font-family:"Brush Script MT","Segoe Script",cursive;
  font-size:2rem;
  font-weight:400;
  margin:10px 0;
}
.showcase-count,.example-count{
  display:grid;
  grid-template-columns:repeat(2,1fr);
  gap:12px;
}
.showcase-count div,.example-count div{
  background:#df0d12;
  border-radius:12px;
  padding:12px 8px;
}
.showcase-count strong,.example-count strong{
  display:block;
  font-size:1.4rem;
}
.showcase-count small,.example-count small{
  display:block;
  font-weight:900;
}
.mini-player{
  position:absolute;
  left:0;
  right:0;
  bottom:0;
  height:58px;
  background:#050505;
  display:flex;
  align-items:center;
  gap:12px;
  padding:9px 16px;
  color:#fff;
  font-weight:900;
}
.mini-player img{
  width:40px;height:40px;object-fit:cover;border-radius:4px;
}
.mini-player button{
  margin-left:auto;
  width:36px;height:36px;border-radius:50%;
  border:2px solid rgba(255,255,255,.75);
  background:transparent;color:#fff;
  display:grid;place-items:center;
  padding:0;
}
.showcase-letter{
  background:linear-gradient(180deg,#fffdf8,#f5efe6);
  color:#1f1612;
  padding:68px 28px 28px;
  text-align:center;
  animation:showcaseLetter 14s linear infinite;
}
.showcase-letter::after,.showcase-cover::after{display:none}
.showcase-polaroid{
  position:absolute;
  top:18px;
  width:84px;height:74px;
  object-fit:cover;
  border-radius:6px;
  box-shadow:0 10px 22px rgba(0,0,0,.16);
}
.showcase-polaroid.top-a{left:52px;transform:rotate(-5deg)}
.showcase-polaroid.top-b{right:52px;transform:rotate(4deg)}
.gold-sep{
  width:72px;height:3px;
  background:#c7a46d;
  border-radius:999px;
  margin:42px auto 26px;
}
.showcase-letter h3,.example-letter h3{
  font-family:"Brush Script MT","Segoe Script",cursive;
  font-size:2.35rem;
  line-height:1;
  margin:0 0 8px;
  font-weight:400;
}
.showcase-letter p,.example-letter p{
  font-family:Georgia,serif;
  font-size:.86rem;
  line-height:1.75;
}
.showcase-letter h5,.example-letter h5{
  color:#b89764;
  letter-spacing:.22em;
  font-size:.66rem;
  margin:20px 0 10px;
}
.letter-player{
  background:#fff;
  border:1px solid #e3d4c1;
  border-radius:4px;
  padding:12px;
  display:flex;
  align-items:center;
  gap:12px;
  box-shadow:0 14px 30px rgba(112,83,42,.12);
  text-align:left;
  font-size:.78rem;
}
.letter-player img{width:42px;height:42px;object-fit:cover;border-radius:3px}
.letter-player button{
  margin-left:auto;
  width:42px;height:42px;border-radius:50%;
  border:0;background:#e8c88e;color:#2a1f15;font-weight:900;
}
.letter-count{
  display:grid;
  grid-template-columns:repeat(3,1fr);
  gap:8px;
}
.letter-count b{display:block;font-size:1rem}
.letter-count span{font-size:.55rem;text-transform:uppercase;color:#a9804a;letter-spacing:.15em}
.showcase-cover{
  background:radial-gradient(circle at 50% 46%,rgba(190,142,77,.14),transparent 38%),linear-gradient(180deg,#241c13,#0d0b08);
  color:#efe8db;
  padding:78px 30px;
  text-align:center;
  display:flex;
  flex-direction:column;
  justify-content:center;
  gap:18px;
  animation:showcaseCover 14s linear infinite;
}
.cover-line{
  width:92px;height:1px;background:#a47b43;margin:0 auto 25px;position:relative;
}
.cover-line::after{
  content:"";
  position:absolute;
  left:50%;top:-3px;
  width:7px;height:7px;
  background:#b99255;
  transform:translateX(-50%) rotate(45deg);
}
.showcase-cover small,.example-cover small{
  color:#c5a06a;
  font-family:Georgia,serif;
  font-style:italic;
}
.showcase-cover h3,.example-cover h3{
  font-family:Georgia,serif;
  font-weight:400;
  font-size:1.85rem;
  line-height:1.2;
  margin:0;
}
.showcase-cover h3 i,.example-cover h3 i{
  color:#d7b77b;
}
.showcase-cover a,.example-cover a{
  display:inline-flex;
  justify-content:center;
  margin:18px auto 0;
  border:1px solid rgba(207,165,100,.48);
  padding:14px 28px;
  letter-spacing:.16em;
  font-size:.72rem;
  font-weight:900;
  color:#e9dcc4;
}
.ai-photo-note{
  position:absolute;
  bottom:4px;
  left:50%;
  transform:translateX(-50%);
  color:#b7abab;
  font-weight:800;
  font-size:.82rem;
  text-align:center;
  width:100%;
}
@keyframes showcaseRed{
  0%,27%{transform:translateX(-168px) rotateY(18deg) rotateZ(-6deg) scale(.86);opacity:.65;filter:brightness(.78);z-index:1}
  33%,60%{transform:translateX(0) rotateY(0) rotateZ(0) scale(1.06);opacity:1;filter:brightness(1);z-index:4}
  66%,94%{transform:translateX(168px) rotateY(-18deg) rotateZ(6deg) scale(.86);opacity:.65;filter:brightness(.78);z-index:1}
  100%{transform:translateX(-168px) rotateY(18deg) rotateZ(-6deg) scale(.86);opacity:.65;filter:brightness(.78);z-index:1}
}
@keyframes showcaseLetter{
  0%,27%{transform:translateX(0) rotateY(0) scale(1.06);opacity:1;filter:brightness(1);z-index:4}
  33%,60%{transform:translateX(168px) rotateY(-18deg) rotateZ(6deg) scale(.86);opacity:.65;filter:brightness(.78);z-index:1}
  66%,94%{transform:translateX(-168px) rotateY(18deg) rotateZ(-6deg) scale(.86);opacity:.65;filter:brightness(.78);z-index:1}
  100%{transform:translateX(0) rotateY(0) scale(1.06);opacity:1;filter:brightness(1);z-index:4}
}
@keyframes showcaseCover{
  0%,27%{transform:translateX(168px) rotateY(-18deg) rotateZ(6deg) scale(.86);opacity:.65;filter:brightness(.78);z-index:1}
  33%,60%{transform:translateX(-168px) rotateY(18deg) rotateZ(-6deg) scale(.86);opacity:.65;filter:brightness(.78);z-index:1}
  66%,94%{transform:translateX(0) rotateY(0) scale(1.06);opacity:1;filter:brightness(1);z-index:4}
  100%{transform:translateX(168px) rotateY(-18deg) rotateZ(6deg) scale(.86);opacity:.65;filter:brightness(.78);z-index:1}
}

/* Seção exemplos responsiva */
.example-presentation{
  position:relative;
  width:min(980px,100%);
  height:610px;
  margin:0 auto;
  perspective:1200px;
  display:grid;
  place-items:center;
}
.example-phone{
  position:absolute;
  width:310px;
  height:560px;
  border-radius:22px;
  overflow:hidden;
  box-shadow:0 34px 90px rgba(0,0,0,.56);
  transform-style:preserve-3d;
}
.example-red{
  background:#c9181b;
  color:#fff;
  padding:34px 22px 76px;
  text-align:center;
  transform:translateX(-270px) rotateY(18deg) rotateZ(-6deg) scale(.9);
  filter:brightness(.72);
  animation:exampleRed 15s linear infinite;
}
.example-red > img{
  width:100%;
  height:235px;
  object-fit:cover;
  border-radius:12px;
}
.example-letter{
  background:linear-gradient(180deg,#fffdf8,#f5efe6);
  color:#1d1512;
  padding:98px 28px 24px;
  text-align:center;
  z-index:3;
  animation:exampleLetter 15s linear infinite;
}
.float-photo{
  position:absolute;
  top:18px;
  width:92px;height:78px;object-fit:cover;border-radius:6px;
  box-shadow:0 12px 26px rgba(0,0,0,.18);
}
.float-photo.a{left:56px;transform:rotate(-6deg)}
.float-photo.b{right:56px;transform:rotate(4deg)}
.example-letter footer{
  border-top:1px solid #e0d2bd;
  padding-top:18px;
  color:#b28a55;
  font-family:Georgia,serif;
  font-style:italic;
}
.example-cover{
  background:radial-gradient(circle at 50% 46%,rgba(190,142,77,.14),transparent 38%),linear-gradient(180deg,#241c13,#0d0b08);
  color:#efe8db;
  padding:80px 38px;
  text-align:center;
  display:flex;
  flex-direction:column;
  justify-content:center;
  gap:18px;
  transform:translateX(270px) rotateY(-18deg) rotateZ(6deg) scale(.9);
  filter:brightness(.72);
  animation:exampleCover 15s linear infinite;
}
.example-disclaimer{
  text-align:center;
  color:#b9adad;
  font-weight:850;
  margin:26px auto 0;
}
@keyframes exampleRed{
  0%,30%{transform:translateX(-270px) rotateY(18deg) rotateZ(-6deg) scale(.9);filter:brightness(.72);z-index:1}
  35%,63%{transform:translateX(0) rotateY(0) rotateZ(0) scale(1.04);filter:brightness(1);z-index:4}
  68%,96%{transform:translateX(270px) rotateY(-18deg) rotateZ(6deg) scale(.9);filter:brightness(.72);z-index:1}
}
@keyframes exampleLetter{
  0%,30%{transform:translateX(0) rotateY(0) rotateZ(0) scale(1.04);filter:brightness(1);z-index:4}
  35%,63%{transform:translateX(270px) rotateY(-18deg) rotateZ(6deg) scale(.9);filter:brightness(.72);z-index:1}
  68%,96%{transform:translateX(-270px) rotateY(18deg) rotateZ(-6deg) scale(.9);filter:brightness(.72);z-index:1}
}
@keyframes exampleCover{
  0%,30%{transform:translateX(270px) rotateY(-18deg) rotateZ(6deg) scale(.9);filter:brightness(.72);z-index:1}
  35%,63%{transform:translateX(-270px) rotateY(18deg) rotateZ(-6deg) scale(.9);filter:brightness(.72);z-index:1}
  68%,96%{transform:translateX(0) rotateY(0) rotateZ(0) scale(1.04);filter:brightness(1);z-index:4}
}
@media (max-width:950px){
  .present-showcase{height:540px}
  .showcase-phone{width:250px;height:470px}
  @keyframes showcaseRed{
    0%,27%{transform:translateX(-92px) rotateY(14deg) rotateZ(-5deg) scale(.78);opacity:.58;filter:brightness(.74);z-index:1}
    33%,60%{transform:translateX(0) rotateY(0) scale(.98);opacity:1;filter:brightness(1);z-index:4}
    66%,94%{transform:translateX(92px) rotateY(-14deg) rotateZ(5deg) scale(.78);opacity:.58;filter:brightness(.74);z-index:1}
    100%{transform:translateX(-92px) rotateY(14deg) rotateZ(-5deg) scale(.78);opacity:.58;filter:brightness(.74);z-index:1}
  }
  @keyframes showcaseLetter{
    0%,27%{transform:translateX(0) rotateY(0) scale(.98);opacity:1;filter:brightness(1);z-index:4}
    33%,60%{transform:translateX(92px) rotateY(-14deg) rotateZ(5deg) scale(.78);opacity:.58;filter:brightness(.74);z-index:1}
    66%,94%{transform:translateX(-92px) rotateY(14deg) rotateZ(-5deg) scale(.78);opacity:.58;filter:brightness(.74);z-index:1}
    100%{transform:translateX(0) rotateY(0) scale(.98);opacity:1;filter:brightness(1);z-index:4}
  }
  @keyframes showcaseCover{
    0%,27%{transform:translateX(92px) rotateY(-14deg) rotateZ(5deg) scale(.78);opacity:.58;filter:brightness(.74);z-index:1}
    33%,60%{transform:translateX(-92px) rotateY(14deg) rotateZ(-5deg) scale(.78);opacity:.58;filter:brightness(.74);z-index:1}
    66%,94%{transform:translateX(0) rotateY(0) scale(.98);opacity:1;filter:brightness(1);z-index:4}
    100%{transform:translateX(92px) rotateY(-14deg) rotateZ(5deg) scale(.78);opacity:.58;filter:brightness(.74);z-index:1}
  }
  .example-presentation{
    height:auto;
    min-height:0;
    display:grid;
    grid-template-columns:1fr;
    gap:22px;
    perspective:none;
  }
  .example-phone{
    position:relative;
    width:min(360px,100%);
    height:auto;
    min-height:540px;
    margin:0 auto;
    transform:none!important;
    animation:none!important;
    filter:none!important;
  }
  .example-red,.example-letter,.example-cover{
    transform:none!important;
    animation:none!important;
  }
}
@media (max-width:560px){
  .showcase-phone{width:235px;height:452px}
  .showcase-red h3,.example-red h3{font-size:2.1rem}
  .showcase-letter h3,.example-letter h3{font-size:1.95rem}
  .showcase-cover h3,.example-cover h3{font-size:1.55rem}
  .ai-photo-note{font-size:.72rem;bottom:-4px}
}


/* Footer ajustado para ficar como a referência enviada */
.site-footer.footer-patched, .site-footer{}
.footer-like-reference{
  display:grid;
  grid-template-columns: 1.2fr 1fr .95fr;
  gap: 72px;
  align-items:start;
  padding-top: 36px;
  padding-bottom: 80px;
}
.footer-col h3{
  font-size: 2.15rem;
  line-height: 1.1;
  margin: 0 0 18px;
}
.footer-col p{
  max-width: 560px;
  font-size: 1.02rem;
  line-height: 1.45;
  color: rgba(255,255,255,.96);
  margin-bottom: 14px;
}
.footer-about strong{
  display:block;
  font-size: 1rem;
  font-weight: 900;
  margin-bottom: 18px;
  color:#fff;
}
.footer-heart{
  width: 56px;
  height: 56px;
  display:grid;
  place-items:center;
  font-size: 2rem;
  color:#ff1616;
  margin-bottom: 26px;
}
.trust-badges{
  display:flex;
  flex-wrap:wrap;
  align-items:center;
  gap:14px;
  margin-top:12px;
}
.badge{
  display:inline-flex;
  align-items:center;
  justify-content:center;
  min-height:44px;
  padding:8px 16px;
  border-radius:8px;
  font-weight:900;
  line-height:1;
  white-space:nowrap;
}
.badge-google{
  background:#fff;
  color:#222;
  min-width:152px;
  font-size: 1.15rem;
}
.badge-google small{
  display:block;
  font-size:.7rem;
  font-weight:700;
}
.badge-lock{
  background:#fff;
  color:#111;
  border:1px solid #d7d7d7;
  font-size:1rem;
}
.badge-ssl{
  background:#88bc31;
  color:#fff;
  border:2px solid #d7efad;
  font-size:1rem;
}
.footer-contact a{
  display:block;
  color:#fff;
  font-size:1rem;
  font-weight:800;
  margin:10px 0;
}
.footer-payments .payment-brand-row{
  gap:22px;
  margin-top:18px;
}
.footer-bottom-like-reference{
  border-top: none;
  display:flex;
  justify-content:center;
  align-items:center;
  gap:12px;
  text-align:center;
  color:#fff;
  font-size: .98rem;
  font-weight: 800;
  padding-top: 0;
  padding-bottom: 8px;
  margin-top: -8px;
}
.footer-bottom-like-reference a,
.footer-bottom-like-reference span{
  color:#fff;
  opacity:.96;
}
@media (max-width: 1100px){
  .footer-like-reference{
    grid-template-columns: 1fr;
    gap: 34px;
    padding-bottom: 46px;
  }
  .footer-col h3{font-size: 1.85rem;}
  .footer-bottom-like-reference{
    flex-wrap:wrap;
    gap:8px;
    padding-bottom: 16px;
  }
}
@media (max-width: 640px){
  .footer-like-reference{
    gap:26px;
    padding-top: 20px;
  }
  .footer-col h3{font-size: 1.6rem;}
  .footer-col p{font-size: .95rem;}
  .badge-google{min-width:126px;font-size:1rem;}
  .badge-lock,.badge-ssl{font-size:.88rem;padding:8px 12px;}
  .footer-bottom-like-reference{font-size:.88rem;}
}


/* ===== Ajuste da home para ficar como a referência enviada ===== */
.visually-hidden{position:absolute!important;width:1px!important;height:1px!important;padding:0!important;margin:-1px!important;overflow:hidden!important;clip:rect(0,0,0,0)!important;white-space:nowrap!important;border:0!important}
.site-header-home{
  top:18px;
  width:min(calc(100% - 44px),1060px);
  height:64px;
  padding:0 34px;
  justify-content:flex-start;
  gap:72px;
  background:rgba(10,10,10,.74);
  border-color:rgba(255,255,255,.04);
  box-shadow:0 18px 54px rgba(0,0,0,.36);
}
.site-header-home .brand{
  font-size:1.04rem;
  font-weight:800;
}
.site-header-home .brand-mark{
  width:22px;height:22px;border-radius:8px;background:transparent;font-size:1rem;
}
.site-header-home .desktop-nav{
  gap:54px;
  color:#f0eaea;
  font-size:1rem;
  font-weight:700;
}
.site-header-home .desktop-nav a{opacity:.9}
.site-header-home .desktop-nav a:hover{opacity:1}
.hero-reference{
  max-width:1280px;
  min-height:720px;
  grid-template-columns:minmax(0,1fr) minmax(420px,560px);
  gap:46px;
  padding:150px 24px 88px;
}
.hero-reference .hero-copy{max-width:650px}
.hero-reference .eyebrow{display:none}
.hero-reference h1{
  font-size:clamp(3.4rem,5.5vw,5.8rem);
  line-height:.93;
  letter-spacing:-.075em;
  margin:0 0 24px;
  max-width:580px;
}
.hero-reference .hero-subtitle{
  max-width:640px;
  color:#f3eeee;
  font-size:clamp(1.1rem,1.55vw,1.38rem);
  line-height:1.42;
  font-weight:700;
  margin-bottom:24px;
}
.metric-grid-hero{
  margin:0 0 28px;
  max-width:620px;
  gap:10px;
}
.metric-grid-hero .metric-card{
  min-height:78px;
  padding:12px 18px;
  border-radius:16px;
  background:linear-gradient(180deg,rgba(255,255,255,.045),rgba(255,255,255,.03));
  box-shadow:inset 0 0 0 1px rgba(255,255,255,.04);
}
.metric-grid-hero .metric-card-number strong{font-size:1.9rem}
.metric-grid-hero .metric-card-number span,
.metric-grid-hero .metric-card-icon span:last-child{
  color:#d6d7df;
  font-size:1rem;
}
.metric-grid-hero .metric-card-icon{gap:6px}
.hero-reference .hero-actions{
  margin:0 0 12px;
  gap:16px;
}
.hero-reference .btn-lg{
  padding:16px 22px;
  min-width:268px;
  border-radius:12px;
  font-size:1rem;
}
.hero-reference .text-link{
  text-underline-offset:3px;
  font-weight:700;
  color:#dbd3d3;
}
.hero-reference .trust-row{
  gap:24px;
  color:#d5cece;
  font-size:.98rem;
}
.hero-reference .hero-visual{
  min-height:560px;
  display:flex;
  align-items:center;
  justify-content:center;
}
.present-showcase-hero{
  width:100%;
  height:560px;
}
.showcase-left{transform:translateX(-120px) rotate(-7deg);z-index:1}
.showcase-center{transform:translateY(8px) scale(1.03);z-index:3}
.showcase-right{transform:translateX(128px) rotate(8deg);z-index:1}
.showcase-cover{
  background:radial-gradient(circle at 50% 12%,rgba(244,181,83,.18),transparent 28%),linear-gradient(180deg,#1c150f 0%,#0d0907 56%,#120907 100%);
  color:#d8c7ad;
  padding:74px 24px 84px;
  display:flex;
  flex-direction:column;
  align-items:center;
  justify-content:center;
  text-align:center;
  animation:showcaseCoverFloat 11s ease-in-out infinite;
}
.showcase-cover .cover-line{width:1px;height:76px;background:linear-gradient(to bottom,rgba(226,183,88,.7),rgba(226,183,88,0));margin:0 0 28px}
.showcase-cover small{font-size:.92rem;letter-spacing:.18em;text-transform:lowercase;color:#ba9f78;margin-bottom:18px}
.showcase-cover h3{
  max-width:210px;
  font-family:Georgia,serif;
  font-size:2.7rem;
  line-height:1.15;
  font-weight:400;
  margin:0 0 12px;
  color:#e6d8c3;
}
.showcase-cover h3 i{font-style:italic}
.showcase-cover p{margin:0 0 26px;color:#9e8463;letter-spacing:.08em;font-size:.9rem}
.showcase-cover a{
  display:inline-flex;
  align-items:center;
  justify-content:center;
  min-width:190px;
  padding:14px 18px;
  border:1px solid rgba(233,186,94,.36);
  color:#d5c09b;
  border-radius:2px;
  font-weight:800;
  letter-spacing:.08em;
  font-size:.92rem;
}
.cover-spark{position:absolute;border-radius:50%;background:rgba(235,189,93,.65);filter:blur(.4px)}
.spark-a{width:4px;height:4px;left:42px;bottom:96px;box-shadow:0 0 12px rgba(235,189,93,.65)}
.spark-b{width:2px;height:2px;left:56px;bottom:126px;box-shadow:0 0 10px rgba(235,189,93,.45)}
.spark-c{width:3px;height:3px;right:54px;bottom:142px;box-shadow:0 0 10px rgba(235,189,93,.45)}
.showcase-movie{
  background:linear-gradient(180deg,#111214 0%,#0d0d10 100%);
  padding:40px 18px 76px;
  animation:showcaseMovie 14s linear infinite;
}
.showcase-poster-img{width:100%;height:170px;object-fit:cover;border-radius:16px;opacity:.92;margin-bottom:14px}
.showcase-movie-body strong{display:block;font-size:2.1rem;line-height:1;font-weight:950;margin-bottom:8px}
.showcase-movie-body em{display:block;color:#ff3d3d;font-style:italic;font-weight:700;margin-bottom:10px;font-size:.92rem}
.showcase-movie-body p{font-size:.92rem;line-height:1.45;color:#ddd4d4;margin:0 0 12px;font-weight:700}
.scene-strip{display:grid;grid-template-columns:repeat(3,1fr);gap:8px}
.scene-strip span{display:block;height:62px;background-size:cover;background-position:center;border-radius:8px;opacity:.85}
.showcase-red{animation:showcaseRed 14s linear infinite}
@keyframes showcaseRed{0%,100%{transform:translateX(-120px) rotate(-7deg) translateY(0)}50%{transform:translateX(-112px) rotate(-6deg) translateY(-8px)}}
@keyframes showcaseCoverFloat{0%,100%{transform:translateY(8px) scale(1.03)}50%{transform:translateY(-6px) scale(1.045)}}
@keyframes showcaseMovie{0%,100%{transform:translateX(128px) rotate(8deg) translateY(0)}50%{transform:translateX(134px) rotate(7deg) translateY(-10px)}}
#como-funciona.how{
  padding-top:34px;
  background:#0b0000;
}
#como-funciona .section-title{
  margin:0 auto 34px;
}
#como-funciona .section-title h2{
  font-size:clamp(2.4rem,4vw,4rem);
  margin-bottom:12px;
}
#como-funciona .section-title p{
  max-width:760px;
  margin:0 auto;
}
#como-funciona .how-grid{
  align-items:start;
  gap:70px;
  max-width:1320px;
}
#como-funciona .steps{
  padding-top:16px;
  gap:18px;
}
#como-funciona .steps li{
  font-size:1.2rem;
}
#como-funciona .qr-showcase{
  padding-top:10px;
}
#como-funciona .fake-qr.big,
#como-funciona .fake-qr{box-shadow:0 24px 80px rgba(0,0,0,.52)}
@media (max-width: 1024px){
  .site-header-home{width:min(calc(100% - 24px),940px);gap:32px;padding:0 22px}
  .site-header-home .desktop-nav{gap:24px;font-size:.96rem}
  .hero-reference{grid-template-columns:1fr;min-height:auto;padding-top:128px;padding-bottom:56px}
  .hero-reference .hero-copy{max-width:720px}
  .hero-reference .hero-visual{order:2;min-height:510px}
  #como-funciona .how-grid{grid-template-columns:1fr;gap:38px}
}
@media (max-width: 768px){
  .site-header-home{height:58px;gap:0;justify-content:space-between}
  .site-header-home .desktop-nav{display:none}
  .hero-reference{padding:108px 18px 46px;gap:28px}
  .hero-reference h1{font-size:clamp(2.6rem,12vw,4rem);max-width:440px}
  .hero-reference .hero-subtitle{font-size:1.02rem}
  .metric-grid-hero{grid-template-columns:1fr;max-width:100%}
  .metric-grid-hero .metric-card{min-height:72px}
  .hero-reference .hero-actions{align-items:flex-start;flex-direction:column}
  .hero-reference .btn-lg{min-width:auto;width:100%}
  .hero-reference .trust-row{gap:10px;display:grid}
  .present-showcase-hero{height:430px}
  .showcase-phone{width:190px;height:360px;border-width:8px;border-radius:28px}
  .showcase-phone::after{right:6px;top:34px;width:4px;height:76%}
  .showcase-notch{width:88px;height:22px}
  .showcase-main-img{height:132px;border-radius:10px}
  .showcase-left{transform:translateX(-68px) rotate(-8deg)!important}
  .showcase-center{transform:translateY(10px) scale(1.02)!important}
  .showcase-right{transform:translateX(70px) rotate(8deg)!important}
  .showcase-red{padding:34px 12px 62px}
  .showcase-red h3{font-size:1.8rem;margin:8px 0 8px}
  .showcase-red p{font-size:.73rem}
  .showcase-red h4{font-size:1.4rem;margin:8px 0}
  .showcase-count{gap:8px}
  .showcase-count div{padding:8px 4px}
  .showcase-count strong{font-size:1rem}
  .showcase-count small{font-size:.68rem}
  .mini-player{height:46px;padding:6px 10px;font-size:.7rem;gap:8px}
  .mini-player img{width:30px;height:30px}
  .mini-player button{width:28px;height:28px}
  .showcase-cover{padding:48px 14px 60px}
  .showcase-cover .cover-line{height:50px;margin-bottom:18px}
  .showcase-cover small{font-size:.7rem;margin-bottom:10px}
  .showcase-cover h3{font-size:1.55rem;max-width:130px;margin-bottom:8px}
  .showcase-cover p{font-size:.65rem;margin-bottom:16px}
  .showcase-cover a{min-width:132px;padding:10px 10px;font-size:.65rem}
  .showcase-poster-img{height:104px;border-radius:12px;margin-bottom:8px}
  .showcase-movie{padding:28px 10px 60px}
  .showcase-movie-body strong{font-size:1.2rem;margin-bottom:4px}
  .showcase-movie-body em{font-size:.62rem;margin-bottom:6px}
  .showcase-movie-body p{font-size:.64rem;line-height:1.35;margin-bottom:8px}
  .scene-strip span{height:34px;border-radius:6px}
  #como-funciona{padding-top:18px}
  #como-funciona .steps li{font-size:1rem;align-items:flex-start}
}


/* WhatsApp igual ao ícone enviado */
.metric-icon-whatsapp{
  width:31px;
  height:31px;
  filter:none!important;
}
.metric-icon-whatsapp img{
  width:100%;
  height:100%;
  object-fit:contain;
  display:block;
}
.whatsapp-float{
  background:transparent!important;
  border:0!important;
  box-shadow:none!important;
  padding:0!important;
}
.whatsapp-float img{
  width:100%;
  height:100%;
  display:block;
  object-fit:contain;
  filter:drop-shadow(0 14px 24px rgba(0,0,0,.34));
}
.whatsapp-float:hover img{
  transform:translateY(-2px) scale(1.03);
}
#pagesCreatedCount{
  font-variant-numeric:tabular-nums;
}


/* Footer final limpo igual ao print enviado */
.footer-reference-clean{
  position:relative;
  background:#000;
  padding:82px max(48px,calc((100vw - 1480px)/2)) 28px;
  min-height:520px;
  color:#fff;
  display:block;
}
.footer-heart-qr{
  color:#ee1117;
  font-size:4.4rem;
  line-height:1;
  margin:0 0 30px 18px;
  filter:drop-shadow(0 0 10px rgba(238,17,23,.2));
}
.footer-reference-grid{
  width:100%;
  max-width:1480px;
  margin:0 auto;
  display:grid;
  grid-template-columns:1.06fr .95fr .83fr;
  gap:92px;
  align-items:start;
}
.footer-reference-col h3{
  margin:0 0 16px;
  font-size:2rem;
  line-height:1.05;
  letter-spacing:-.04em;
  color:#fff;
}
.footer-reference-col p{
  margin:0 0 12px;
  max-width:560px;
  color:#fff;
  font-size:1rem;
  line-height:1.42;
  font-weight:800;
}
.footer-reference-about strong{
  display:block;
  margin-top:14px;
  color:#fff;
  font-size:1rem;
  font-weight:950;
}
.footer-reference-contact a{
  display:block;
  margin-top:11px;
  color:#fff;
  font-size:1.05rem;
  line-height:1.25;
  font-weight:900;
}
.footer-reference-payments{
  padding-top:20px;
}
.footer-reference-payments h3{
  margin-bottom:24px;
}
.footer-reference-payments .payment-brand-row{
  gap:24px;
  margin-top:0;
}
.footer-reference-bottom{
  max-width:1480px;
  margin:128px auto 0;
  display:flex;
  justify-content:center;
  align-items:center;
  gap:12px;
  text-align:center;
  color:#fff;
  font-size:.96rem;
  font-weight:900;
}
.footer-reference-bottom a,
.footer-reference-bottom span{
  color:#fff;
  opacity:1;
}
.footer-reference-clean .visa-logo{
  font-size:1.5rem;
}
.footer-reference-clean .mastercard-logo{
  width:66px;
  height:40px;
}
.footer-reference-clean .pix-word{
  font-size:1.95rem;
}
.footer-reference-clean .pix-symbol{
  width:30px;
  height:30px;
}
@media (max-width:1100px){
  .footer-reference-clean{
    padding:58px 28px 28px;
    min-height:auto;
  }
  .footer-heart-qr{
    margin-left:0;
    font-size:3.6rem;
  }
  .footer-reference-grid{
    grid-template-columns:1fr;
    gap:34px;
  }
  .footer-reference-payments{
    padding-top:0;
  }
  .footer-reference-bottom{
    margin-top:56px;
    flex-wrap:wrap;
    gap:8px;
  }
}
@media (max-width:560px){
  .footer-reference-clean{
    padding:48px 20px 24px;
  }
  .footer-reference-col h3{
    font-size:1.55rem;
  }
  .footer-reference-col p,
  .footer-reference-about strong,
  .footer-reference-contact a{
    font-size:.94rem;
  }
  .footer-reference-bottom{
    font-size:.84rem;
  }
}


/* Ajustes solicitados: FAQ fechado, contador real zerado, header e ícones */
.header-like-print{
  top:26px;
  width:min(calc(100% - 32px), 850px);
  height:58px;
  padding:0 28px;
  border-radius:999px;
  background:rgba(10,10,10,.86);
  border:1px solid rgba(255,255,255,.055);
  box-shadow:0 18px 52px rgba(0,0,0,.42);
  backdrop-filter:blur(16px);
  justify-content:space-between;
  gap:32px;
}
.header-like-print .brand{
  font-size:1rem;
  font-weight:900;
}
.header-like-print .brand-mark{
  background:transparent;
  color:#ee1117;
  width:22px;
  height:22px;
  filter:drop-shadow(0 0 8px rgba(238,17,23,.42));
}
.header-like-print .desktop-nav{
  gap:48px;
  color:#e9e4e4;
  font-size:1rem;
  font-weight:800;
}
.metric-icon-bolt{
  width:29px;
  height:29px;
  filter:drop-shadow(0 0 10px rgba(255,218,0,.28))!important;
}
.metric-icon-bolt img{
  width:100%;
  height:100%;
  display:block;
  object-fit:contain;
}
#pagesCreatedCount{
  font-variant-numeric:tabular-nums;
}
.faq .section-title h2{
  display:flex;
  align-items:center;
  justify-content:center;
  gap:18px;
}
.faq-list details:not([open]) p{
  display:none;
}
@media (max-width:760px){
  .header-like-print{
    top:14px;
    height:56px;
    padding:0 18px;
  }
  .header-like-print .desktop-nav{
    display:none;
  }
}



/* FAQ igual à referência enviada */
.faq-like-reference{
  background:radial-gradient(circle at 50% 0, rgba(238,17,23,.08), transparent 36%), #090000;
}
.faq-like-reference .section-title{
  max-width:980px;
  margin-bottom:56px;
}
.faq-like-reference .section-title h2{
  font-size:clamp(3rem,6.2vw,6.8rem);
  line-height:.92;
  letter-spacing:-.075em;
  margin-bottom:18px;
  text-transform:none;
}
.faq-like-reference .section-title p{
  color:#f1e8e8;
  font-size:1.28rem;
  font-weight:850;
}
.faq-like-reference .faq-list{
  max-width:900px;
  margin:0 auto;
  display:grid;
  gap:14px;
}
.faq-like-reference .faq-list details{
  background:rgba(255,255,255,.065);
  border:1px solid rgba(255,255,255,.17);
  border-radius:8px;
  padding:0;
  overflow:hidden;
}
.faq-like-reference .faq-list summary{
  min-height:64px;
  padding:20px 24px;
  display:flex;
  align-items:center;
  justify-content:space-between;
  gap:18px;
  cursor:pointer;
  color:#fff;
  font-size:1.12rem;
  font-weight:950;
  list-style:none;
}
.faq-like-reference .faq-list summary::-webkit-details-marker{
  display:none;
}
.faq-like-reference .faq-list summary::after{
  content:"+";
  color:#ee1117;
  font-size:1.6rem;
  line-height:1;
  font-weight:500;
}
.faq-like-reference .faq-list details[open] summary::after{
  content:"−";
}
.faq-like-reference .faq-list p{
  margin:0;
  padding:0 24px 22px;
  color:#d7cdcd;
  font-weight:700;
  line-height:1.55;
}
.faq-contact-cta{
  text-align:center;
  margin-top:48px;
}
.faq-contact-cta p{
  margin:0 0 18px;
  color:#f4eeee;
  font-size:1.12rem;
  font-weight:900;
}
.faq-contact-cta .btn{
  min-width:245px;
  border-radius:10px;
  padding:17px 26px;
}
@media (max-width:760px){
  .faq-like-reference .section-title h2{
    font-size:clamp(2.6rem,14vw,4.2rem);
  }
  .faq-like-reference .section-title p{
    font-size:1rem;
  }
  .faq-like-reference .faq-list summary{
    font-size:1rem;
    padding:18px;
  }
  .faq-like-reference .faq-list p{
    padding:0 18px 18px;
  }
}


/* ===== Ajustes finais pedidos ===== */
.metric-icon-bolt{
  width:28px;
  height:28px;
  font-size:1.9rem;
  line-height:1;
  color:#ffd91c;
  filter:drop-shadow(0 0 10px rgba(255,217,28,.32));
}
.metric-icon-bolt img{display:none !important}

#como-funciona .steps{
  gap:16px;
}
#como-funciona .steps li{
  opacity:0;
  transform:translateX(-22px);
  animation:stepReveal .55s ease forwards;
}
#como-funciona .steps li:nth-child(1){animation-delay:.08s}
#como-funciona .steps li:nth-child(2){animation-delay:.22s}
#como-funciona .steps li:nth-child(3){animation-delay:.36s}
#como-funciona .steps li:nth-child(4){animation-delay:.50s}
#como-funciona .steps li:nth-child(5){animation-delay:.64s}
#como-funciona .steps span{
  flex:0 0 34px;
}
@keyframes stepReveal{to{opacity:1;transform:none}}

#como-funciona .qr-showcase{
  display:flex;
  flex-direction:column;
  align-items:center;
  justify-content:center;
  text-align:center;
}
#como-funciona .fake-qr-img{
  width:min(220px,100%);
  aspect-ratio:1/1;
  padding:10px;
  border-radius:12px;
  background:#fff;
  box-shadow:0 24px 80px rgba(0,0,0,.52);
  image-rendering:pixelated;
}
#como-funciona .qr-showcase p{
  margin-top:14px;
  font-weight:800;
  color:#e6dcdc;
}

.plans-grid{
  align-items:stretch;
}
.plan-card{
  display:flex;
  flex-direction:column;
  align-items:flex-start;
  min-height:100%;
  padding:34px 34px 28px;
}
.plan-card h3{
  max-width:calc(100% - 86px);
}
.plan-icon{
  top:26px;
  right:26px;
  font-size:2rem;
}
.new-badge{
  top:18px;
  right:18px;
  padding:6px 10px;
  font-size:.82rem;
  line-height:1;
  z-index:2;
}
.new-badge + .plan-icon{
  top:52px;
  right:24px;
}
.plan-desc{
  min-height:48px;
  margin:0 0 6px;
}
.plan-card ul{
  flex:1;
  width:100%;
}
.plan-card .btn.full{
  width:100%;
  min-height:56px;
  margin-top:auto;
}
@media (max-width: 760px){
  .plans-grid{
    grid-template-columns:1fr;
  }
  .plan-card{
    padding:28px 24px 24px;
  }
  .plan-card h3{
    max-width:calc(100% - 74px);
    font-size:2rem;
  }
}

.faq-like-reference .section-title p{
  max-width:920px;
  margin:0 auto;
}
.faq-like-reference .faq-list{
  max-width:980px;
}
.faq-like-reference .faq-list p{
  font-weight:700;
}



/* Simetria geral do footer e FAQ menor */
.footer-symmetric{
  background:#000;
  color:#fff;
  padding:76px 24px 30px;
  min-height:500px;
}
.footer-symmetric-wrap{
  width:min(100%, 1460px);
  margin:0 auto;
}
.footer-symmetric .footer-heart-qr{
  width:100%;
  max-width:1460px;
  margin:0 auto 36px;
  color:#ef1117;
  font-size:4rem;
  line-height:1;
  text-align:left;
  padding-left:0;
}
.footer-symmetric-grid{
  width:100%;
  max-width:1460px;
  margin:0 auto;
  display:grid;
  grid-template-columns:repeat(3, minmax(0, 1fr));
  gap:86px;
  align-items:start;
}
.footer-symmetric .footer-reference-col{
  min-width:0;
  padding:0;
}
.footer-symmetric .footer-reference-col h3{
  margin:0 0 18px;
  font-size:2rem;
  line-height:1.05;
  letter-spacing:-.045em;
  color:#fff;
}
.footer-symmetric .footer-reference-col p{
  margin:0 0 14px;
  max-width:100%;
  color:#fff;
  font-size:1rem;
  line-height:1.42;
  font-weight:850;
}
.footer-symmetric .footer-reference-about strong{
  display:block;
  margin-top:16px;
  color:#fff;
  font-size:1rem;
  font-weight:950;
}
.footer-symmetric .footer-reference-contact a{
  display:block;
  margin-top:12px;
  color:#fff;
  font-size:1.05rem;
  line-height:1.25;
  font-weight:900;
}
.footer-symmetric .footer-reference-payments{
  padding-top:0;
}
.footer-symmetric .footer-reference-payments .payment-brand-row{
  margin-top:22px;
  display:flex;
  align-items:center;
  gap:24px;
  flex-wrap:nowrap;
}
.footer-symmetric-bottom{
  margin:118px auto 0;
  max-width:1460px;
  display:flex;
  align-items:center;
  justify-content:center;
  gap:12px;
  text-align:center;
  font-size:.96rem;
  font-weight:900;
  color:#fff;
}
.footer-symmetric-bottom a,
.footer-symmetric-bottom span{
  color:#fff;
}
.footer-symmetric .visa-logo{
  font-size:1.5rem;
}
.footer-symmetric .mastercard-logo{
  width:68px;
  height:40px;
}
.footer-symmetric .pix-word{
  font-size:1.95rem;
}

/* FAQ menor, com emoji ao lado */
.faq-like-reference .section-title{
  max-width:980px;
  margin-bottom:46px;
}
.faq-like-reference .section-title h2{
  font-size:clamp(2.6rem,4.2vw,4.8rem) !important;
  line-height:1.02 !important;
  letter-spacing:-.055em !important;
  display:flex;
  align-items:center;
  justify-content:center;
  gap:16px;
  flex-wrap:nowrap;
  white-space:nowrap;
}
.faq-like-reference .section-title p{
  max-width:820px;
  margin:0 auto;
  font-size:1.16rem !important;
  line-height:1.4;
}

@media (max-width:1100px){
  .footer-symmetric{
    min-height:auto;
    padding:56px 24px 28px;
  }
  .footer-symmetric .footer-heart-qr{
    font-size:3.4rem;
    margin-bottom:28px;
  }
  .footer-symmetric-grid{
    grid-template-columns:1fr;
    gap:34px;
  }
  .footer-symmetric-bottom{
    margin-top:56px;
    flex-wrap:wrap;
    gap:8px;
  }
}
@media (max-width:760px){
  .faq-like-reference .section-title h2{
    font-size:clamp(2.15rem,10vw,3.3rem) !important;
    white-space:normal;
  }
  .faq-like-reference .section-title p{
    font-size:1rem !important;
  }
}
@media (max-width:560px){
  .footer-symmetric{
    padding:46px 20px 24px;
  }
  .footer-symmetric .footer-reference-col h3{
    font-size:1.6rem;
  }
  .footer-symmetric .footer-reference-col p,
  .footer-symmetric .footer-reference-about strong,
  .footer-symmetric .footer-reference-contact a{
    font-size:.94rem;
  }
  .footer-symmetric .footer-reference-payments .payment-brand-row{
    gap:16px;
    flex-wrap:wrap;
  }
  .footer-symmetric-bottom{
    font-size:.84rem;
  }
}

/* footer payment alignment + white payment logos fix */
.footer-symmetric-grid{
  grid-template-columns: minmax(0,1fr) minmax(0,1fr) minmax(0,1fr);
}
.footer-symmetric .footer-reference-payments{
  align-self:start;
  justify-self:start;
  margin-top:0;
  padding-top:0;
  display:flex;
  flex-direction:column;
}
.footer-symmetric .footer-reference-payments h3{
  margin:0 0 22px;
}
.footer-symmetric .footer-reference-payments .payment-brand-row{
  margin-top:0;
  justify-content:flex-start;
  align-items:center;
  gap:22px;
}
.footer-symmetric .visa-logo,
.footer-symmetric .pix-logo,
.footer-symmetric .pix-word,
.footer-symmetric .pix-logo small{
  color:#fff !important;
}
.footer-symmetric .pix-symbol i{
  background:#fff !important;
}
.footer-symmetric .mastercard-logo{
  background:#fff !important;
  box-shadow:none !important;
}
.footer-symmetric .mc-left{ background:#cfcfcf !important; }
.footer-symmetric .mc-right{ background:#9c9c9c !important; }
.footer-symmetric .mc-left::after{ background:#b7b7b7 !important; }
@media (max-width:1100px){
  .footer-symmetric .footer-reference-payments .payment-brand-row{
    margin-top:0;
  }
}


/* ===== pricing cards refined ===== */
.pricing-title h2{
  font-size:clamp(2.2rem,4.4vw,4rem);
  letter-spacing:-.05em;
}
.pricing-title p{
  font-size:1.08rem;
  color:#e6dada;
}
.enhanced-plans-grid{
  display:grid;
  grid-template-columns:repeat(2,minmax(0,1fr));
  gap:18px;
  align-items:stretch;
}
.plan-card{
  position:relative;
  isolation:isolate;
  overflow:hidden;
  border-radius:22px;
  background:linear-gradient(180deg,rgba(34,7,8,.96),rgba(15,3,4,.98));
  border:1px solid rgba(255,255,255,.08);
  box-shadow:0 12px 30px rgba(0,0,0,.26);
  transition:transform .25s ease, box-shadow .25s ease;
}
.plan-card::before{
  content:"";
  position:absolute;
  inset:0;
  padding:1.5px;
  border-radius:22px;
  background:conic-gradient(from 0deg,#45a8ff,#38d996,#8a4dff,#45a8ff);
  -webkit-mask:linear-gradient(#000 0 0) content-box, linear-gradient(#000 0 0);
  -webkit-mask-composite:xor;
  mask-composite:exclude;
  opacity:.82;
  animation:rgbBorderSpin 5s linear infinite;
  pointer-events:none;
}
.plan-card:hover{
  transform:translateY(-8px) scale(1.015);
  box-shadow:0 24px 50px rgba(0,0,0,.42), 0 0 30px rgba(138,77,255,.12);
}
.plan-card > *{ position:relative; z-index:1; }
.plan-card h3{
  font-size:2rem;
  line-height:1.02;
  margin:0 0 10px;
}
.plan-icon{
  font-size:1.7rem;
  width:auto;
  height:auto;
  background:none;
  filter:drop-shadow(0 2px 8px rgba(0,0,0,.3));
}
.plan-card .old-price{
  margin:0;
  font-size:1.1rem;
  color:#8b7676;
  text-decoration:line-through;
  font-weight:900;
}
.plan-card .price{
  margin:6px 0 16px;
  display:flex;
  flex-direction:column;
  align-items:flex-start;
  gap:2px;
  font-weight:1000;
  font-size:2.2rem;
  line-height:1;
  color:#ff181d;
}
.plan-card .price small{
  font-size:.78rem;
  color:#fff;
  text-transform:none;
  letter-spacing:0;
}
.plan-card .badge{
  display:inline-flex;
  align-items:center;
  justify-content:center;
  min-height:32px;
  padding:6px 12px;
  border:1px solid rgba(255,255,255,.7);
  border-radius:8px;
  font-size:.78rem;
  font-weight:900;
  margin:0 0 18px;
  background:rgba(255,255,255,.02);
}
.feature-list{
  list-style:none;
  padding:0;
  margin:0 0 24px;
  display:flex;
  flex-direction:column;
  gap:10px;
  width:100%;
}
.feature-list li{
  display:grid;
  grid-template-columns:22px 1fr;
  gap:10px;
  align-items:start;
  font-weight:800;
  color:#fff;
  line-height:1.35;
}
.feat-icon{
  width:22px;
  height:22px;
  border-radius:50%;
  display:inline-flex;
  align-items:center;
  justify-content:center;
  font-size:.78rem;
  font-weight:1000;
  margin-top:1px;
}
.feature-list li.positive .feat-icon{
  background:rgba(255,22,28,.14);
  border:1px solid rgba(255,22,28,.8);
  color:#fff;
}
.feature-list li.negative{
  color:#e0d6d6;
}
.feature-list li.negative .feat-icon{
  background:rgba(255,255,255,.06);
  border:1px solid rgba(255,255,255,.22);
  color:#fff;
}
.plan-card .btn.full{
  min-height:56px;
  border-radius:10px;
}
.plan-aniversario .plan-icon,
.plan-evento .plan-icon,
.plan-delux .plan-icon,
.plan-filme .plan-icon{
  top:24px;
  right:24px;
}
.new-badge{
  background:#ff2032;
  color:#fff;
  font-size:.72rem;
  padding:5px 9px;
  border-radius:999px;
  font-weight:1000;
}
.new-badge + .plan-icon{
  top:48px;
}
@keyframes rgbBorderSpin{
  from{ transform:rotate(0deg); }
  to{ transform:rotate(360deg); }
}
@media (max-width: 900px){
  .enhanced-plans-grid{
    grid-template-columns:1fr;
  }
}
@media (max-width: 760px){
  .pricing-title h2{ font-size:2.2rem; }
  .plan-card{ padding:26px 22px 22px; }
  .plan-card h3{ font-size:1.8rem; max-width:calc(100% - 60px); }
}


/* ===== animações solicitadas ===== */
.pricing-title .emphasis-red{
  color:var(--red);
}

.refund-note{
  opacity:0;
  transform:translateY(34px);
}
.refund-note.in-view{
  animation:refundRise .8s cubic-bezier(.2,.8,.2,1) forwards;
}
@keyframes refundRise{
  from{opacity:0;transform:translateY(34px)}
  to{opacity:1;transform:translateY(0)}
}

.how-animated-grid{
  align-items:center;
}
#como-funciona .sequential-steps{
  gap:18px;
}
#como-funciona .sequential-steps li{
  opacity:0;
  transform:translateX(-36px);
  will-change:transform,opacity;
}
#como-funciona.in-view .sequential-steps li{
  animation:stepSlideRight .62s cubic-bezier(.2,.8,.2,1) forwards;
}
#como-funciona.in-view .sequential-steps li:nth-child(1){animation-delay:.08s}
#como-funciona.in-view .sequential-steps li:nth-child(2){animation-delay:.20s}
#como-funciona.in-view .sequential-steps li:nth-child(3){animation-delay:.32s}
#como-funciona.in-view .sequential-steps li:nth-child(4){animation-delay:.44s}
#como-funciona.in-view .sequential-steps li:nth-child(5){animation-delay:.56s}
#como-funciona.in-view .sequential-steps li:nth-child(6){animation-delay:.68s}
@keyframes stepSlideRight{
  from{opacity:0;transform:translateX(-36px)}
  to{opacity:1;transform:translateX(0)}
}
#como-funciona .sequential-steps li span{
  flex:0 0 38px;
  width:38px;
  height:38px;
  font-size:1rem;
}

.qr-assemble{
  opacity:1;
}
.qr-build-frame{
  position:relative;
  display:inline-grid;
  place-items:center;
}
#como-funciona .qr-assemble .fake-qr-img{
  position:relative;
  z-index:1;
  opacity:.2;
  transform:scale(.94);
  filter:blur(5px);
}
#como-funciona.in-view .qr-assemble .fake-qr-img{
  animation:qrResolve .95s ease forwards .18s;
}
@keyframes qrResolve{
  from{opacity:.2;transform:scale(.94);filter:blur(5px)}
  to{opacity:1;transform:scale(1);filter:blur(0)}
}
.qr-tiles{
  position:absolute;
  inset:10px;
  display:grid;
  grid-template-columns:repeat(6,1fr);
  grid-template-rows:repeat(6,1fr);
  gap:4px;
  z-index:2;
  pointer-events:none;
}
.qr-tiles span{
  background:#111;
  border-radius:2px;
  transform:scale(0);
  opacity:0;
}
#como-funciona.in-view .qr-tiles span{
  animation:tileBuild .32s ease forwards;
  animation-delay:var(--d,0s);
}
@keyframes tileBuild{
  0%{opacity:0;transform:scale(0)}
  55%{opacity:1;transform:scale(1)}
  100%{opacity:0;transform:scale(1)}
}
.qr-scanline{
  position:absolute;
  left:12px;
  right:12px;
  top:14px;
  height:12px;
  border-radius:999px;
  background:linear-gradient(90deg,transparent,rgba(255,40,60,.85),transparent);
  opacity:0;
  z-index:3;
  pointer-events:none;
  filter:blur(1.2px);
}
#como-funciona.in-view .qr-scanline{
  animation:scanBuild 1.2s ease .18s forwards;
}
@keyframes scanBuild{
  0%{opacity:0;transform:translateY(0)}
  15%{opacity:1}
  85%{opacity:1}
  100%{opacity:0;transform:translateY(180px)}
}

@media (max-width:950px){
  #como-funciona .sequential-steps li{
    font-size:1.06rem;
    align-items:flex-start;
  }
  .qr-build-frame{
    margin-top:6px;
  }
}



/* ===== Padrão global: cards com borda RGB azul/verde/roxo ===== */
.metric-card,
.plan-card,
.faq-like-reference .faq-list details,
.testimonial-row article,
.testimonial-track article,
.modal-card,
.cookie-bar{
  position:relative;
  isolation:isolate;
  overflow:hidden;
  border-color:rgba(255,255,255,.08)!important;
}

.metric-card::before,
.plan-card::before,
.faq-like-reference .faq-list details::before,
.testimonial-row article::before,
.testimonial-track article::before,
.modal-card::before,
.cookie-bar::before{
  content:"";
  position:absolute;
  inset:0;
  padding:1.5px;
  border-radius:inherit;
  background:conic-gradient(
    from var(--rgb-angle, 0deg),
    #35a7ff,
    #32e69c,
    #8d50ff,
    #35a7ff
  );
  -webkit-mask:
    linear-gradient(#000 0 0) content-box,
    linear-gradient(#000 0 0);
  -webkit-mask-composite:xor;
  mask-composite:exclude;
  pointer-events:none;
  opacity:.72;
  animation:rgbCardBorder 5.2s linear infinite;
  z-index:0;
}

.metric-card > *,
.plan-card > *,
.faq-like-reference .faq-list details > *,
.testimonial-row article > *,
.testimonial-track article > *,
.modal-card > *,
.cookie-bar > *{
  position:relative;
  z-index:1;
}

.metric-card:hover,
.testimonial-row article:hover,
.testimonial-track article:hover,
.faq-like-reference .faq-list details:hover{
  transform:translateY(-5px);
  box-shadow:
    0 20px 48px rgba(0,0,0,.38),
    0 0 28px rgba(53,167,255,.09),
    0 0 28px rgba(141,80,255,.08);
}

.metric-card,
.testimonial-row article,
.testimonial-track article,
.faq-like-reference .faq-list details{
  transition:transform .24s ease, box-shadow .24s ease, border-color .24s ease;
}

@keyframes rgbCardBorder{
  to{ --rgb-angle:360deg; }
}

@property --rgb-angle{
  syntax:"<angle>";
  initial-value:0deg;
  inherits:false;
}

/* Animações adicionais no padrão da referência */
.btn-primary{
  position:relative;
  overflow:hidden;
}
.btn-primary::after{
  content:"";
  position:absolute;
  top:-70%;
  bottom:-70%;
  left:-45%;
  width:34%;
  background:linear-gradient(90deg, transparent, rgba(255,255,255,.38), transparent);
  transform:rotate(18deg) translateX(-160%);
  animation:buttonShine 4.6s ease-in-out infinite;
  pointer-events:none;
}
@keyframes buttonShine{
  0%,60%{transform:rotate(18deg) translateX(-160%)}
  78%,100%{transform:rotate(18deg) translateX(430%)}
}

.whatsapp-float{
  animation:wppFloatPulse 2.6s ease-in-out infinite;
}
@keyframes wppFloatPulse{
  0%,100%{transform:translateY(0) scale(1)}
  50%{transform:translateY(-4px) scale(1.035)}
}

/* Hero/presentes: flutuação contínua */
.present-showcase .showcase-phone,
.phone-stack .mini-card{
  will-change:transform;
}

/* Acessibilidade */
@media (prefers-reduced-motion: reduce){
  *,
  *::before,
  *::after{
    animation-duration:.01ms!important;
    animation-iteration-count:1!important;
    scroll-behavior:auto!important;
  }
}



/* ===== Header animado estilo referência ===== */
.qr-scroll-header{
  position:fixed;
  left:50%;
  transform:translateX(-50%);
  top:20px;
  z-index:70;
  width:min(calc(100% - 44px), 1040px);
  height:70px;
  padding:0 36px;
  border-radius:999px;
  display:flex;
  align-items:center;
  justify-content:space-between;
  gap:42px;
  background:rgba(8,8,8,0);
  border:1px solid rgba(255,255,255,0);
  box-shadow:none;
  backdrop-filter:blur(0);
  transition:
    width .38s cubic-bezier(.2,.8,.2,1),
    height .38s cubic-bezier(.2,.8,.2,1),
    top .38s cubic-bezier(.2,.8,.2,1),
    padding .38s cubic-bezier(.2,.8,.2,1),
    background .38s ease,
    border-color .38s ease,
    box-shadow .38s ease,
    backdrop-filter .38s ease,
    transform .38s cubic-bezier(.2,.8,.2,1);
}

.qr-scroll-header .brand{
  transition:transform .38s cubic-bezier(.2,.8,.2,1), opacity .25s ease;
}

.qr-scroll-header .brand-mark{
  background:transparent!important;
  color:#ee1117;
  filter:drop-shadow(0 0 10px rgba(238,17,23,.38));
}

.qr-scroll-header .desktop-nav{
  display:flex;
  align-items:center;
  gap:58px;
  font-weight:850;
  transition:gap .38s cubic-bezier(.2,.8,.2,1), transform .38s cubic-bezier(.2,.8,.2,1);
}

.qr-scroll-header .desktop-nav a{
  color:rgba(255,255,255,.86);
  transition:color .2s ease, transform .2s ease;
}

.qr-scroll-header .desktop-nav a:hover{
  color:#fff;
  transform:translateY(-1px);
}

.qr-scroll-header.is-compact{
  top:18px;
  width:min(calc(100% - 44px), 850px);
  height:58px;
  padding:0 28px;
  background:rgba(12,12,12,.86);
  border-color:rgba(255,255,255,.07);
  box-shadow:0 18px 54px rgba(0,0,0,.46);
  backdrop-filter:blur(18px);
}

.qr-scroll-header.is-compact .brand{
  transform:scale(.96);
}

.qr-scroll-header.is-compact .desktop-nav{
  gap:46px;
  transform:scale(.96);
  transform-origin:center;
}

.qr-scroll-header.is-hidden-up{
  transform:translateX(-50%) translateY(-88px);
}

@media (max-width:760px){
  .qr-scroll-header{
    top:12px;
    width:min(calc(100% - 24px), 520px);
    height:58px;
    padding:0 18px;
    background:rgba(12,12,12,.78);
    border-color:rgba(255,255,255,.06);
    backdrop-filter:blur(16px);
  }
  .qr-scroll-header.is-compact{
    top:10px;
    width:min(calc(100% - 22px), 460px);
    height:54px;
    padding:0 16px;
  }
  .qr-scroll-header .desktop-nav{
    display:none;
  }
}



/* ===== Ajustes de simetria e alinhamento ===== */
.hero-reference,
.how-grid,
.plans-grid,
.example-presentation,
.footer-symmetric-wrap,
.footer-reference-grid,
.faq-like-reference .faq-list{
  width:min(100%, 1240px);
  margin-left:auto;
  margin-right:auto;
}

.metric-grid-hero{
  display:grid;
  grid-template-columns:repeat(3, minmax(0, 1fr));
  gap:12px;
  max-width:680px;
  align-items:stretch;
}
.metric-grid-hero .metric-card{
  min-height:106px;
  padding:16px 16px 14px;
  display:grid;
  grid-template-rows:48px auto;
  justify-items:center;
  align-content:center;
  gap:8px;
  text-align:center;
}
.metric-grid-hero .metric-visual{
  min-height:48px;
  display:flex;
  align-items:center;
  justify-content:center;
}
.metric-grid-hero .metric-card strong,
.metric-grid-hero .metric-icon{
  display:flex;
  align-items:center;
  justify-content:center;
  height:36px;
}
.metric-grid-hero .metric-card-number strong{
  font-size:2rem;
  line-height:1;
  font-weight:1000;
}
.metric-grid-hero .metric-label{
  color:#d4d8e4;
  font-size:.98rem;
  line-height:1.2;
  font-weight:850;
  display:block;
}
.metric-grid-hero .metric-icon-bolt{
  width:36px;
  height:36px;
  font-size:2rem;
  line-height:1;
  color:#ffd21c;
  filter:drop-shadow(0 0 10px rgba(255,210,28,.28));
}
.metric-grid-hero .metric-icon-whatsapp{
  width:36px;
  height:36px;
  filter:none;
}
.metric-grid-hero .metric-icon-whatsapp img{
  width:100%;
  height:100%;
  object-fit:contain;
  display:block;
}

/* Como funciona: QR à esquerda, passos à direita */
.how-animated-grid{
  grid-template-columns:360px minmax(0, 1fr);
  gap:74px;
  align-items:center;
}
#como-funciona .qr-showcase{
  justify-self:start;
}
#como-funciona .sequential-steps{
  justify-self:stretch;
  gap:18px;
}
#como-funciona .sequential-steps li{
  background:rgba(255,255,255,.035);
  border:1px solid rgba(255,255,255,.08);
  border-radius:16px;
  padding:16px 18px;
  opacity:0;
  transform:translateX(-38px);
  will-change:transform,opacity;
}
#como-funciona .sequential-steps li span{
  flex:0 0 38px;
  width:38px;
  height:38px;
}
#como-funciona.in-view .sequential-steps li{
  animation:stepSlideRight .65s cubic-bezier(.2,.8,.2,1) forwards;
}
#como-funciona.in-view .sequential-steps li:nth-child(1){animation-delay:.06s}
#como-funciona.in-view .sequential-steps li:nth-child(2){animation-delay:.18s}
#como-funciona.in-view .sequential-steps li:nth-child(3){animation-delay:.30s}
#como-funciona.in-view .sequential-steps li:nth-child(4){animation-delay:.42s}
#como-funciona.in-view .sequential-steps li:nth-child(5){animation-delay:.54s}
#como-funciona.in-view .sequential-steps li:nth-child(6){animation-delay:.66s}

.qr-build-frame{
  position:relative;
  display:inline-grid;
  place-items:center;
}
#como-funciona .fake-qr-img{
  width:min(240px,100%);
  aspect-ratio:1/1;
  padding:10px;
  border-radius:12px;
  background:#fff;
  box-shadow:0 24px 80px rgba(0,0,0,.52);
  image-rendering:pixelated;
  position:relative;
  z-index:1;
  opacity:.24;
  transform:scale(.94);
  filter:blur(5px);
}
#como-funciona.in-view .fake-qr-img{
  animation:qrResolve .95s ease forwards .16s;
}
.qr-tiles{
  position:absolute;
  inset:10px;
  display:grid;
  grid-template-columns:repeat(6,1fr);
  grid-template-rows:repeat(6,1fr);
  gap:4px;
  z-index:2;
  pointer-events:none;
}
.qr-tiles span{
  background:#111;
  border-radius:2px;
  transform:scale(0);
  opacity:0;
}
#como-funciona.in-view .qr-tiles span{
  animation:tileBuild .32s ease forwards;
  animation-delay:var(--d,0s);
}
.qr-scanline{
  position:absolute;
  left:12px;
  right:12px;
  top:14px;
  height:12px;
  border-radius:999px;
  background:linear-gradient(90deg,transparent,rgba(255,40,60,.85),transparent);
  opacity:0;
  z-index:3;
  pointer-events:none;
  filter:blur(1.2px);
}
#como-funciona.in-view .qr-scanline{
  animation:scanBuild 1.2s ease .18s forwards;
}
@keyframes stepSlideRight{
  from{opacity:0;transform:translateX(-38px)}
  to{opacity:1;transform:translateX(0)}
}
@keyframes qrResolve{
  from{opacity:.24;transform:scale(.94);filter:blur(5px)}
  to{opacity:1;transform:scale(1);filter:blur(0)}
}
@keyframes tileBuild{
  0%{opacity:0;transform:scale(0)}
  55%{opacity:1;transform:scale(1)}
  100%{opacity:0;transform:scale(1)}
}
@keyframes scanBuild{
  0%{opacity:0;transform:translateY(0)}
  15%{opacity:1}
  85%{opacity:1}
  100%{opacity:0;transform:translateY(180px)}
}

/* Título de produtos conforme pedido */
.pricing-title{
  max-width:840px;
}
.pricing-title h2{
  font-size:clamp(2.4rem,4.8vw,4.6rem) !important;
  line-height:1.02;
  letter-spacing:-.06em;
  margin-bottom:12px;
}
.pricing-title p{
  font-size:1.04rem !important;
  color:#d9cfcf;
  font-weight:800;
}

/* Melhor simetria dos cards */
.enhanced-plans-grid{
  align-items:stretch;
  width:min(100%, 1240px);
  margin:0 auto;
}
.plan-card{
  min-height:100%;
}
.plan-card h3{
  max-width:calc(100% - 78px);
}
.plan-card .feature-list{
  flex:1;
}

@media (max-width:1024px){
  .how-animated-grid{
    grid-template-columns:1fr;
    gap:34px;
  }
  #como-funciona .qr-showcase{
    justify-self:center;
    order:1;
  }
  #como-funciona .sequential-steps{
    order:2;
  }
}
@media (max-width:760px){
  .metric-grid-hero{
    grid-template-columns:1fr;
    max-width:100%;
  }
  .metric-grid-hero .metric-card{
    min-height:84px;
    grid-template-columns:40px 1fr;
    grid-template-rows:auto;
    justify-items:start;
    text-align:left;
    padding:16px 18px;
  }
  .metric-grid-hero .metric-visual{
    min-height:40px;
  }
  .metric-grid-hero .metric-label{
    align-self:center;
  }
  #como-funciona .sequential-steps li{
    font-size:1rem;
    padding:14px 14px;
  }
  .pricing-title h2{
    font-size:2.25rem !important;
  }
  .pricing-title p{
    font-size:.98rem !important;
  }
}



/* ===== Correções finais: simetria, how igual ao print, sem RGB em métricas/FAQ ===== */

/* remove RGB dos cards de métricas e perguntas frequentes */
.metric-card::before,
.faq-like-reference .faq-list details::before{
  content:none!important;
  display:none!important;
}
.metric-card,
.faq-like-reference .faq-list details{
  overflow:visible;
}
.metric-card:hover,
.faq-like-reference .faq-list details:hover{
  transform:none!important;
  box-shadow:none!important;
}

/* Métricas perfeitamente alinhadas */
.metric-grid-hero{
  grid-template-columns:repeat(3, minmax(0, 1fr));
  align-items:stretch;
  gap:12px;
}
.metric-grid-hero .metric-card{
  min-height:96px!important;
  display:grid!important;
  grid-template-rows:42px 22px!important;
  align-items:center!important;
  justify-items:center!important;
  align-content:center!important;
  gap:8px!important;
  padding:14px 16px!important;
}
.metric-grid-hero .metric-visual{
  height:42px!important;
  min-height:42px!important;
  display:flex!important;
  align-items:center!important;
  justify-content:center!important;
}
.metric-grid-hero .metric-card-number strong{
  font-size:2.15rem!important;
  line-height:1!important;
  height:42px!important;
  display:flex!important;
  align-items:center!important;
  justify-content:center!important;
}
.metric-grid-hero .metric-icon-bolt{
  width:42px!important;
  height:42px!important;
  font-size:2.45rem!important;
  line-height:1!important;
  display:flex!important;
  align-items:center!important;
  justify-content:center!important;
  color:#ffd21c!important;
  filter:drop-shadow(0 0 10px rgba(255,210,28,.30))!important;
}
.metric-grid-hero .metric-icon-whatsapp{
  width:42px!important;
  height:42px!important;
  display:flex!important;
  align-items:center!important;
  justify-content:center!important;
}
.metric-grid-hero .metric-icon-whatsapp img{
  width:42px!important;
  height:42px!important;
  object-fit:contain!important;
}
.metric-grid-hero .metric-label{
  height:22px!important;
  line-height:22px!important;
  display:block!important;
  text-align:center!important;
}

/* Como funciona igual ao print: título central, lista limpa à esquerda, QR à direita */
.how-print{
  background:#0b0000!important;
  padding-top:72px!important;
  padding-bottom:82px!important;
}
.how-print .section-title{
  margin-bottom:42px!important;
}
.how-print .section-title h2{
  font-size:clamp(2.4rem,4.2vw,4rem)!important;
  letter-spacing:-.055em!important;
  margin:0!important;
}
.how-print-grid{
  width:min(100%, 1120px)!important;
  margin:0 auto!important;
  display:grid!important;
  grid-template-columns:minmax(0, 1fr) 300px!important;
  gap:90px!important;
  align-items:center!important;
}
.how-print-steps{
  display:grid!important;
  gap:18px!important;
  margin:0!important;
  padding:0!important;
  list-style:none!important;
}
.how-print-steps li{
  background:transparent!important;
  border:0!important;
  border-radius:0!important;
  padding:0!important;
  display:flex!important;
  align-items:center!important;
  gap:16px!important;
  color:#fff!important;
  font-size:1.08rem!important;
  line-height:1.3!important;
  font-weight:900!important;
  opacity:0;
  transform:translateX(-36px);
}
.how-print-steps li span{
  flex:0 0 31px!important;
  width:31px!important;
  height:31px!important;
  border:2px solid var(--red)!important;
  border-radius:50%!important;
  display:grid!important;
  place-items:center!important;
  color:transparent!important;
  font-size:0!important;
  box-shadow:0 0 18px rgba(238,17,23,.18)!important;
  position:relative!important;
}
.how-print-steps li span::after{
  content:"✓";
  color:var(--red);
  font-size:.9rem;
  line-height:1;
  font-weight:1000;
}
.how-print-steps li strong{
  font-weight:950!important;
}
#como-funciona.in-view .how-print-steps li{
  animation:stepSlideRightClean .58s cubic-bezier(.2,.8,.2,1) forwards!important;
}
#como-funciona.in-view .how-print-steps li:nth-child(1){animation-delay:.06s!important}
#como-funciona.in-view .how-print-steps li:nth-child(2){animation-delay:.18s!important}
#como-funciona.in-view .how-print-steps li:nth-child(3){animation-delay:.30s!important}
#como-funciona.in-view .how-print-steps li:nth-child(4){animation-delay:.42s!important}
#como-funciona.in-view .how-print-steps li:nth-child(5){animation-delay:.54s!important}
#como-funciona.in-view .how-print-steps li:nth-child(6){animation-delay:.66s!important}
@keyframes stepSlideRightClean{
  from{opacity:0;transform:translateX(-36px)}
  to{opacity:1;transform:translateX(0)}
}
.how-print .qr-showcase{
  justify-self:center!important;
  text-align:center!important;
}
.how-print .fake-qr-img{
  width:220px!important;
  height:220px!important;
  padding:10px!important;
  border-radius:12px!important;
  background:#fff!important;
  box-shadow:0 24px 80px rgba(0,0,0,.52)!important;
  image-rendering:pixelated!important;
}

/* título dos produtos em uma linha no desktop */
.pricing-main-title{
  white-space:nowrap!important;
  font-size:clamp(2.2rem,4vw,4.15rem)!important;
  line-height:1.05!important;
  letter-spacing:-.06em!important;
}
.pricing-title{
  max-width:1120px!important;
}
.pricing-title p{
  margin-top:8px!important;
  font-size:1.04rem!important;
}

@media (max-width:1024px){
  .how-print-grid{
    grid-template-columns:1fr!important;
    gap:38px!important;
  }
  .how-print .qr-showcase{
    order:2;
  }
  .how-print-steps{
    order:1;
  }
  .pricing-main-title{
    white-space:normal!important;
  }
}
@media (max-width:760px){
  .metric-grid-hero{
    grid-template-columns:1fr!important;
  }
  .metric-grid-hero .metric-card{
    grid-template-columns:52px 1fr!important;
    grid-template-rows:auto!important;
    justify-items:start!important;
    text-align:left!important;
  }
  .metric-grid-hero .metric-label{
    text-align:left!important;
  }
  .how-print-steps li{
    font-size:1rem!important;
    align-items:flex-start!important;
  }
  .pricing-main-title{
    font-size:2.18rem!important;
  }
}



/* ===== correção overflow métricas + etapas numeradas ===== */

/* Cards do topo sem texto escapando para fora */
.metric-grid-hero{
  gap:12px!important;
  max-width:700px!important;
}
.metric-grid-hero .metric-card{
  min-height:116px!important;
  height:auto!important;
  padding:16px 14px 18px!important;
  grid-template-rows:44px minmax(36px, auto)!important;
  overflow:hidden!important;
}
.metric-grid-hero .metric-label,
.metric-grid-hero .metric-card-number span,
.metric-grid-hero .metric-card-icon span:last-child{
  height:auto!important;
  min-height:36px!important;
  max-width:100%!important;
  display:flex!important;
  align-items:center!important;
  justify-content:center!important;
  text-align:center!important;
  line-height:1.15!important;
  white-space:normal!important;
  overflow-wrap:normal!important;
  word-break:normal!important;
  font-size:.95rem!important;
  padding:0 4px!important;
}
.metric-grid-hero .metric-icon-bolt{
  width:44px!important;
  height:44px!important;
  font-size:2.6rem!important;
}
.metric-grid-hero .metric-icon-whatsapp,
.metric-grid-hero .metric-icon-whatsapp img{
  width:44px!important;
  height:44px!important;
}
.metric-grid-hero .metric-card-number strong{
  font-size:2.25rem!important;
  height:44px!important;
}

/* Como funciona: visual igual ao print, com texto numerado */
.how-print-steps li{
  overflow:visible!important;
}
.how-print-steps li span{
  flex:0 0 31px!important;
  width:31px!important;
  height:31px!important;
  color:transparent!important;
}
.how-print-steps li span::after{
  content:"✓"!important;
  color:var(--red)!important;
  font-size:.9rem!important;
  font-weight:1000!important;
}
.how-print-steps li strong{
  display:block!important;
  color:#fff!important;
  font-weight:950!important;
  white-space:normal!important;
  line-height:1.28!important;
}
@media (max-width:760px){
  .metric-grid-hero .metric-card{
    min-height:92px!important;
    grid-template-columns:52px 1fr!important;
    grid-template-rows:auto!important;
    overflow:hidden!important;
  }
  .metric-grid-hero .metric-label,
  .metric-grid-hero .metric-card-number span,
  .metric-grid-hero .metric-card-icon span:last-child{
    justify-content:flex-start!important;
    text-align:left!important;
    min-height:auto!important;
  }
}


/* Troca do ícone de fotos: bolinha vermelha com verificado branco */
.feature-list li.photo-count .feat-icon{
  position:relative!important;
  width:24px!important;
  height:24px!important;
  min-width:24px!important;
  border:2px solid #ef1117!important;
  border-radius:999px!important;
  display:inline-flex!important;
  align-items:center!important;
  justify-content:center!important;
  color:#fff!important;
  background:#ef1117!important;
  box-shadow:0 0 16px rgba(239,17,23,.22)!important;
}

.feature-list li.photo-count .feat-icon::after{
  content:"✓"!important;
  display:flex!important;
  align-items:center!important;
  justify-content:center!important;
  width:auto!important;
  height:auto!important;
  background:transparent!important;
  color:#fff!important;
  font-size:.82rem!important;
  line-height:1!important;
  font-weight:1000!important;
}


/* Ajuste: remover a faixa escura extra abaixo do hero */
.hero-reference.section-blur::after{display:none !important;}



/* ===== efeito de aparecer de baixo para cima nos cards e FAQ ===== */
#produtos .plan-card h3,
#produtos .plan-card .old-price,
#produtos .plan-card .price,
#produtos .plan-card .badge,
#produtos .plan-card .feature-list li,
#produtos .plan-card .btn,
#faq .faq-list details{
  opacity:0;
  transform:translateY(30px);
  will-change:opacity, transform;
}

#produtos.in-view .plan-card h3,
#produtos.in-view .plan-card .old-price,
#produtos.in-view .plan-card .price,
#produtos.in-view .plan-card .badge,
#produtos.in-view .plan-card .feature-list li,
#produtos.in-view .plan-card .btn,
#faq.in-view .faq-list details{
  animation:riseLikeRefund .72s cubic-bezier(.2,.8,.2,1) forwards;
}

#produtos.in-view .plan-card:nth-child(1) h3{animation-delay:.04s}
#produtos.in-view .plan-card:nth-child(1) .old-price{animation-delay:.10s}
#produtos.in-view .plan-card:nth-child(1) .price{animation-delay:.16s}
#produtos.in-view .plan-card:nth-child(1) .badge{animation-delay:.22s}
#produtos.in-view .plan-card:nth-child(1) .feature-list li:nth-child(1){animation-delay:.28s}
#produtos.in-view .plan-card:nth-child(1) .feature-list li:nth-child(2){animation-delay:.34s}
#produtos.in-view .plan-card:nth-child(1) .feature-list li:nth-child(3){animation-delay:.40s}
#produtos.in-view .plan-card:nth-child(1) .feature-list li:nth-child(4){animation-delay:.46s}
#produtos.in-view .plan-card:nth-child(1) .feature-list li:nth-child(5){animation-delay:.52s}
#produtos.in-view .plan-card:nth-child(1) .feature-list li:nth-child(6){animation-delay:.58s}
#produtos.in-view .plan-card:nth-child(1) .feature-list li:nth-child(7){animation-delay:.64s}
#produtos.in-view .plan-card:nth-child(1) .feature-list li:nth-child(8){animation-delay:.70s}
#produtos.in-view .plan-card:nth-child(1) .btn{animation-delay:.76s}

#produtos.in-view .plan-card:nth-child(2) h3{animation-delay:.12s}
#produtos.in-view .plan-card:nth-child(2) .old-price{animation-delay:.18s}
#produtos.in-view .plan-card:nth-child(2) .price{animation-delay:.24s}
#produtos.in-view .plan-card:nth-child(2) .badge{animation-delay:.30s}
#produtos.in-view .plan-card:nth-child(2) .feature-list li:nth-child(1){animation-delay:.36s}
#produtos.in-view .plan-card:nth-child(2) .feature-list li:nth-child(2){animation-delay:.42s}
#produtos.in-view .plan-card:nth-child(2) .feature-list li:nth-child(3){animation-delay:.48s}
#produtos.in-view .plan-card:nth-child(2) .feature-list li:nth-child(4){animation-delay:.54s}
#produtos.in-view .plan-card:nth-child(2) .feature-list li:nth-child(5){animation-delay:.60s}
#produtos.in-view .plan-card:nth-child(2) .feature-list li:nth-child(6){animation-delay:.66s}
#produtos.in-view .plan-card:nth-child(2) .feature-list li:nth-child(7){animation-delay:.72s}
#produtos.in-view .plan-card:nth-child(2) .feature-list li:nth-child(8){animation-delay:.78s}
#produtos.in-view .plan-card:nth-child(2) .btn{animation-delay:.84s}

#produtos.in-view .plan-card:nth-child(3) h3{animation-delay:.18s}
#produtos.in-view .plan-card:nth-child(3) .old-price{animation-delay:.24s}
#produtos.in-view .plan-card:nth-child(3) .price{animation-delay:.30s}
#produtos.in-view .plan-card:nth-child(3) .badge{animation-delay:.36s}
#produtos.in-view .plan-card:nth-child(3) .feature-list li:nth-child(1){animation-delay:.42s}
#produtos.in-view .plan-card:nth-child(3) .feature-list li:nth-child(2){animation-delay:.48s}
#produtos.in-view .plan-card:nth-child(3) .feature-list li:nth-child(3){animation-delay:.54s}
#produtos.in-view .plan-card:nth-child(3) .feature-list li:nth-child(4){animation-delay:.60s}
#produtos.in-view .plan-card:nth-child(3) .feature-list li:nth-child(5){animation-delay:.66s}
#produtos.in-view .plan-card:nth-child(3) .feature-list li:nth-child(6){animation-delay:.72s}
#produtos.in-view .plan-card:nth-child(3) .feature-list li:nth-child(7){animation-delay:.78s}
#produtos.in-view .plan-card:nth-child(3) .feature-list li:nth-child(8){animation-delay:.84s}
#produtos.in-view .plan-card:nth-child(3) .btn{animation-delay:.90s}

#produtos.in-view .plan-card:nth-child(4) h3{animation-delay:.24s}
#produtos.in-view .plan-card:nth-child(4) .old-price{animation-delay:.30s}
#produtos.in-view .plan-card:nth-child(4) .price{animation-delay:.36s}
#produtos.in-view .plan-card:nth-child(4) .badge{animation-delay:.42s}
#produtos.in-view .plan-card:nth-child(4) .feature-list li:nth-child(1){animation-delay:.48s}
#produtos.in-view .plan-card:nth-child(4) .feature-list li:nth-child(2){animation-delay:.54s}
#produtos.in-view .plan-card:nth-child(4) .feature-list li:nth-child(3){animation-delay:.60s}
#produtos.in-view .plan-card:nth-child(4) .feature-list li:nth-child(4){animation-delay:.66s}
#produtos.in-view .plan-card:nth-child(4) .feature-list li:nth-child(5){animation-delay:.72s}
#produtos.in-view .plan-card:nth-child(4) .feature-list li:nth-child(6){animation-delay:.78s}
#produtos.in-view .plan-card:nth-child(4) .feature-list li:nth-child(7){animation-delay:.84s}
#produtos.in-view .plan-card:nth-child(4) .feature-list li:nth-child(8){animation-delay:.90s}
#produtos.in-view .plan-card:nth-child(4) .btn{animation-delay:.96s}

#faq.in-view .faq-list details:nth-child(1){animation-delay:.06s}
#faq.in-view .faq-list details:nth-child(2){animation-delay:.13s}
#faq.in-view .faq-list details:nth-child(3){animation-delay:.20s}
#faq.in-view .faq-list details:nth-child(4){animation-delay:.27s}
#faq.in-view .faq-list details:nth-child(5){animation-delay:.34s}
#faq.in-view .faq-list details:nth-child(6){animation-delay:.41s}
#faq.in-view .faq-list details:nth-child(7){animation-delay:.48s}
#faq.in-view .faq-list details:nth-child(8){animation-delay:.55s}
#faq.in-view .faq-list details:nth-child(9){animation-delay:.62s}
#faq.in-view .faq-list details:nth-child(10){animation-delay:.69s}

@keyframes riseLikeRefund{
  from{opacity:0;transform:translateY(30px)}
  to{opacity:1;transform:translateY(0)}
}


/* Ícones SVG do topo: mais simétricos e fáceis de ajustar */
.metric-svg-icon{
  width:46px!important;
  height:46px!important;
  display:flex!important;
  align-items:center!important;
  justify-content:center!important;
}

.metric-svg-icon svg{
  width:46px!important;
  height:46px!important;
  display:block!important;
}

.metric-icon-bolt svg path{
  fill:#ff9d35;
  filter:drop-shadow(0 0 8px rgba(255,157,53,.34));
}

.metric-icon-whatsapp svg circle{
  fill:#35d56d;
  stroke:#fff;
  stroke-width:5;
}

.metric-icon-whatsapp .wpp-mark{
  fill:none;
  stroke:#fff;
  stroke-width:3.2;
  stroke-linejoin:round;
}

.metric-icon-whatsapp .wpp-phone{
  fill:#fff;
  transform:scale(.54);
  transform-origin:center;
}

.metric-grid-hero .metric-card-number strong{
  min-width:48px;
}



/* Modal de página em andamento igual ao print */
.draft-modal{
  background:rgba(0,0,0,.62)!important;
  backdrop-filter:blur(8px)!important;
  padding:18px!important;
}
.draft-modal.show{
  display:flex!important;
}
.draft-card-print{
  width:min(448px, calc(100vw - 28px))!important;
  background:linear-gradient(180deg,#202020,#1c1c1c)!important;
  border:1px solid rgba(255,255,255,.08)!important;
  border-radius:17px!important;
  padding:34px 32px 32px!important;
  text-align:center!important;
  box-shadow:0 28px 80px rgba(0,0,0,.58)!important;
  overflow:hidden!important;
}
.draft-card-print::before{
  display:none!important;
  content:none!important;
}
.draft-card-print .modal-close{
  position:absolute!important;
  top:16px!important;
  right:20px!important;
  width:28px!important;
  height:28px!important;
  display:grid!important;
  place-items:center!important;
  padding:0!important;
  background:transparent!important;
  border:0!important;
  color:#8f8f8f!important;
  font-size:2rem!important;
  line-height:1!important;
  font-weight:300!important;
  cursor:pointer!important;
  transition:color .2s ease, transform .2s ease!important;
}
.draft-card-print .modal-close:hover{
  color:#fff!important;
  transform:rotate(90deg)!important;
}
.draft-print-icon{
  width:64px!important;
  height:64px!important;
  margin:0 auto 24px!important;
  border-radius:50%!important;
  background:rgba(239,17,23,.18)!important;
  color:#ef1117!important;
  display:grid!important;
  place-items:center!important;
  box-shadow:none!important;
}
.draft-print-icon svg{
  width:32px!important;
  height:32px!important;
}
.draft-print-icon .doc-line{
  fill:none!important;
  stroke:#ef1117!important;
  stroke-width:3!important;
  stroke-linecap:round!important;
  stroke-linejoin:round!important;
}
.draft-card-print h2{
  margin:0 auto 14px!important;
  color:#fff!important;
  font-size:clamp(1.62rem, 5vw, 1.95rem)!important;
  line-height:1.15!important;
  letter-spacing:-.035em!important;
  font-weight:1000!important;
}
.draft-card-print p{
  margin:0 auto 32px!important;
  max-width:372px!important;
  color:#aaa!important;
  font-size:1rem!important;
  line-height:1.45!important;
  font-weight:750!important;
}
.draft-card-print .btn{
  width:100%!important;
  min-height:48px!important;
  border-radius:11px!important;
  font-size:1rem!important;
  font-weight:950!important;
  margin:0!important;
  display:flex!important;
  align-items:center!important;
  justify-content:center!important;
  gap:12px!important;
  transform:none!important;
}
.draft-card-print .modal-primary-action{
  background:linear-gradient(135deg,#ef1117,#ff5261)!important;
  box-shadow:none!important;
  color:#fff!important;
}
.draft-card-print .modal-primary-action:hover{
  transform:translateY(-1px)!important;
  box-shadow:0 16px 32px rgba(239,17,23,.22)!important;
}
.draft-card-print .modal-btn-icon{
  width:22px!important;
  height:22px!important;
  display:inline-grid!important;
  place-items:center!important;
}
.draft-card-print .modal-btn-icon svg{
  width:21px!important;
  height:21px!important;
}
.draft-card-print .modal-btn-icon circle,
.draft-card-print .modal-btn-icon path{
  fill:none!important;
  stroke:#fff!important;
  stroke-width:2.2!important;
  stroke-linecap:round!important;
  stroke-linejoin:round!important;
}
.draft-card-print .modal-secondary-action{
  margin-top:13px!important;
  background:rgba(255,255,255,.015)!important;
  border:1px solid rgba(255,255,255,.18)!important;
  color:#d8d8d8!important;
  box-shadow:none!important;
}
.draft-card-print .modal-secondary-action:hover{
  background:rgba(255,255,255,.045)!important;
  border-color:rgba(255,255,255,.28)!important;
}
@media (max-width:520px){
  .draft-card-print{
    padding:30px 24px 26px!important;
  }
  .draft-card-print p{
    margin-bottom:26px!important;
  }
}


/* Ajustes finais do modal: clique fora fecha */
.draft-modal{cursor:pointer!important;}
.draft-modal .modal-card{cursor:default!important;}
.draft-card-print .modal-primary-action{min-height:50px!important;}
.draft-card-print .modal-secondary-action{min-height:50px!important;}
.draft-card-print .modal-btn-icon svg{display:block!important;}
.draft-card-print .modal-btn-icon circle,
.draft-card-print .modal-btn-icon path{stroke-width:2.1!important;}

.draft-card-print .modal-btn-icon .modal-icon-ring{
  fill:none!important;
  stroke:#fff!important;
  stroke-width:2.15!important;
  stroke-linecap:round!important;
  stroke-linejoin:round!important;
}
.draft-card-print .modal-btn-icon .modal-icon-play{
  fill:#fff!important;
  stroke:none!important;
}

/* Ajuste final: ícone do WhatsApp do card igual ao original */
.metric-grid-hero .metric-icon-whatsapp{
  width:42px!important;
  height:42px!important;
  display:flex!important;
  align-items:center!important;
  justify-content:center!important;
  filter:none!important;
}
.metric-grid-hero .metric-icon-whatsapp img{
  width:42px!important;
  height:42px!important;
  display:block!important;
  object-fit:contain!important;
  image-rendering:auto;
  filter:drop-shadow(0 4px 8px rgba(0,0,0,.18));
}

/* Ajuste do ícone do botão "Continuar edição" para ficar igual ao print */
.draft-card-print .modal-btn-icon{
  width:20px!important;
  height:20px!important;
  display:inline-flex!important;
  align-items:center!important;
  justify-content:center!important;
  flex:0 0 20px!important;
}
.draft-card-print .modal-btn-icon .continue-play-icon{
  width:20px!important;
  height:20px!important;
  display:block!important;
}
.draft-card-print .modal-btn-icon .modal-icon-ring{
  fill:none!important;
  stroke:#fff!important;
  stroke-width:2.05!important;
  opacity:1!important;
}
.draft-card-print .modal-btn-icon .modal-icon-play{
  fill:#fff!important;
  stroke:none!important;
}


/* Ajuste do calendário para escolher mês e ano diretamente */
.calendar-widget{width:360px;max-width:100%;margin-top:24px}
.calendar-head{display:flex;align-items:center;justify-content:space-between;gap:18px;margin-bottom:16px}
.calendar-selectors{display:flex;align-items:center;gap:10px;flex-wrap:wrap}
.calendar-select-wrap{position:relative;display:inline-flex;align-items:center}
.calendar-select-wrap:after{content:"⌄";position:absolute;right:10px;top:50%;transform:translateY(-54%);color:#ef1117;font-size:1rem;font-weight:1000;pointer-events:none;line-height:1}
.calendar-select-wrap select{appearance:none;-webkit-appearance:none;-moz-appearance:none;background:transparent;border:0;color:#fff;font-size:1.45rem;font-weight:1000;line-height:1;padding:0 24px 0 0;cursor:pointer;text-transform:lowercase}
.calendar-year-wrap select{text-transform:none;min-width:78px}
.calendar-select-wrap select:focus{outline:none;color:#fff}
.calendar-nav{display:flex;align-items:center;gap:4px}
.calendar-head button{background:transparent;border:0;color:#ef1117;font-size:2rem;font-weight:900;cursor:pointer;padding:0 8px;line-height:1}

/* Ajuste visual das etapas */
.pro-progress{display:flex;align-items:center;gap:16px;margin:0 0 34px;flex-wrap:nowrap}
.pro-progress .progress-node{width:30px;height:30px;border-radius:50%;display:grid;place-items:center;position:relative;flex:none;background:transparent;border:3px dashed rgba(128,100,156,.85)}
.pro-progress .progress-node .node-check,.pro-progress .progress-node .node-current,.pro-progress .progress-node .node-future{display:none}
.pro-progress .progress-node.done{border:3px solid #ef1117;background:transparent}
.pro-progress .progress-node.done .node-check{display:block;color:#ef1117;font-size:14px;line-height:1;font-weight:1000}
.pro-progress .progress-node.active{border:3px solid #ef1117;background:transparent;box-shadow:none}
.pro-progress .progress-node.active .node-current{display:none}
.pro-progress .progress-node:not(.done):not(.active){border:3px dashed rgba(110,97,145,.95)}
.pro-progress i{height:4px;width:74px;background:#ece8ef;border-radius:999px;opacity:1;flex:none}
.pro-progress i.done{background:#ece8ef}

@media (max-width:560px){
  .calendar-head{gap:10px;align-items:flex-start;flex-direction:column}
  .calendar-select-wrap select{font-size:1.25rem}
  .calendar-nav{margin-left:auto}
  .pro-progress{gap:10px;overflow-x:auto;padding-bottom:4px}
  .pro-progress .progress-node{width:28px;height:28px}
  .pro-progress i{width:40px;height:4px}
}


/* ===== Ajustes finos: seletor de calendário e etapas simétricas ===== */
.calendar-selectors{
  gap:14px !important;
}
.calendar-select-wrap{
  min-height:34px;
}
.calendar-select-wrap::after{
  content:"›" !important;
  right:4px !important;
  top:50% !important;
  transform:translateY(-52%) rotate(90deg) !important;
  color:#ef1117 !important;
  font-size:2rem !important;
  font-weight:900 !important;
  line-height:1 !important;
}
.calendar-select-wrap select{
  padding:0 30px 0 0 !important;
}
.calendar-head button,
.calendar-select-wrap::after{
  display:inline-grid;
  place-items:center;
}
.calendar-head button{
  width:28px;
  height:28px;
  padding:0 !important;
  font-size:2rem !important;
}

/* remove o check duplicado herdado da regra antiga */
.pro-progress .progress-node.done::after,
.pro-progress span.progress-node.done::after{
  content:none !important;
  display:none !important;
}
.pro-progress .progress-node{
  width:30px !important;
  height:30px !important;
  border-radius:999px !important;
  display:grid !important;
  place-items:center !important;
  position:relative !important;
  overflow:hidden !important;
}
.pro-progress .progress-node.done{
  border:3px solid #ef1117 !important;
  background:transparent !important;
}
.pro-progress .progress-node.done .node-check{
  display:grid !important;
  place-items:center !important;
  color:#ef1117 !important;
  font-size:14px !important;
  font-weight:1000 !important;
  line-height:1 !important;
  width:100% !important;
  height:100% !important;
  margin:0 !important;
  transform:translateY(-.5px);
}
.pro-progress .progress-node.active{
  border:3px solid #ef1117 !important;
  background:transparent !important;
  box-shadow:none !important;
}
.pro-progress .progress-node.active .node-current,
.pro-progress .progress-node .node-future{
  display:none !important;
}
.pro-progress .progress-node:not(.done):not(.active){
  border:3px dashed rgba(110,97,145,.95) !important;
}

@media (max-width:560px){
  .calendar-select-wrap::after,
  .calendar-head button{
    font-size:1.7rem !important;
    width:24px;
    height:24px;
  }
  .calendar-select-wrap select{
    padding-right:24px !important;
  }
  .pro-progress .progress-node{
    width:28px !important;
    height:28px !important;
  }
  .pro-progress .progress-node.done .node-check{
    font-size:13px !important;
  }
}



/* ===== Logo oficial MimoQR: coração em QR Code ===== */
.brand-logo-mark{
  width:34px!important;
  height:34px!important;
  min-width:34px!important;
  border-radius:0!important;
  background:transparent!important;
  box-shadow:none!important;
  filter:drop-shadow(0 0 10px rgba(239,17,23,.28))!important;
  overflow:visible!important;
  display:inline-flex!important;
  align-items:center!important;
  justify-content:center!important;
}

.brand-logo-mark img{
  width:100%!important;
  height:100%!important;
  object-fit:contain!important;
  display:block!important;
}

.site-header.compact .brand-logo-mark,
.header-like-print .brand-logo-mark,
.qr-scroll-header .brand-logo-mark{
  width:32px!important;
  height:32px!important;
  min-width:32px!important;
}

.brand{
  gap:11px!important;
}

.footer-logo-official{
  width:72px!important;
  height:72px!important;
  color:transparent!important;
  font-size:0!important;
  line-height:0!important;
  display:flex!important;
  align-items:center!important;
  justify-content:flex-start!important;
  margin-bottom:22px!important;
}

.footer-logo-official img{
  width:72px!important;
  height:72px!important;
  object-fit:contain!important;
  display:block!important;
  filter:drop-shadow(0 0 12px rgba(239,17,23,.24))!important;
}

@media (max-width:760px){
  .brand-logo-mark{
    width:30px!important;
    height:30px!important;
    min-width:30px!important;
  }
  .footer-logo-official,
  .footer-logo-official img{
    width:58px!important;
    height:58px!important;
  }
}



/* ===== Ajustes finais: Como funciona mais lento + QR scan contínuo + pagamentos brancos ===== */

/* Como funciona: animação 1 a 6 mais calma */
#como-funciona.in-view .how-print-steps li{
  animation-duration:1.05s!important;
  animation-timing-function:cubic-bezier(.16,.82,.24,1)!important;
}

#como-funciona.in-view .how-print-steps li:nth-child(1){animation-delay:.18s!important}
#como-funciona.in-view .how-print-steps li:nth-child(2){animation-delay:.55s!important}
#como-funciona.in-view .how-print-steps li:nth-child(3){animation-delay:.92s!important}
#como-funciona.in-view .how-print-steps li:nth-child(4){animation-delay:1.29s!important}
#como-funciona.in-view .how-print-steps li:nth-child(5){animation-delay:1.66s!important}
#como-funciona.in-view .how-print-steps li:nth-child(6){animation-delay:2.03s!important}

/* QR Code: linha vermelha passando de tempo em tempo */
.qr-scanline{
  left:14px!important;
  right:14px!important;
  top:12px!important;
  height:10px!important;
  border-radius:999px!important;
  background:linear-gradient(90deg, transparent, rgba(255,20,28,.98), rgba(255,120,130,.72), rgba(255,20,28,.98), transparent)!important;
  box-shadow:0 0 16px rgba(255,20,28,.45)!important;
  filter:blur(.4px)!important;
}

#como-funciona.in-view .qr-scanline{
  animation:qrScanLoop 4.6s ease-in-out .9s infinite!important;
}

@keyframes qrScanLoop{
  0%{opacity:0;transform:translateY(0)}
  10%{opacity:1;transform:translateY(0)}
  48%{opacity:1;transform:translateY(196px)}
  58%{opacity:0;transform:translateY(204px)}
  100%{opacity:0;transform:translateY(204px)}
}

/* Métodos de pagamento: ícones corretos em branco */
.footer-symmetric .footer-reference-payments .payment-icons-white,
.footer-reference-payments .payment-icons-white{
  display:flex!important;
  align-items:center!important;
  justify-content:flex-start!important;
  gap:24px!important;
  margin-top:22px!important;
  flex-wrap:nowrap!important;
  background:transparent!important;
}

.payment-icons-white .payment-logo{
  display:inline-flex!important;
  align-items:center!important;
  justify-content:center!important;
  background:transparent!important;
  border:0!important;
  padding:0!important;
  margin:0!important;
  box-shadow:none!important;
  color:#fff!important;
  line-height:1!important;
  min-width:0!important;
  height:44px!important;
}

.payment-icons-white svg{
  display:block!important;
  height:44px!important;
  fill:#fff!important;
  color:#fff!important;
  overflow:visible!important;
}

.payment-icons-white .payment-visa svg{
  width:84px!important;
}

.payment-icons-white .payment-mastercard svg{
  width:78px!important;
}

.payment-icons-white .payment-pix svg{
  width:112px!important;
}

.payment-icons-white .visa-text{
  fill:#fff!important;
  font-family:Arial Black, Arial, Helvetica, sans-serif!important;
  font-size:27px!important;
  font-style:italic!important;
  font-weight:1000!important;
  letter-spacing:-2px!important;
}

.payment-icons-white .payment-mastercard circle{
  fill:none!important;
  stroke:#fff!important;
  stroke-width:4!important;
}

.payment-icons-white .payment-mastercard path{
  fill:#fff!important;
  opacity:.96!important;
}

.payment-icons-white .pix-symbol-svg rect{
  fill:#fff!important;
}

.payment-icons-white .pix-text{
  fill:#fff!important;
  font-family:Arial Rounded MT Bold, Arial Black, Arial, Helvetica, sans-serif!important;
  font-size:31px!important;
  font-weight:1000!important;
  letter-spacing:-1px!important;
}

@media (max-width:760px){
  .footer-symmetric .footer-reference-payments .payment-icons-white,
  .footer-reference-payments .payment-icons-white{
    gap:18px!important;
    flex-wrap:wrap!important;
  }
  .payment-icons-white .payment-visa svg{width:74px!important}
  .payment-icons-white .payment-mastercard svg{width:66px!important}
  .payment-icons-white .payment-pix svg{width:98px!important}
}


/* ===== Pagamentos iguais ao print ===== */
.footer-reference-payments h3{
  margin-bottom:18px!important;
}
.footer-reference-payments .payment-icons-print{
  display:flex!important;
  align-items:center!important;
  justify-content:flex-start!important;
  gap:18px!important;
  flex-wrap:nowrap!important;
  margin-top:8px!important;
}
.footer-reference-payments .payment-icons-print .payment-logo{
  display:inline-flex!important;
  align-items:center!important;
  justify-content:center!important;
  height:42px!important;
  line-height:1!important;
  background:transparent!important;
  border:0!important;
  box-shadow:none!important;
  padding:0!important;
  margin:0!important;
}
.footer-reference-payments .payment-icons-print svg{
  display:block!important;
  height:42px!important;
  overflow:visible!important;
}
.footer-reference-payments .payment-icons-print .payment-visa svg{width:74px!important}
.footer-reference-payments .payment-icons-print .payment-mastercard svg{width:72px!important}
.footer-reference-payments .payment-icons-print .payment-pix svg{width:120px!important}
.footer-reference-payments .payment-icons-print .visa-text{
  fill:#fff!important;
  font-family:Arial Black, Arial, Helvetica, sans-serif!important;
  font-size:27px!important;
  font-style:italic!important;
  font-weight:1000!important;
  letter-spacing:-2.3px!important;
}
.footer-reference-payments .payment-icons-print .mc-card{fill:#f6f6f6!important}
.footer-reference-payments .payment-icons-print .mc-left{fill:#d3d3d3!important}
.footer-reference-payments .payment-icons-print .mc-right{fill:#a9a9a9!important}
.footer-reference-payments .payment-icons-print .mc-mid{fill:#bdbdbd!important}
.footer-reference-payments .payment-icons-print .pix-mark path,
.footer-reference-payments .payment-icons-print .pix-text{fill:#fff!important}
.footer-reference-payments .payment-icons-print .pix-text{
  font-family:Arial Rounded MT Bold, Arial, Helvetica, sans-serif!important;
  font-size:31px!important;
  font-weight:700!important;
  letter-spacing:-1px!important;
}
@media (max-width: 640px){
  .footer-reference-payments .payment-icons-print{gap:14px!important;flex-wrap:wrap!important}
  .footer-reference-payments .payment-icons-print .payment-visa svg{width:66px!important}
  .footer-reference-payments .payment-icons-print .payment-mastercard svg{width:64px!important}
  .footer-reference-payments .payment-icons-print .payment-pix svg{width:104px!important}
}


/* ===== Logotipos de pagamento iguais às referências do usuário ===== */
.footer-reference-payments .payment-icons-exact{
  display:flex!important;
  align-items:center!important;
  justify-content:flex-start!important;
  gap:22px!important;
  flex-wrap:nowrap!important;
  margin-top:10px!important;
}
.footer-reference-payments .payment-icons-exact .payment-logo{
  display:inline-flex!important;
  align-items:center!important;
  justify-content:center!important;
  background:transparent!important;
  border:0!important;
  box-shadow:none!important;
  padding:0!important;
  margin:0!important;
  line-height:1!important;
}
.footer-reference-payments .payment-icons-exact img{
  display:block!important;
  width:auto!important;
  height:auto!important;
  max-width:none!important;
}
.footer-reference-payments .payment-icons-exact .payment-visa img{width:72px!important;}
.footer-reference-payments .payment-icons-exact .payment-mastercard img{width:126px!important;}
.footer-reference-payments .payment-icons-exact .payment-pix img{width:132px!important;}
@media (max-width: 640px){
  .footer-reference-payments .payment-icons-exact{gap:14px!important; flex-wrap:wrap!important;}
  .footer-reference-payments .payment-icons-exact .payment-visa img{width:62px!important;}
  .footer-reference-payments .payment-icons-exact .payment-mastercard img{width:110px!important;}
  .footer-reference-payments .payment-icons-exact .payment-pix img{width:118px!important;}
}


/* ===== Correção final: métodos de pagamento simétricos ===== */
.footer-reference-payments .payment-icons-exact{
  display:flex!important;
  align-items:center!important;
  justify-content:flex-start!important;
  gap:22px!important;
  flex-wrap:nowrap!important;
  margin-top:10px!important;
}

.footer-reference-payments .payment-icons-exact .payment-logo{
  height:36px!important;
  min-height:36px!important;
  display:flex!important;
  align-items:center!important;
  justify-content:center!important;
  background:transparent!important;
  border:0!important;
  box-shadow:none!important;
  padding:0!important;
  margin:0!important;
  line-height:1!important;
  overflow:visible!important;
}

.footer-reference-payments .payment-icons-exact .payment-logo img{
  display:block!important;
  width:auto!important;
  object-fit:contain!important;
  max-width:100%!important;
  filter:none!important;
}

.footer-reference-payments .payment-icons-exact .payment-visa{
  width:58px!important;
}
.footer-reference-payments .payment-icons-exact .payment-visa img{
  height:20px!important;
  max-height:20px!important;
}

.footer-reference-payments .payment-icons-exact .payment-mastercard{
  width:72px!important;
}
.footer-reference-payments .payment-icons-exact .payment-mastercard img{
  height:27px!important;
  max-height:27px!important;
}

.footer-reference-payments .payment-icons-exact .payment-pix{
  width:96px!important;
}
.footer-reference-payments .payment-icons-exact .payment-pix img{
  height:27px!important;
  max-height:27px!important;
}

.footer-reference-payments .payment-icons-exact .payment-visa img,
.footer-reference-payments .payment-icons-exact .payment-mastercard img,
.footer-reference-payments .payment-icons-exact .payment-pix img{
  transform:none!important;
}

@media (max-width:640px){
  .footer-reference-payments .payment-icons-exact{
    gap:16px!important;
    flex-wrap:wrap!important;
  }

  .footer-reference-payments .payment-icons-exact .payment-visa{
    width:52px!important;
  }
  .footer-reference-payments .payment-icons-exact .payment-visa img{
    height:18px!important;
    max-height:18px!important;
  }

  .footer-reference-payments .payment-icons-exact .payment-mastercard{
    width:64px!important;
  }
  .footer-reference-payments .payment-icons-exact .payment-mastercard img{
    height:24px!important;
    max-height:24px!important;
  }

  .footer-reference-payments .payment-icons-exact .payment-pix{
    width:86px!important;
  }
  .footer-reference-payments .payment-icons-exact .payment-pix img{
    height:24px!important;
    max-height:24px!important;
  }
}


/* ===== Métodos de pagamento: ocupar do começo do M até o final do O ===== */
.footer-reference-payments{
  width:340px!important;
  max-width:100%!important;
}

.footer-reference-payments h3{
  width:100%!important;
  white-space:nowrap!important;
  margin-bottom:18px!important;
}

.footer-reference-payments .payment-icons-exact{
  width:100%!important;
  display:grid!important;
  grid-template-columns:auto auto auto!important;
  align-items:center!important;
  justify-content:space-between!important;
  gap:0!important;
  margin-top:8px!important;
}

.footer-reference-payments .payment-icons-exact .payment-logo{
  height:42px!important;
  min-height:42px!important;
  display:flex!important;
  align-items:center!important;
  justify-content:center!important;
  background:transparent!important;
  border:0!important;
  padding:0!important;
  margin:0!important;
  box-shadow:none!important;
  overflow:visible!important;
}

/* Tamanhos equilibrados e maiores, mantendo simetria visual */
.footer-reference-payments .payment-icons-exact .payment-visa{
  width:72px!important;
  justify-content:flex-start!important;
}
.footer-reference-payments .payment-icons-exact .payment-visa img{
  width:72px!important;
  height:auto!important;
  max-height:28px!important;
  object-fit:contain!important;
}

.footer-reference-payments .payment-icons-exact .payment-mastercard{
  width:86px!important;
  justify-content:center!important;
}
.footer-reference-payments .payment-icons-exact .payment-mastercard img{
  width:86px!important;
  height:auto!important;
  max-height:34px!important;
  object-fit:contain!important;
}

.footer-reference-payments .payment-icons-exact .payment-pix{
  width:132px!important;
  justify-content:flex-end!important;
}
.footer-reference-payments .payment-icons-exact .payment-pix img{
  width:132px!important;
  height:auto!important;
  max-height:34px!important;
  object-fit:contain!important;
}

@media (max-width:640px){
  .footer-reference-payments{
    width:min(100%, 320px)!important;
  }

  .footer-reference-payments .payment-icons-exact .payment-visa{
    width:64px!important;
  }
  .footer-reference-payments .payment-icons-exact .payment-visa img{
    width:64px!important;
    max-height:24px!important;
  }

  .footer-reference-payments .payment-icons-exact .payment-mastercard{
    width:76px!important;
  }
  .footer-reference-payments .payment-icons-exact .payment-mastercard img{
    width:76px!important;
    max-height:30px!important;
  }

  .footer-reference-payments .payment-icons-exact .payment-pix{
    width:118px!important;
  }
  .footer-reference-payments .payment-icons-exact .payment-pix img{
    width:118px!important;
    max-height:30px!important;
  }
}



/* ===== Footer oficial em todas as partes do site ===== */
.creator-pro-body,
.checkout-pro-body,
.gift-pro-body{
  background:#050000;
}

.creator-pro-body .site-footer,
.checkout-pro-body .site-footer,
.gift-pro-body .site-footer{
  margin-top:0!important;
  padding-top:86px!important;
  padding-bottom:28px!important;
}

.creator-pro-body .footer-symmetric-wrap,
.checkout-pro-body .footer-symmetric-wrap,
.gift-pro-body .footer-symmetric-wrap{
  width:min(100%, 1240px)!important;
  margin:0 auto!important;
}

.creator-pro-body .whatsapp-float,
.checkout-pro-body .whatsapp-float,
.gift-pro-body .whatsapp-float{
  z-index:90!important;
}

.present-site-footer{
  width:100%!important;
  position:relative!important;
  z-index:2!important;
}

/* Mantém os métodos de pagamento no mesmo padrão em qualquer página */
.creator-pro-body .footer-reference-payments,
.checkout-pro-body .footer-reference-payments,
.gift-pro-body .footer-reference-payments{
  width:340px!important;
  max-width:100%!important;
}

.creator-pro-body .footer-reference-payments .payment-icons-exact,
.checkout-pro-body .footer-reference-payments .payment-icons-exact,
.gift-pro-body .footer-reference-payments .payment-icons-exact{
  width:100%!important;
  display:grid!important;
  grid-template-columns:auto auto auto!important;
  align-items:center!important;
  justify-content:space-between!important;
  gap:0!important;
}

@media (max-width:900px){
  .creator-pro-body .site-footer,
  .checkout-pro-body .site-footer,
  .gift-pro-body .site-footer{
    padding-top:64px!important;
  }
}


/* ===== Fluxo por plano no estilo dos prints ===== */
.creator-pro-body.direct-plan-flow .creator-header{display:none!important;}

.creator-pro-body.direct-plan-flow .creator-pro-shell{
  min-height:560px!important;
  padding-top:70px!important;
  padding-bottom:70px!important;
  background:linear-gradient(180deg,#150404 0%,#080000 100%)!important;
}

.creator-pro-body.direct-plan-flow .pro-step[data-step="0"]{display:none!important;}

.creator-pro-body.direct-plan-flow .pro-progress{
  max-width:860px!important;
  gap:24px!important;
  margin-bottom:28px!important;
}

.creator-pro-body.direct-plan-flow .pro-progress .progress-node{
  width:28px!important;
  height:28px!important;
}

.creator-pro-body.direct-plan-flow .pro-progress i{
  width:62px!important;
  height:4px!important;
}

.creator-pro-body.direct-plan-flow .pro-step h1{
  font-size:1.55rem!important;
  letter-spacing:-.035em!important;
  margin-bottom:10px!important;
}

.creator-pro-body.direct-plan-flow .pro-step p{
  max-width:1050px!important;
  font-size:1rem!important;
  color:#fff!important;
}

.creator-pro-body.direct-plan-flow .pro-step[data-step="1"] .pro-form-grid{
  grid-template-columns:minmax(220px, 420px)!important;
  max-width:520px!important;
}

.creator-pro-body.direct-plan-flow .pro-step[data-step="1"] .pro-form-grid label:not(.title-main-label):not(.movie-only){
  display:none!important;
}

.creator-pro-body.direct-plan-flow .pro-step[data-step="1"] .title-main-label{
  grid-column:1!important;
}

.creator-pro-body.direct-plan-flow[data-plan="filme"] .pro-step[data-step="1"] .movie-only{
  display:grid!important;
  grid-column:1!important;
}

.creator-pro-body.direct-plan-flow:not([data-plan="filme"]) .movie-only{
  display:none!important;
}

.creator-pro-body.direct-plan-flow .pro-nav-actions{
  display:flex!important;
  justify-content:space-between!important;
  max-width:860px!important;
  margin-top:34px!important;
}

.creator-pro-body.direct-plan-flow .phone-live{top:58px!important;}

.creator-pro-body.direct-plan-flow .pro-phone{
  width:320px!important;
  height:640px!important;
  border-color:#292929!important;
}

/* Evento Especial: igual ao modelo mostrado no celular */
.event-screen{
  min-height:100%;
  height:100%;
  background:#c91618;
  color:#fff;
  text-align:center;
  padding:14px 14px 94px;
  overflow:auto;
  position:relative;
}

.event-photo-wrap{
  padding-top:2px;
}

.event-photo{
  height:236px;
  border-radius:16px;
  background:linear-gradient(135deg,#1b1832,#80314a,#f1c475);
  background-size:cover;
  background-position:center;
  margin:0 0 12px;
}

.event-dots{
  display:flex;
  align-items:center;
  justify-content:center;
  gap:8px;
  margin:0 0 14px;
}

.event-dots span{
  width:9px;
  height:9px;
  border-radius:999px;
  background:rgba(255,255,255,.32);
}

.event-dots span.active{
  width:24px;
  background:#fff;
}

.event-screen h2{
  font-family:"Brush Script MT","Segoe Script",cursive;
  font-size:3.15rem;
  line-height:.95;
  font-weight:400;
  margin:0 0 12px;
  color:#fff;
}

.event-message{
  color:#fff;
  font-weight:950;
  line-height:1.34;
  font-size:1rem;
  margin:0 auto 18px;
  max-width:286px;
  white-space:pre-wrap;
  overflow-wrap:anywhere;
}

.event-counter-label{
  font-family:"Brush Script MT","Segoe Script",cursive;
  color:#fff;
  margin-top:2px;
  margin-bottom:12px;
  font-size:2.45rem;
  line-height:1;
}

.event-count-grid{
  display:grid;
  grid-template-columns:repeat(2,minmax(0,1fr));
  gap:18px 16px;
  margin:0 auto 10px;
}

.event-count-card{
  background:rgba(233,0,6,.42);
  border-radius:14px;
  min-height:94px;
  display:flex;
  flex-direction:column;
  justify-content:center;
  align-items:center;
  padding:10px 8px;
}

.event-count-card b{
  display:block;
  color:#fff;
  font-size:1.05rem;
  line-height:1;
  margin-bottom:8px;
}

.event-count-card span{
  display:block;
  color:#fff;
  font-size:.56rem;
  letter-spacing:.02em;
  text-transform:lowercase;
  font-weight:900;
}

.event-player{
  position:absolute!important;
  left:14px!important;
  right:14px!important;
  bottom:12px!important;
  padding:12px 0 4px!important;
  background:#050505!important;
}

.event-player button{
  display:grid;
  place-items:center;
}

/* Delux mantém estilo carta premium */
.phone-delux .photo-card{width:150px!important;height:220px!important;}
.phone-delux .elegant-screen h2{font-size:2.7rem!important;}

/* Poster de Filme estilo poster */
.movie-poster-screen{
  background:#050505!important;
  color:#fff!important;
  padding:0 22px 84px!important;
  position:relative!important;
  overflow:auto!important;
  text-align:left!important;
}

.movie-hero{
  height:215px;
  margin:0 -22px 22px;
  background:linear-gradient(180deg,rgba(255,255,255,.35),rgba(0,0,0,.9)),linear-gradient(135deg,#28313b,#485461);
  background-size:cover;
  background-position:center;
  position:relative;
}

.movie-hero::after{
  content:"";
  position:absolute;
  inset:0;
  background:linear-gradient(180deg,transparent 36%,#050505 100%);
}

.movie-poster-screen h2,
.movie-poster-screen h1{
  font-family:Impact, Haettenschweiler, 'Arial Narrow Bold', sans-serif!important;
  text-transform:none!important;
  font-size:3.2rem!important;
  line-height:.9!important;
  margin:0 0 14px!important;
  color:#fff!important;
  text-shadow:0 3px 0 rgba(255,255,255,.08), 0 7px 20px rgba(0,0,0,.6);
  white-space:pre-line!important;
}

.movie-poster-screen em{
  display:block!important;
  color:#ef1117!important;
  font-size:.92rem!important;
  margin-bottom:20px!important;
  font-weight:900!important;
}

.movie-poster-screen p{
  color:#f2f2f2!important;
  font-size:.92rem!important;
  line-height:1.5!important;
  font-weight:850!important;
}

.movie-poster-screen .movie-player{
  left:14px!important;
  right:14px!important;
  bottom:12px!important;
}

.published-event{
  width:min(430px,100%)!important;
  border:0;
  border-radius:34px;
  box-shadow:0 30px 90px rgba(0,0,0,.55);
  min-height:720px;
  max-width:360px;
}

.published-event .share-final,
.published-movie .share-final{
  position:relative;
  z-index:5;
  margin-top:26px;
}

@media(max-width:1100px){
  .creator-pro-body.direct-plan-flow .creator-pro-shell{
    grid-template-columns:1fr!important;
    padding-top:54px!important;
  }
  .creator-pro-body.direct-plan-flow .phone-live{order:-1!important;}
}

@media(max-width:560px){
  .creator-pro-body.direct-plan-flow .pro-progress{gap:10px!important;}
  .creator-pro-body.direct-plan-flow .pro-progress i{width:34px!important;}
  .event-screen h2{font-size:2.7rem!important;}
  .event-photo{height:220px!important;}
  .event-count-grid{gap:14px 12px!important;}
}


/* ===== Música do YouTube + início exato ===== */
.music-youtube-line{
  display:grid;
  gap:8px;
  max-width:760px;
  margin:12px 0;
  font-weight:950;
}

.music-youtube-line input{
  width:100%;
}

.music-offset small{
  display:block;
  margin-top:6px;
  color:#cfc5c5;
  font-size:.82rem;
  font-weight:800;
}

.music-youtube-guide{
  background:#151515;
  border:1px solid rgba(255,255,255,.12);
  border-radius:10px;
  padding:16px;
  margin-bottom:8px;
}

.music-youtube-guide strong{
  display:block;
  margin-bottom:6px;
}

.music-youtube-guide p{
  margin:0 0 12px!important;
  font-size:.9rem!important;
  color:#d8d0d0!important;
}

.music-result.selected{
  grid-template-columns:64px 1fr auto;
}

.music-result.selected small{
  color:#bdb4b4;
  font-weight:800;
  display:block;
  margin-top:4px;
}

.movie-player{
  grid-template-columns:42px 1fr 34px!important;
}

.player-track-text{
  min-width:0;
  display:block;
}

.player-track-text strong{
  display:block;
  max-width:100%;
}

.player-track-text small{
  display:block;
  color:#b8b8b8;
  font-size:.66rem;
  font-weight:850;
  margin-top:2px;
}

.movie-player .player-action,
.movie-player a.player-action{
  width:34px;
  height:34px;
  border-radius:50%;
  background:transparent;
  color:#fff;
  border:2px solid #fff;
  display:grid;
  place-items:center;
  text-decoration:none;
  font-weight:1000;
  line-height:1;
}

.event-player .player-action{
  flex:none;
}


/* ===== Busca de música estilo YouTube dentro do site ===== */
.music-addon-line{
  display:none!important;
}

.music-search{
  width:min(100%, 420px)!important;
}

.music-results{
  width:min(100%, 760px)!important;
  margin-top:12px!important;
  border-radius:8px!important;
  overflow:hidden!important;
  background:#181818!important;
  border:0!important;
}

.music-results:empty{
  display:none!important;
}

.music-help{
  padding:18px!important;
  margin:0!important;
  color:#cfcfcf!important;
  font-weight:800!important;
}

.music-result{
  display:grid!important;
  grid-template-columns:58px minmax(0, 1fr) 112px!important;
  align-items:center!important;
  gap:18px!important;
  width:100%!important;
  min-height:88px!important;
  padding:14px 16px!important;
  background:#181818!important;
  border:0!important;
  border-bottom:1px solid rgba(255,255,255,.035)!important;
}

.music-result.highlighted{
  background:#531818!important;
}

.music-result.selected{
  background:#181818!important;
  min-height:64px!important;
  border-radius:8px!important;
}

.music-thumb-img{
  width:56px!important;
  height:40px!important;
  border-radius:2px!important;
  object-fit:cover!important;
  display:block!important;
  background:#111!important;
}

.music-result strong{
  color:#fff!important;
  font-size:.96rem!important;
  font-weight:950!important;
  overflow:hidden!important;
  text-overflow:ellipsis!important;
  white-space:nowrap!important;
}

.music-result button{
  justify-self:end!important;
  border:0!important;
  border-radius:8px!important;
  background:#ef1117!important;
  color:#fff!important;
  padding:14px 18px!important;
  font-weight:1000!important;
  cursor:pointer!important;
}

.music-result.selected button{
  padding-inline:20px!important;
}

.music-offset{
  max-width:760px!important;
  margin-top:18px!important;
}

.music-offset input[type="text"],
.music-offset input[type="number"]{
  width:230px!important;
}

.movie-player .music-player-thumb{
  width:42px!important;
  height:42px!important;
  border-radius:4px!important;
  background:#333 center/cover no-repeat!important;
  flex:none!important;
}

@media(max-width:640px){
  .music-result{
    grid-template-columns:54px minmax(0,1fr)!important;
    gap:12px!important;
  }

  .music-result button{
    grid-column:1 / -1!important;
    justify-self:stretch!important;
  }
}


/* ===== Ajuste: busca sem piscar, player funcional e celular menos espremido ===== */
.music-results.is-loading{
  position:relative;
}

.music-results.is-loading::after{
  content:"Buscando...";
  position:absolute;
  right:14px;
  top:10px;
  color:#fff;
  font-size:.75rem;
  font-weight:900;
  background:rgba(239,17,23,.82);
  border-radius:999px;
  padding:5px 10px;
  pointer-events:none;
}

.music-result{
  transition:background .18s ease, transform .18s ease;
}

.music-result:hover{
  background:#241818!important;
}

.music-result.highlighted:hover{
  background:#601c1c!important;
}

.movie-player{
  min-height:58px!important;
  border-radius:0!important;
  overflow:hidden!important;
}

.movie-player .music-player-thumb,
.music-player-thumb{
  width:46px!important;
  height:46px!important;
  min-width:46px!important;
  border-radius:4px!important;
  background:#333 center/cover no-repeat!important;
  display:block!important;
}

.player-track-text{
  overflow:hidden!important;
}

.player-track-text strong{
  display:block!important;
  overflow:hidden!important;
  text-overflow:ellipsis!important;
  white-space:nowrap!important;
  max-width:100%!important;
}

.movie-player .player-action,
.movie-player button.player-action{
  appearance:none!important;
  width:38px!important;
  height:38px!important;
  min-width:38px!important;
  border-radius:50%!important;
  background:transparent!important;
  color:#fff!important;
  border:2px solid #fff!important;
  display:grid!important;
  place-items:center!important;
  font-weight:1000!important;
  line-height:1!important;
  cursor:pointer!important;
}

.movie-player .player-action.is-playing,
.movie-player button.player-action.is-playing{
  background:#fff!important;
  color:#000!important;
}

/* Celular do editor/checkout mais largo, proporção de site final */
.creator-pro-body.direct-plan-flow .pro-phone,
.checkout-pro-body .pro-phone,
.phone-live .pro-phone{
  width:clamp(340px, 25vw, 390px)!important;
  height:clamp(680px, 52vw, 760px)!important;
}

.creator-pro-body.direct-plan-flow .phone-live,
.checkout-pro-body .phone-live{
  justify-content:center!important;
}

.event-screen{
  padding-left:18px!important;
  padding-right:18px!important;
}

.event-photo{
  height:clamp(250px, 33vh, 305px)!important;
}

.event-screen h2{
  font-size:clamp(3rem, 4.4vw, 3.7rem)!important;
}

.event-message{
  font-size:clamp(1rem, 1.25vw, 1.12rem)!important;
  max-width:320px!important;
}

.event-count-grid{
  gap:16px!important;
}

.event-count-card{
  min-height:98px!important;
}

.published-event{
  width:clamp(340px, 92vw, 390px)!important;
  max-width:390px!important;
  min-height:760px!important;
}

/* Página final: visual mais próximo de um link recebido após QR Code */
.published-gift-wrap{
  width:100%!important;
  display:flex!important;
  justify-content:center!important;
  align-items:flex-start!important;
  padding-inline:16px!important;
}

@media(max-width:1100px){
  .creator-pro-body.direct-plan-flow .pro-phone,
  .checkout-pro-body .pro-phone,
  .phone-live .pro-phone{
    width:min(92vw, 380px)!important;
    height:min(82vh, 740px)!important;
  }
}

@media(max-width:520px){
  .creator-pro-body.direct-plan-flow .pro-phone,
  .checkout-pro-body .pro-phone,
  .phone-live .pro-phone{
    width:min(94vw, 360px)!important;
    height:min(78vh, 700px)!important;
  }
  .event-photo{
    height:235px!important;
  }
  .event-screen h2{
    font-size:2.85rem!important;
  }
}



/* ===== Ajustes finais: etapas por plano, celular mais alto e confetti no preview ===== */
.creator-pro-body.direct-plan-flow .pro-phone,
.checkout-pro-body .pro-phone,
.phone-live .pro-phone{
  width:clamp(350px, 25vw, 402px)!important;
  height:clamp(740px, 59vw, 860px)!important;
}

.creator-pro-body.direct-plan-flow .phone-live,
.checkout-pro-body .phone-live{
  align-items:flex-start!important;
}

.creator-pro-body.direct-plan-flow .pro-phone-screen,
.checkout-pro-body .pro-phone-screen{
  min-height:100%!important;
}

.published-event{
  width:clamp(350px, 92vw, 402px)!important;
  max-width:402px!important;
  min-height:820px!important;
}

.published-birthday,
.published-movie,
.published-elegant{
  min-height:780px;
}

.event-photo{
  height:clamp(270px, 34vh, 330px)!important;
}

.event-message{
  max-width:336px!important;
}

.event-count-card{
  min-height:106px!important;
}

.event-palette-notice{
  display:none;
  max-width:760px;
  border:1px solid rgba(239,17,23,.45);
  background:rgba(239,17,23,.08);
  color:#fff;
  padding:16px 18px;
  border-radius:14px;
  font-weight:900;
  margin:0 0 18px;
}

.creator-pro-body.direct-plan-flow[data-plan="evento"] .event-palette-notice{
  display:block!important;
}

.creator-pro-body.direct-plan-flow[data-plan="evento"] .palette-grid{
  display:none!important;
}

.creator-pro-body.direct-plan-flow[data-plan="aniversario"] #paletteStepTitle,
.creator-pro-body.direct-plan-flow[data-plan="aniversario"] #paletteStepText{
  color:#ff8fc4;
}

.creator-pro-body.direct-plan-flow[data-plan="filme"] #paletteStepTitle,
.creator-pro-body.direct-plan-flow[data-plan="filme"] #paletteStepText{
  color:#d8cffc;
}

.creator-pro-body.direct-plan-flow[data-plan="delux"] #paletteStepTitle,
.creator-pro-body.direct-plan-flow[data-plan="delux"] #paletteStepText{
  color:#f3e2bd;
}

/* Confetti animado dentro do celular */
.birthday-screen,
.birthday-final-screen{
  position:relative!important;
  overflow:auto!important;
}

.phone-confetti{
  position:absolute;
  inset:0;
  pointer-events:none;
  overflow:hidden;
  z-index:8;
}

.phone-confetti i{
  position:absolute;
  top:-18px;
  left:var(--x);
  width:7px;
  height:12px;
  border-radius:2px;
  background:#ffd34d;
  opacity:0;
  transform:rotate(var(--r));
  animation:phoneConfettiFall 2.9s ease-in-out var(--d) infinite;
}

.phone-confetti i:nth-child(3n){background:#ff2d55}
.phone-confetti i:nth-child(3n+1){background:#43e7ff}
.phone-confetti i:nth-child(4n){background:#8cff69}
.phone-confetti i:nth-child(5n){background:#ffffff}

@keyframes phoneConfettiFall{
  0%{opacity:0; transform:translateY(-20px) rotate(var(--r));}
  12%{opacity:1;}
  72%{opacity:1;}
  100%{opacity:0; transform:translateY(680px) rotate(calc(var(--r) + 260deg));}
}

/* Efeito de busca sem piscar */
.music-results.is-loading{
  position:relative;
}

.music-results.is-loading::after{
  content:"Buscando...";
  position:absolute;
  top:10px;
  right:14px;
  color:#fff;
  background:rgba(239,17,23,.86);
  padding:5px 10px;
  border-radius:999px;
  font-size:.72rem;
  font-weight:1000;
}

.music-result{
  transition:background .18s ease, transform .18s ease;
}

.music-result:hover{
  background:#241818!important;
}

.music-result.highlighted:hover{
  background:#641d1d!important;
}

/* Player mais legível no celular */
.movie-player{
  min-height:60px!important;
}

.movie-player .music-player-thumb,
.music-player-thumb{
  width:48px!important;
  height:48px!important;
  min-width:48px!important;
  border-radius:5px!important;
  background:#333 center/cover no-repeat!important;
}

.movie-player .player-action,
.movie-player button.player-action{
  appearance:none!important;
  width:38px!important;
  height:38px!important;
  min-width:38px!important;
  border-radius:50%!important;
  background:transparent!important;
  color:#fff!important;
  border:2px solid #fff!important;
  display:grid!important;
  place-items:center!important;
  font-weight:1000!important;
  line-height:1!important;
  cursor:pointer!important;
}

.movie-player .player-action.is-playing{
  background:#fff!important;
  color:#000!important;
}

@media(max-width:1100px){
  .creator-pro-body.direct-plan-flow .pro-phone,
  .checkout-pro-body .pro-phone,
  .phone-live .pro-phone{
    width:min(93vw, 390px)!important;
    height:min(86vh, 820px)!important;
  }
}

@media(max-width:520px){
  .creator-pro-body.direct-plan-flow .pro-phone,
  .checkout-pro-body .pro-phone,
  .phone-live .pro-phone{
    width:min(95vw, 370px)!important;
    height:min(83vh, 760px)!important;
  }
  .event-photo{
    height:250px!important;
  }
  .phone-confetti i{
    animation-duration:2.5s;
  }
}



/* ===== Logo clicável ===== */
html{
  scroll-behavior:smooth;
}

.brand,
.footer-logo-link{
  cursor:pointer;
}

.footer-logo-link{
  display:inline-flex!important;
  align-items:center!important;
  justify-content:center!important;
  text-decoration:none!important;
  width:fit-content!important;
  transition:transform .18s ease, filter .18s ease;
}

.footer-logo-link:hover{
  transform:translateY(-2px) scale(1.03);
  filter:drop-shadow(0 0 12px rgba(239,17,23,.45));
}


/* ===== Correção da música + design do celular estilo página final ===== */
@import url('https://fonts.googleapis.com/css2?family=Great+Vibes&family=Poppins:wght@400;600;700;800;900&display=swap');
.hidden,.check-line.hidden,.music-offset.hidden,.music-youtube-line.hidden{display:none!important;}
.creator-pro-body,.checkout-pro-body,.gift-pro-body,.pro-step,.pro-step input,.pro-step textarea,.music-result,.event-message,.event-count-card,.movie-player{font-family:'Poppins',Inter,ui-sans-serif,system-ui,-apple-system,BlinkMacSystemFont,'Segoe UI',sans-serif!important;}
.creator-pro-body.direct-plan-flow .pro-phone,.checkout-pro-body .pro-phone,.phone-live .pro-phone{width:clamp(370px,26vw,430px)!important;height:clamp(800px,62vw,920px)!important;border-radius:58px!important;padding:18px!important;}
.pro-phone .phone-notch{width:142px!important;height:36px!important;border-radius:0 0 18px 18px!important;}
.pro-screen{border-radius:40px!important;}
.event-screen{background:#c91417!important;padding:42px 18px 108px!important;scrollbar-width:thin;scrollbar-color:rgba(255,255,255,.42) transparent;}
.event-photo{width:100%!important;height:clamp(270px,34vh,340px)!important;border-radius:15px!important;background-size:cover!important;background-position:center center!important;margin-bottom:14px!important;}
.event-dots{margin:0 0 16px!important;gap:7px!important;}.event-dots span{width:9px!important;height:9px!important;background:rgba(255,255,255,.32)!important;}.event-dots span.active{width:28px!important;background:#fff!important;}
.event-screen h2,.event-counter-label{font-family:'Great Vibes','Brush Script MT','Segoe Script',cursive!important;font-weight:400!important;color:#fff!important;}.event-screen h2{font-size:clamp(3.55rem,5vw,4.25rem)!important;line-height:.9!important;margin:12px 0 16px!important;}.event-message{font-size:clamp(1.02rem,1.12vw,1.18rem)!important;line-height:1.42!important;font-weight:800!important;max-width:340px!important;margin:0 auto 22px!important;}.event-counter-label{font-size:clamp(2.8rem,4vw,3.35rem)!important;margin:14px 0 18px!important;}
.event-count-grid{gap:18px!important;}.event-count-card{min-height:112px!important;border-radius:15px!important;background:rgba(225,0,6,.58)!important;}.event-count-card b{font-size:1.34rem!important;margin-bottom:8px!important;}.event-count-card span{font-size:.92rem!important;font-weight:800!important;text-transform:lowercase!important;}
.movie-player{min-height:64px!important;grid-template-columns:50px minmax(0,1fr) 40px!important;gap:12px!important;background:#050505!important;padding:9px 0 5px!important;}.movie-player .music-player-thumb,.music-player-thumb{width:50px!important;height:50px!important;min-width:50px!important;border-radius:5px!important;background:#333 center/cover no-repeat!important;}.player-track-text strong{font-size:.78rem!important;line-height:1.1!important;}.player-track-text small{font-size:.64rem!important;}
.movie-player .player-action,.movie-player button.player-action{width:40px!important;height:40px!important;min-width:40px!important;border:2px solid #fff!important;border-radius:50%!important;background:transparent!important;color:#fff!important;display:grid!important;place-items:center!important;cursor:pointer!important;}.movie-player .player-action.is-playing{background:#fff!important;color:#000!important;}
.music-results.is-loading{position:relative!important;}.music-results.is-loading::after{content:'Buscando...'!important;position:absolute!important;right:12px!important;top:10px!important;background:rgba(239,17,23,.9)!important;color:#fff!important;padding:5px 10px!important;border-radius:999px!important;font-size:.72rem!important;font-weight:1000!important;pointer-events:none!important;}.music-result{min-height:82px!important;}.music-thumb-img{width:58px!important;height:42px!important;object-fit:cover!important;}
@media(max-width:1100px){.creator-pro-body.direct-plan-flow .pro-phone,.checkout-pro-body .pro-phone,.phone-live .pro-phone{width:min(94vw,410px)!important;height:min(88vh,860px)!important;}}
@media(max-width:560px){.creator-pro-body.direct-plan-flow .pro-phone,.checkout-pro-body .pro-phone,.phone-live .pro-phone{width:min(95vw,382px)!important;height:min(86vh,800px)!important;}.event-photo{height:260px!important;}.event-screen h2{font-size:3.25rem!important;}}


/* ===== Correção música: resultado certo, capa no player e play/pause ===== */
#musicStepTitle,
.pro-step[data-step="5"] h1{font-size:2rem!important;letter-spacing:-.04em!important;}
.music-results{min-height:0!important;}
.music-result strong{white-space:normal!important;line-height:1.18!important;}
.movie-player .music-player-thumb,.music-player-thumb{background-color:#333!important;background-image:var(--thumb)!important;background-size:cover!important;background-position:center!important;background-repeat:no-repeat!important;border-radius:4px!important;}
.movie-player div.music-player-thumb{background-color:#333!important;background-image:var(--thumb)!important;background-size:cover!important;background-position:center!important;background-repeat:no-repeat!important;}
.movie-player{grid-template-columns:52px minmax(0,1fr) 42px!important;gap:12px!important;align-items:center!important;min-height:64px!important;padding:8px 10px 6px!important;background:#050505!important;border-top:1px solid rgba(255,255,255,.08)!important;}
.event-player{left:0!important;right:0!important;bottom:0!important;padding-inline:10px!important;}
.player-track-text{min-width:0!important;overflow:hidden!important;}
.player-track-text strong{display:block!important;max-width:100%!important;overflow:hidden!important;text-overflow:ellipsis!important;white-space:nowrap!important;font-size:.78rem!important;line-height:1.1!important;}
.player-track-text small{display:block!important;text-align:center!important;color:#fff!important;opacity:.9!important;font-size:.62rem!important;line-height:1.1!important;margin-top:2px!important;}
.movie-player .player-action,.movie-player button.player-action{width:42px!important;height:42px!important;min-width:42px!important;border-radius:999px!important;border:2px solid #fff!important;color:#fff!important;background:transparent!important;display:grid!important;place-items:center!important;font-size:1rem!important;line-height:1!important;}
.movie-player .player-action.is-playing{background:#fff!important;color:#050505!important;}
.creator-pro-body.direct-plan-flow .pro-phone,.checkout-pro-body .pro-phone,.phone-live .pro-phone{width:clamp(360px, 26vw, 410px)!important;height:clamp(760px, 60vw, 860px)!important;}
.event-screen{padding-bottom:76px!important;}
@media(max-width:560px){.creator-pro-body.direct-plan-flow .pro-phone,.checkout-pro-body .pro-phone,.phone-live .pro-phone{width:min(95vw, 380px)!important;height:min(84vh, 780px)!important;}}



/* ===== Correções finais: busca, calendário, responsividade e celular alinhado ===== */
.calendar-widget{
  width:min(100%, 430px)!important;
}

.calendar-head{
  display:flex!important;
  align-items:center!important;
  justify-content:space-between!important;
  gap:16px!important;
  flex-wrap:nowrap!important;
}

.calendar-selectors{
  display:flex!important;
  align-items:center!important;
  gap:14px!important;
  min-width:0!important;
}

.calendar-select-wrap{
  display:inline-flex!important;
  align-items:center!important;
  position:relative!important;
  max-width:100%!important;
}

.calendar-select-wrap::after{
  content:"⌄"!important;
  right:2px!important;
  top:50%!important;
  transform:translateY(-50%)!important;
  color:#ef1117!important;
  font-size:1rem!important;
}

.calendar-select-wrap select{
  appearance:none!important;
  -webkit-appearance:none!important;
  border:0!important;
  background:transparent!important;
  color:#fff!important;
  font-size:1.55rem!important;
  font-weight:1000!important;
  line-height:1!important;
  height:34px!important;
  padding:0 18px 0 0!important;
  max-width:150px!important;
}

.calendar-year-wrap select{
  max-width:92px!important;
  min-width:86px!important;
}

.calendar-select-wrap select option{
  color:#fff!important;
  background:#120202!important;
}

.calendar-nav{
  display:flex!important;
  align-items:center!important;
  gap:12px!important;
  flex:none!important;
}

.calendar-nav button{
  width:34px!important;
  height:34px!important;
  display:grid!important;
  place-items:center!important;
  color:#ef1117!important;
  font-size:2rem!important;
  padding:0!important;
  line-height:1!important;
}

.calendar-week,
.calendar-days{
  gap:9px!important;
}

.calendar-days button{
  width:38px!important;
  height:38px!important;
  margin:auto!important;
}

.music-results.is-loading::after{
  content:"Buscando..."!important;
}

.music-result.selected{
  grid-template-columns:58px minmax(0,1fr) 112px!important;
  min-height:74px!important;
}

.music-thumb-img{
  width:58px!important;
  height:42px!important;
  object-fit:cover!important;
  background:#333!important;
}

.movie-player{
  display:grid!important;
  grid-template-columns:50px minmax(0,1fr) 42px!important;
  align-items:center!important;
  gap:12px!important;
  min-height:64px!important;
  padding:8px 10px!important;
  background:#050505!important;
  color:#fff!important;
  overflow:hidden!important;
}

.movie-player .music-player-thumb,
.music-player-thumb{
  width:50px!important;
  height:50px!important;
  min-width:50px!important;
  border-radius:6px!important;
  background-color:#333!important;
  background-size:cover!important;
  background-position:center!important;
}

.player-track-text{
  display:block!important;
  min-width:0!important;
  max-width:100%!important;
  overflow:hidden!important;
  text-align:left!important;
}

.player-track-text strong{
  display:block!important;
  max-width:100%!important;
  overflow:hidden!important;
  text-overflow:ellipsis!important;
  white-space:nowrap!important;
  font-size:.78rem!important;
  line-height:1.08!important;
}

.player-track-text small{
  display:block!important;
  font-size:.64rem!important;
  line-height:1.1!important;
  color:#fff!important;
  opacity:.92!important;
  text-align:center!important;
}

.movie-player .player-action,
.movie-player button.player-action{
  width:42px!important;
  height:42px!important;
  min-width:42px!important;
  border-radius:50%!important;
  border:2px solid #fff!important;
  background:transparent!important;
  color:#fff!important;
  display:grid!important;
  place-items:center!important;
  font-size:1rem!important;
  padding:0!important;
  cursor:pointer!important;
}

.movie-player .player-action.is-playing{
  background:#fff!important;
  color:#000!important;
}

.creator-pro-shell,
.checkout-pro-shell{
  grid-template-columns:minmax(0, 1fr) minmax(340px, 430px)!important;
  align-items:start!important;
  gap:clamp(28px, 6vw, 86px)!important;
}

.phone-live{
  width:100%!important;
  justify-content:center!important;
  align-items:flex-start!important;
}

.pro-phone{
  width:clamp(360px, 25vw, 410px)!important;
  height:clamp(760px, 57vw, 860px)!important;
  max-height:calc(100vh - 48px)!important;
  padding:14px!important;
  overflow:hidden!important;
}

.pro-screen{
  height:100%!important;
  width:100%!important;
  overflow:hidden!important;
}

.event-screen{
  height:100%!important;
  min-height:100%!important;
  overflow-y:auto!important;
  overflow-x:hidden!important;
  padding:18px 18px 96px!important;
  scrollbar-width:thin!important;
  scrollbar-color:rgba(255,255,255,.48) transparent!important;
}

.event-screen::-webkit-scrollbar{
  width:7px!important;
}

.event-screen::-webkit-scrollbar-thumb{
  background:rgba(255,255,255,.45)!important;
  border-radius:999px!important;
}

.event-photo{
  width:100%!important;
  height:clamp(270px, 34vh, 330px)!important;
  max-height:335px!important;
  border-radius:14px!important;
  background-size:cover!important;
  background-position:center!important;
}

.event-screen h2{
  font-size:clamp(3.05rem, 4.2vw, 3.65rem)!important;
  margin-top:14px!important;
}

.event-message{
  max-width:330px!important;
  margin-inline:auto!important;
  font-size:clamp(1rem, 1.08vw, 1.1rem)!important;
  line-height:1.34!important;
}

.event-count-grid{
  grid-template-columns:repeat(2,minmax(0,1fr))!important;
  gap:16px!important;
  width:100%!important;
}

.event-count-card{
  min-height:102px!important;
}

.published-gift-wrap{
  display:flex!important;
  justify-content:center!important;
  align-items:flex-start!important;
  width:100%!important;
  padding:22px 14px!important;
}

.published-event{
  width:clamp(360px, 92vw, 410px)!important;
  max-width:410px!important;
  min-height:820px!important;
  overflow:hidden!important;
}

@media(max-width:1180px){
  .creator-pro-shell,
  .checkout-pro-shell{
    grid-template-columns:1fr!important;
  }

  .phone-live{
    position:relative!important;
    top:auto!important;
    order:-1!important;
    margin-bottom:22px!important;
  }

  .pro-phone{
    width:min(92vw, 390px)!important;
    height:min(82vh, 800px)!important;
    max-height:800px!important;
  }
}

@media(max-width:640px){
  .creator-pro-shell,
  .checkout-pro-shell{
    padding-inline:18px!important;
  }

  .calendar-head{
    align-items:flex-start!important;
    flex-direction:column!important;
  }

  .calendar-selectors{
    width:100%!important;
    justify-content:flex-start!important;
  }

  .calendar-nav{
    width:100%!important;
    justify-content:flex-start!important;
  }

  .calendar-select-wrap select{
    font-size:1.32rem!important;
    max-width:130px!important;
  }

  .pro-phone{
    width:min(94vw, 370px)!important;
    height:min(80vh, 760px)!important;
    max-height:760px!important;
  }

  .event-photo{
    height:245px!important;
  }

  .music-result{
    grid-template-columns:58px minmax(0,1fr)!important;
  }

  .music-result button{
    grid-column:1 / -1!important;
    justify-self:stretch!important;
  }
}



/* ===== Ajuste completo conforme prints dos fluxos ===== */
.step-disabled-for-plan{
  display:none!important;
}

/* Evento Especial usa só visual vermelho, sem etapa de paleta */
.creator-pro-body.direct-plan-flow[data-plan="evento"] .pro-step[data-step="6"],
.creator-pro-body.direct-plan-flow[data-plan="delux"] .pro-step[data-step="6"]{
  display:none!important;
}

/* Aniversário: step de detalhes vira só efeitos */
.creator-pro-body.direct-plan-flow[data-plan="aniversario"] .pro-step[data-step="7"] .final-fields{
  display:none!important;
}

/* Poster: usa o campo de título principal + tagline */
.creator-pro-body.direct-plan-flow[data-plan="filme"] .movie-only{
  display:block!important;
}

/* Placeholder no celular antes da pessoa preencher */
.event-photo[data-empty-photo="true"],
.birthday-photo[data-empty-photo="true"],
.photo-card[data-empty-photo="true"],
.movie-hero[data-empty-photo="true"]{
  background:linear-gradient(135deg, rgba(255,255,255,.12), rgba(255,255,255,.035))!important;
  border:1px dashed rgba(255,255,255,.44)!important;
  display:flex!important;
  align-items:center!important;
  justify-content:center!important;
  color:rgba(255,255,255,.78)!important;
  text-align:center!important;
  position:relative!important;
}

.event-photo[data-empty-photo="true"]::after,
.birthday-photo[data-empty-photo="true"]::after,
.photo-card[data-empty-photo="true"]::after,
.movie-hero[data-empty-photo="true"]::after{
  content:"Sua foto aparece aqui";
  font-size:.9rem;
  font-weight:900;
  max-width:150px;
  line-height:1.2;
}

/* Player entra no fluxo normal e nunca fica sobreposto à mensagem */
.event-player,
.birthday-player,
.published-player{
  position:relative!important;
  left:auto!important;
  right:auto!important;
  bottom:auto!important;
  margin:22px auto 0!important;
  width:100%!important;
  max-width:100%!important;
}

.event-screen{
  padding-bottom:28px!important;
}

.movie-player{
  display:grid!important;
  grid-template-columns:50px minmax(0,1fr) 42px!important;
  align-items:center!important;
  gap:12px!important;
  min-height:64px!important;
  padding:8px 10px!important;
  background:#050505!important;
  color:#fff!important;
  overflow:hidden!important;
  border-radius:0!important;
}

.movie-player .music-player-thumb,
.music-player-thumb{
  width:50px!important;
  height:50px!important;
  min-width:50px!important;
  border-radius:6px!important;
  background:#333 center/cover no-repeat!important;
}

.player-track-text{
  display:block!important;
  min-width:0!important;
  max-width:100%!important;
  overflow:hidden!important;
  text-align:left!important;
}

.player-track-text strong{
  display:block!important;
  max-width:100%!important;
  overflow:hidden!important;
  text-overflow:ellipsis!important;
  white-space:nowrap!important;
  font-size:.78rem!important;
  line-height:1.08!important;
}

.player-track-text small{
  display:block!important;
  font-size:.64rem!important;
  line-height:1.1!important;
  color:#fff!important;
  opacity:.92!important;
  text-align:center!important;
}

.movie-player .player-action,
.movie-player button.player-action{
  appearance:none!important;
  width:42px!important;
  height:42px!important;
  min-width:42px!important;
  border-radius:50%!important;
  border:2px solid #fff!important;
  background:transparent!important;
  color:#fff!important;
  display:grid!important;
  place-items:center!important;
  font-size:1rem!important;
  padding:0!important;
  cursor:pointer!important;
}

.movie-player .player-action.is-playing{
  background:#fff!important;
  color:#000!important;
}

/* Calendário igual ao print e corrigido */
.calendar-widget{
  width:min(100%, 430px)!important;
}

.calendar-head{
  display:flex!important;
  align-items:center!important;
  justify-content:space-between!important;
  gap:16px!important;
  flex-wrap:nowrap!important;
}

.calendar-selectors{
  display:flex!important;
  align-items:center!important;
  gap:14px!important;
}

.calendar-select-wrap{
  display:inline-flex!important;
  align-items:center!important;
  position:relative!important;
}

.calendar-select-wrap::after{
  content:"⌄"!important;
  color:#ef1117!important;
  position:absolute!important;
  right:1px!important;
  top:50%!important;
  transform:translateY(-50%)!important;
  pointer-events:none!important;
}

.calendar-select-wrap select{
  appearance:none!important;
  -webkit-appearance:none!important;
  background:transparent!important;
  border:0!important;
  color:#fff!important;
  height:34px!important;
  padding:0 18px 0 0!important;
  font-size:1.48rem!important;
  font-weight:1000!important;
  max-width:150px!important;
}

.calendar-year-wrap select{
  min-width:86px!important;
  max-width:96px!important;
}

.calendar-select-wrap select option{
  background:#120202!important;
  color:#fff!important;
}

.calendar-nav{
  display:flex!important;
  align-items:center!important;
  gap:12px!important;
}

.calendar-nav button{
  width:34px!important;
  height:34px!important;
  display:grid!important;
  place-items:center!important;
  padding:0!important;
  color:#ef1117!important;
  font-size:2rem!important;
  line-height:1!important;
}

.calendar-week,
.calendar-days{
  gap:9px!important;
}

.calendar-days button{
  width:38px!important;
  height:38px!important;
  margin:auto!important;
}

/* Celular alinhado e responsivo */
.creator-pro-shell,
.checkout-pro-shell{
  grid-template-columns:minmax(0, 1fr) minmax(350px, 430px)!important;
  align-items:start!important;
  gap:clamp(28px, 6vw, 86px)!important;
}

.phone-live{
  width:100%!important;
  justify-content:center!important;
  align-items:flex-start!important;
  overflow:visible!important;
}

.pro-phone{
  width:clamp(360px, 25vw, 410px)!important;
  height:clamp(760px, 57vw, 860px)!important;
  max-height:calc(100vh - 48px)!important;
  padding:14px!important;
  overflow:hidden!important;
  isolation:isolate!important;
}

.pro-screen{
  height:100%!important;
  width:100%!important;
  overflow:hidden!important;
}

.event-screen{
  height:100%!important;
  min-height:100%!important;
  overflow-y:auto!important;
  overflow-x:hidden!important;
  scrollbar-width:thin!important;
  scrollbar-color:rgba(255,255,255,.48) transparent!important;
}

.event-screen::-webkit-scrollbar{width:7px!important;}
.event-screen::-webkit-scrollbar-thumb{background:rgba(255,255,255,.45)!important;border-radius:999px!important;}

.event-photo{
  width:100%!important;
  height:clamp(270px, 34vh, 330px)!important;
  max-height:335px!important;
  border-radius:14px!important;
  background-size:cover!important;
  background-position:center!important;
}

.event-screen h2{
  font-size:clamp(3.05rem, 4.2vw, 3.65rem)!important;
  margin-top:14px!important;
}

.event-message{
  max-width:330px!important;
  margin-inline:auto!important;
  font-size:clamp(1rem, 1.08vw, 1.1rem)!important;
  line-height:1.34!important;
}

.event-count-grid{
  grid-template-columns:repeat(2,minmax(0,1fr))!important;
  gap:16px!important;
  width:100%!important;
}

.event-count-card{
  min-height:102px!important;
}

.published-gift-wrap{
  display:flex!important;
  justify-content:center!important;
  align-items:flex-start!important;
  width:100%!important;
  padding:22px 14px!important;
}

.published-event{
  width:clamp(360px, 92vw, 410px)!important;
  max-width:410px!important;
  min-height:820px!important;
  overflow:hidden!important;
}

/* Busca de música: sem histórico/local fixo */
.music-results.is-loading::after{
  content:"Buscando..."!important;
}

.music-help{
  line-height:1.35!important;
}

@media(max-width:1180px){
  .creator-pro-shell,
  .checkout-pro-shell{
    grid-template-columns:1fr!important;
  }

  .phone-live{
    position:relative!important;
    top:auto!important;
    order:-1!important;
    margin-bottom:22px!important;
  }

  .pro-phone{
    width:min(92vw, 390px)!important;
    height:min(82vh, 800px)!important;
    max-height:800px!important;
  }
}

@media(max-width:640px){
  .creator-pro-shell,
  .checkout-pro-shell{
    padding-inline:18px!important;
  }

  .calendar-head{
    align-items:flex-start!important;
    flex-direction:column!important;
  }

  .calendar-selectors,
  .calendar-nav{
    width:100%!important;
    justify-content:flex-start!important;
  }

  .calendar-select-wrap select{
    font-size:1.3rem!important;
    max-width:130px!important;
  }

  .pro-phone{
    width:min(94vw, 370px)!important;
    height:min(80vh, 760px)!important;
    max-height:760px!important;
  }

  .event-photo{
    height:245px!important;
  }

  .music-result{
    grid-template-columns:58px minmax(0,1fr)!important;
  }

  .music-result button{
    grid-column:1 / -1!important;
    justify-self:stretch!important;
  }
}



/* ===== Correção: calendário funcional + player fixo no rodapé do celular ===== */
.event-screen-has-fixed-player{
  display:flex!important;
  flex-direction:column!important;
  height:100%!important;
  min-height:100%!important;
  overflow:hidden!important;
  padding:18px!important;
}

.event-scroll-content{
  flex:1 1 auto!important;
  min-height:0!important;
  overflow-y:auto!important;
  overflow-x:hidden!important;
  padding:0 0 16px!important;
  scrollbar-width:thin!important;
  scrollbar-color:rgba(255,255,255,.48) transparent!important;
}

.event-scroll-content::-webkit-scrollbar{width:7px!important;}
.event-scroll-content::-webkit-scrollbar-thumb{background:rgba(255,255,255,.45)!important;border-radius:999px!important;}

.phone-fixed-player,
.event-player.phone-fixed-player,
.published-player.phone-fixed-player{
  flex:0 0 auto!important;
  position:relative!important;
  left:auto!important;
  right:auto!important;
  bottom:auto!important;
  margin:10px 0 0!important;
  width:100%!important;
  max-width:100%!important;
  z-index:40!important;
}

.event-screen-has-fixed-player .event-photo{
  height:clamp(255px, 32vh, 315px)!important;
}

/* Botão play/pause igual e simétrico */
.movie-player .player-action,
.movie-player button.player-action{
  position:relative!important;
  width:42px!important;
  height:42px!important;
  min-width:42px!important;
  border-radius:50%!important;
  border:2px solid #fff!important;
  background:transparent!important;
  color:#fff!important;
  display:grid!important;
  place-items:center!important;
  padding:0!important;
  cursor:pointer!important;
  font-size:0!important;
}

.player-action .play-icon{
  width:0;
  height:0;
  border-top:8px solid transparent;
  border-bottom:8px solid transparent;
  border-left:12px solid currentColor;
  margin-left:3px;
  display:block;
}

.player-action .pause-icon{
  display:none;
  width:14px;
  height:16px;
  position:relative;
}

.player-action .pause-icon::before,
.player-action .pause-icon::after{
  content:"";
  position:absolute;
  top:0;
  width:5px;
  height:16px;
  border-radius:2px;
  background:currentColor;
}

.player-action .pause-icon::before{left:1px;}
.player-action .pause-icon::after{right:1px;}

.player-action.is-playing .play-icon{display:none;}
.player-action.is-playing .pause-icon{display:block;}

/* Evita dropdown nativo gigante quebrar o layout */
.calendar-select-wrap select{
  position:relative!important;
  z-index:3!important;
}

.calendar-select-wrap select:focus{
  outline:0!important;
}

.calendar-select-wrap select option{
  font-size:1rem!important;
}

/* O form não corta a lista do calendário e preserva clique dos selects */
.calendar-widget,
.calendar-head,
.calendar-selectors{
  overflow:visible!important;
}

/* No mobile, mantém o player no rodapé e o conteúdo rolando acima */
@media(max-width:640px){
  .event-screen-has-fixed-player{
    padding:16px!important;
  }
  .event-screen-has-fixed-player .event-photo{
    height:245px!important;
  }
}



/* ===== Ajuste do tempo inicial da música ===== */
.music-offset:not(.hidden){
  display:flex!important;
  flex-direction:column!important;
  align-items:flex-start!important;
  gap:10px!important;
}

.music-offset input[name="musicOffset"]{
  max-width:260px!important;
}

.movie-player .player-action,
.movie-player button.player-action{
  font-size:0!important;
}

.player-action .play-icon{
  width:0;
  height:0;
  border-top:8px solid transparent;
  border-bottom:8px solid transparent;
  border-left:12px solid currentColor;
  margin-left:3px;
  display:block;
}

.player-action .pause-icon{
  display:none;
  width:14px;
  height:16px;
  position:relative;
}

.player-action .pause-icon::before,
.player-action .pause-icon::after{
  content:"";
  position:absolute;
  top:0;
  width:5px;
  height:16px;
  border-radius:2px;
  background:currentColor;
}

.player-action .pause-icon::before{left:1px;}
.player-action .pause-icon::after{right:1px;}

.player-action.is-playing .play-icon{
  display:none!important;
}

.player-action.is-playing .pause-icon{
  display:block!important;
}



/* ===== Música no celular mais rápida e com feedback no clique ===== */
.player-action.is-loading .play-icon{
  display:none!important;
}

.player-action.is-loading::after{
  content:"";
  width:16px;
  height:16px;
  border:2px solid currentColor;
  border-top-color:transparent;
  border-radius:50%;
  animation:mimoqrSpin .75s linear infinite;
}

@keyframes mimoqrSpin{
  to{transform:rotate(360deg)}
}

.phone-fixed-player{
  touch-action:manipulation;
}

.movie-player .player-action{
  -webkit-tap-highlight-color:transparent;
}


/* ===== Ajuste visual dos cards de planos: emoji lateral + selo Novo ===== */
.plan-card{
  min-height:100%;
  padding:34px 28px 28px;
}
.plan-card h3{
  max-width:calc(100% - 116px);
}
.plan-icon{
  position:absolute;
  top:18px;
  right:18px;
  width:88px;
  height:88px;
  display:grid;
  place-items:center;
  border-radius:24px;
  background:radial-gradient(circle at 30% 28%, rgba(255,255,255,.18), rgba(255,255,255,.04) 35%, rgba(255,255,255,.02) 52%, rgba(255,255,255,0) 72%);
  border:1px solid rgba(255,255,255,.08);
  box-shadow:inset 0 1px 0 rgba(255,255,255,.08), 0 12px 24px rgba(0,0,0,.18);
  backdrop-filter:blur(2px);
  -webkit-backdrop-filter:blur(2px);
  font-size:0;
}
.plan-emoji{
  font-size:3rem;
  line-height:1;
  filter:drop-shadow(0 10px 14px rgba(0,0,0,.18));
}
.plan-icon-evento .plan-emoji{ font-size:3.35rem; }
.plan-icon-delux .plan-emoji{ font-size:2.85rem; }
.plan-icon-aniversario .plan-emoji{ font-size:3.1rem; }
.plan-icon-filme .plan-emoji{ font-size:3rem; }

.new-badge{
  position:absolute;
  top:14px;
  left:18px;
  right:auto;
  display:inline-flex;
  align-items:center;
  gap:8px;
  min-height:44px;
  padding:0 18px;
  border-radius:999px;
  background:linear-gradient(180deg,#ff352d 0%, #f3090f 100%);
  color:#fff;
  font-size:1.15rem;
  font-weight:1000;
  box-shadow:0 12px 28px rgba(239,17,23,.26);
}
.new-badge-icon{
  display:inline-grid;
  place-items:center;
  width:20px;
  height:20px;
  font-size:1rem;
  transform:translateY(-1px);
}
.plan-delux h3,
.plan-delux .old-price{
  position:relative;
}
.plan-delux h3{
  margin-top:38px;
}
.new-badge + .plan-icon{
  top:20px;
}

/* deixa o card featured com composição igual ao print */
.plan-evento h3,
.plan-delux h3,
.plan-aniversario h3,
.plan-filme h3{
  letter-spacing:-.055em;
}
.plan-evento .price,
.plan-delux .price,
.plan-aniversario .price,
.plan-filme .price{
  text-shadow:0 4px 14px rgba(239,17,23,.12);
}

@media (max-width: 760px){
  .plan-card{
    padding:28px 20px 22px;
  }
  .plan-card h3{
    max-width:calc(100% - 92px);
  }
  .plan-icon{
    width:70px;
    height:70px;
    top:16px;
    right:14px;
    border-radius:20px;
  }
  .plan-emoji,
  .plan-icon-evento .plan-emoji,
  .plan-icon-delux .plan-emoji,
  .plan-icon-aniversario .plan-emoji,
  .plan-icon-filme .plan-emoji{
    font-size:2.5rem;
  }
  .new-badge{
    top:12px;
    left:14px;
    min-height:38px;
    padding:0 14px;
    font-size:1rem;
  }
  .plan-delux h3{
    margin-top:32px;
  }
}



/* ===== Correção definitiva: celular sem barra horizontal e tudo dentro da tela ===== */
.pro-phone,
.pro-screen,
.pro-screen *,
.phone-live,
.phone-live *,
.published-gift-wrap,
.published-gift-wrap *{
  box-sizing:border-box!important;
  min-width:0!important;
}

.pro-screen,
.event-screen,
.event-scroll-content,
.movie-screen,
.movie-poster-screen,
.birthday-screen,
.elegant-screen,
.published-event,
.published-movie,
.published-birthday,
.published-elegant{
  overflow-x:hidden!important;
  max-width:100%!important;
}

/* Some navegadores mostram uma barra horizontal no rodapé do celular; ela fica desativada aqui. */
.pro-screen::-webkit-scrollbar:horizontal,
.event-screen::-webkit-scrollbar:horizontal,
.event-scroll-content::-webkit-scrollbar:horizontal,
.movie-screen::-webkit-scrollbar:horizontal,
.movie-poster-screen::-webkit-scrollbar:horizontal,
.birthday-screen::-webkit-scrollbar:horizontal,
.elegant-screen::-webkit-scrollbar:horizontal{
  height:0!important;
  display:none!important;
}

.pro-screen,
.event-screen,
.event-scroll-content,
.movie-screen,
.movie-poster-screen,
.birthday-screen,
.elegant-screen{
  overscroll-behavior-x:none!important;
}

/* Poster de Filme: conteúdo dentro da tela, título sem estourar para fora */
.movie-screen,
.movie-poster-screen{
  width:100%!important;
  height:100%!important;
  min-height:100%!important;
  padding:22px 18px 0!important;
  display:flex!important;
  flex-direction:column!important;
  background:#050505!important;
  color:#fff!important;
  text-align:left!important;
}

.movie-poster-screen .movie-hero,
.movie-hero{
  width:100%!important;
  height:clamp(205px, 30vh, 300px)!important;
  max-height:310px!important;
  margin:0 0 20px!important;
  border-radius:14px!important;
  flex:0 0 auto!important;
  background-size:cover!important;
  background-position:center!important;
}

.movie-poster-screen h2,
.movie-poster-screen h1,
.published-movie h1{
  width:100%!important;
  max-width:100%!important;
  overflow:hidden!important;
  overflow-wrap:anywhere!important;
  word-break:normal!important;
  hyphens:auto!important;
  white-space:normal!important;
  font-size:clamp(2.15rem, 9vw, 3.05rem)!important;
  line-height:.93!important;
  letter-spacing:-.035em!important;
  margin:0 0 12px!important;
}

.movie-poster-screen em{
  width:100%!important;
  max-width:100%!important;
  overflow-wrap:anywhere!important;
  font-size:.88rem!important;
  line-height:1.25!important;
  margin:0 0 16px!important;
}

.movie-poster-screen p{
  width:100%!important;
  max-width:100%!important;
  overflow-wrap:break-word!important;
  word-break:normal!important;
  font-size:.9rem!important;
  line-height:1.42!important;
  margin:0!important;
}

/* Área que rola fica acima do player; player fica fixo no rodapé interno sem criar largura extra */
.movie-poster-screen{
  overflow:hidden!important;
}

.movie-poster-screen > .movie-hero,
.movie-poster-screen > h2,
.movie-poster-screen > h1,
.movie-poster-screen > em,
.movie-poster-screen > p{
  flex:0 0 auto!important;
}

.movie-poster-screen > p{
  flex:1 1 auto!important;
  min-height:0!important;
  overflow-y:auto!important;
  overflow-x:hidden!important;
  padding-right:2px!important;
}

.movie-poster-screen > p::-webkit-scrollbar{
  width:0!important;
  height:0!important;
}

.movie-poster-screen > p{
  scrollbar-width:none!important;
}

/* Player de música simétrico em todos os modelos */
.movie-player,
.phone-fixed-player,
.event-player.phone-fixed-player,
.birthday-player.phone-fixed-player,
.published-player.phone-fixed-player{
  position:relative!important;
  left:auto!important;
  right:auto!important;
  bottom:auto!important;
  width:100%!important;
  max-width:100%!important;
  min-width:0!important;
  flex:0 0 auto!important;
  margin:10px 0 0!important;
  padding:9px 0 0!important;
  display:grid!important;
  grid-template-columns:50px minmax(0,1fr) 42px!important;
  gap:10px!important;
  align-items:center!important;
  background:#050505!important;
  border-top:1px solid rgba(255,255,255,.1)!important;
  overflow:hidden!important;
}

.movie-player .music-player-thumb,
.music-player-thumb{
  width:50px!important;
  height:50px!important;
  min-width:50px!important;
  max-width:50px!important;
  border-radius:6px!important;
  background-size:cover!important;
  background-position:center!important;
}

.player-track-text,
.movie-player strong,
.player-track-text strong{
  min-width:0!important;
  max-width:100%!important;
  overflow:hidden!important;
  text-overflow:ellipsis!important;
  white-space:nowrap!important;
}

.player-track-text small{
  max-width:100%!important;
  overflow:hidden!important;
  text-overflow:ellipsis!important;
  white-space:nowrap!important;
}

.movie-player .player-action,
.movie-player button.player-action{
  width:42px!important;
  height:42px!important;
  min-width:42px!important;
  max-width:42px!important;
}

/* Aniversário e Delux/Evento também não podem gerar barra horizontal */
.birthday-screen,
.elegant-screen,
.event-screen-has-fixed-player{
  width:100%!important;
  max-width:100%!important;
}

.birthday-photo,
.photo-card,
.event-photo,
.event-photo-wrap{
  max-width:100%!important;
}

.event-message,
.birthday-message,
.letter-text,
.elegant-screen h2,
.birthday-screen h2{
  max-width:100%!important;
  overflow-wrap:break-word!important;
}

/* Oculta barras visuais internas mantendo rolagem por toque/mouse */
.movie-screen,
.movie-poster-screen,
.birthday-screen,
.elegant-screen,
.event-scroll-content{
  scrollbar-width:none!important;
}

.movie-screen::-webkit-scrollbar,
.movie-poster-screen::-webkit-scrollbar,
.birthday-screen::-webkit-scrollbar,
.elegant-screen::-webkit-scrollbar,
.event-scroll-content::-webkit-scrollbar{
  width:0!important;
  height:0!important;
}

@media(max-width:640px){
  .movie-screen,
  .movie-poster-screen{
    padding:18px 14px 0!important;
  }
  .movie-poster-screen .movie-hero,
  .movie-hero{
    height:235px!important;
  }
  .movie-poster-screen h2,
  .movie-poster-screen h1,
  .published-movie h1{
    font-size:clamp(2rem, 11vw, 2.7rem)!important;
  }
}


/* ===== Páginas legais: Termos de uso e Política de Privacidade ===== */
.legal-body{
  min-height:100vh;
  background:
    radial-gradient(circle at top center, rgba(239,17,23,.11), transparent 42%),
    linear-gradient(180deg,#160202 0%, #050000 100%);
  color:#fff;
}

.legal-wrap{
  width:min(920px, calc(100% - 32px));
  margin:0 auto;
  padding:28px 0 54px;
}

.legal-card{
  position:relative;
  padding:0 0 28px 34px;
  border-left:4px solid var(--red, #ef1117);
}

.legal-brand{
  display:grid;
  place-items:center;
  width:52px;
  height:52px;
  margin:0 auto 8px;
  text-decoration:none;
  transition:transform .2s ease, filter .2s ease;
}

.legal-brand:hover{
  transform:translateY(-2px) scale(1.04);
  filter:drop-shadow(0 0 18px rgba(239,17,23,.4));
}

.legal-brand img{
  width:42px;
  height:42px;
  object-fit:contain;
}

.legal-card h1{
  text-align:center;
  font-size:clamp(1.9rem, 4vw, 3.1rem);
  line-height:1;
  letter-spacing:-.055em;
  margin:0 0 34px;
}

.legal-lead{
  text-align:center;
  margin:-18px 0 26px;
  font-weight:950;
  color:#fff;
}

.legal-content{
  max-width:760px;
  margin:0 auto;
  color:#cfc0c0;
  font-size:.95rem;
  line-height:1.42;
  font-weight:650;
}

.legal-content h2{
  color:#fff;
  font-size:1.03rem;
  line-height:1.2;
  margin:24px 0 7px;
  font-weight:1000;
}

.legal-content p{
  margin:0 0 10px;
}

.legal-content ul{
  margin:6px 0 12px;
  padding-left:22px;
}

.legal-content li{
  margin:4px 0;
}

.legal-content a{
  color:#ff4b55;
  font-weight:900;
  text-decoration:none;
}

.legal-content a:hover{
  text-decoration:underline;
}

.legal-actions{
  display:flex;
  align-items:center;
  justify-content:center;
  flex-wrap:wrap;
  gap:18px;
  margin-top:34px;
}

.legal-btn{
  min-width:150px;
  justify-content:center;
}

.legal-alt-link{
  color:#fff;
  font-weight:900;
  text-decoration:none;
  opacity:.86;
}

.legal-alt-link:hover{
  opacity:1;
  text-decoration:underline;
}

@media(max-width:640px){
  .legal-wrap{
    width:min(100% - 24px, 920px);
    padding:22px 0 42px;
  }

  .legal-card{
    padding-left:18px;
    border-left-width:3px;
  }

  .legal-content{
    font-size:.88rem;
    line-height:1.45;
  }

  .legal-content h2{
    font-size:.96rem;
  }
}



/* ===== Player da música edge-to-edge no celular ===== */
/* A barra da música agora cobre até as bordas internas da tela do celular,
   sem parecer card estilo Spotify e sem criar barra horizontal. */

.pro-screen,
.event-screen,
.event-screen-has-fixed-player,
.movie-screen,
.movie-poster-screen,
.birthday-screen,
.elegant-screen,
.published-event,
.published-movie,
.published-birthday,
.published-elegant{
  --phone-edge-x:18px;
}

/* variação para telas que usam padding diferente */
@media(max-width:640px){
  .pro-screen,
  .event-screen,
  .event-screen-has-fixed-player,
  .movie-screen,
  .movie-poster-screen,
  .birthday-screen,
  .elegant-screen,
  .published-event,
  .published-movie,
  .published-birthday,
  .published-elegant{
    --phone-edge-x:14px;
  }
}

/* Player principal em todos os modelos */
.movie-player,
.phone-fixed-player,
.event-player.phone-fixed-player,
.birthday-player.phone-fixed-player,
.elegant-player.phone-fixed-player,
.published-player.phone-fixed-player{
  position:relative!important;
  left:auto!important;
  right:auto!important;
  bottom:auto!important;

  width:calc(100% + (var(--phone-edge-x,18px) * 2))!important;
  max-width:calc(100% + (var(--phone-edge-x,18px) * 2))!important;
  min-width:0!important;

  margin-left:calc(var(--phone-edge-x,18px) * -1)!important;
  margin-right:calc(var(--phone-edge-x,18px) * -1)!important;
  margin-top:10px!important;
  margin-bottom:0!important;

  min-height:74px!important;
  padding:10px 14px!important;

  display:grid!important;
  grid-template-columns:44px minmax(0,1fr) 42px!important;
  align-items:center!important;
  gap:10px!important;

  background:#050505!important;
  border-top:1px solid rgba(255,255,255,.10)!important;
  border-left:0!important;
  border-right:0!important;
  border-bottom:0!important;
  border-radius:0!important;

  box-shadow:none!important;
  overflow:hidden!important;
  z-index:50!important;
  box-sizing:border-box!important;
}

/* Quando estiver dentro do celular com bordas arredondadas, o próprio .pro-screen recorta a barra */
.pro-screen{
  overflow:hidden!important;
}

/* Capa da música pequena, igual player nativo */
.movie-player .music-player-thumb,
.phone-fixed-player .music-player-thumb,
.music-player-thumb{
  width:44px!important;
  height:44px!important;
  min-width:44px!important;
  max-width:44px!important;
  border-radius:2px!important;
  background:#222 center/cover no-repeat!important;
  box-shadow:none!important;
}

/* Texto da música sem estourar largura */
.movie-player .player-track-text,
.phone-fixed-player .player-track-text,
.player-track-text{
  min-width:0!important;
  max-width:100%!important;
  overflow:hidden!important;
  display:block!important;
  text-align:left!important;
}

.movie-player .player-track-text strong,
.phone-fixed-player .player-track-text strong,
.player-track-text strong{
  display:block!important;
  max-width:100%!important;
  overflow:hidden!important;
  text-overflow:ellipsis!important;
  white-space:nowrap!important;
  color:#fff!important;
  font-size:.78rem!important;
  line-height:1.05!important;
  font-weight:1000!important;
  letter-spacing:-.02em!important;
}

.movie-player .player-track-text small,
.phone-fixed-player .player-track-text small,
.player-track-text small{
  display:block!important;
  max-width:100%!important;
  overflow:hidden!important;
  text-overflow:ellipsis!important;
  white-space:nowrap!important;
  color:rgba(255,255,255,.78)!important;
  font-size:.64rem!important;
  line-height:1.1!important;
  font-weight:850!important;
  text-align:left!important;
  margin-top:2px!important;
}

/* Botão play/pause alinhado no canto direito */
.movie-player .player-action,
.movie-player button.player-action,
.phone-fixed-player .player-action,
.phone-fixed-player button.player-action{
  justify-self:end!important;
  width:42px!important;
  height:42px!important;
  min-width:42px!important;
  max-width:42px!important;
  border-radius:50%!important;
  border:2px solid #fff!important;
  background:transparent!important;
  color:#fff!important;
  display:grid!important;
  place-items:center!important;
  padding:0!important;
  margin:0!important;
  font-size:0!important;
  cursor:pointer!important;
  -webkit-tap-highlight-color:transparent!important;
}

/* Conteúdo rolável deve ter espaço para o player edge-to-edge */
.event-scroll-content,
.movie-poster-screen > p,
.birthday-screen,
.elegant-screen{
  padding-bottom:12px!important;
}

/* Evita qualquer barra horizontal causada pela largura edge-to-edge */
.pro-phone,
.pro-screen,
.event-screen,
.event-scroll-content,
.movie-screen,
.movie-poster-screen,
.birthday-screen,
.elegant-screen,
.published-event,
.published-movie,
.published-birthday,
.published-elegant{
  overflow-x:hidden!important;
}

.pro-screen::-webkit-scrollbar:horizontal,
.event-screen::-webkit-scrollbar:horizontal,
.event-scroll-content::-webkit-scrollbar:horizontal,
.movie-screen::-webkit-scrollbar:horizontal,
.movie-poster-screen::-webkit-scrollbar:horizontal,
.birthday-screen::-webkit-scrollbar:horizontal,
.elegant-screen::-webkit-scrollbar:horizontal{
  height:0!important;
  display:none!important;
}

/* Para o Poster de Filme, a barra fica colada no rodapé sem sobrar faixa */
.movie-poster-screen .phone-fixed-player,
.movie-poster-screen .movie-player{
  flex:0 0 auto!important;
}

/* Para Evento Especial, Delux e Aniversário o player também fica como barra nativa */
.event-screen-has-fixed-player .phone-fixed-player,
.birthday-screen .phone-fixed-player,
.elegant-screen .phone-fixed-player{
  flex:0 0 auto!important;
}

/* Remove qualquer aparência de card centralizado herdada de versões anteriores */
.movie-player::before,
.phone-fixed-player::before,
.movie-player::after,
.phone-fixed-player::after{
  max-width:100%!important;
}

/* Mobile: mantém o player ocupando de borda a borda dentro do mockup */
@media(max-width:640px){
  .movie-player,
  .phone-fixed-player,
  .event-player.phone-fixed-player,
  .birthday-player.phone-fixed-player,
  .elegant-player.phone-fixed-player,
  .published-player.phone-fixed-player{
    width:calc(100% + 28px)!important;
    max-width:calc(100% + 28px)!important;
    margin-left:-14px!important;
    margin-right:-14px!important;
    min-height:72px!important;
    padding:9px 12px!important;
    grid-template-columns:42px minmax(0,1fr) 40px!important;
  }

  .movie-player .music-player-thumb,
  .phone-fixed-player .music-player-thumb,
  .music-player-thumb{
    width:42px!important;
    height:42px!important;
    min-width:42px!important;
    max-width:42px!important;
  }

  .movie-player .player-action,
  .movie-player button.player-action,
  .phone-fixed-player .player-action,
  .phone-fixed-player button.player-action{
    width:40px!important;
    height:40px!important;
    min-width:40px!important;
    max-width:40px!important;
  }
}


/* ===== Evento Especial: design e fontes conforme referência ===== */
.event-screen,
.published-event{
  background:#c91518!important;
}

.event-screen-has-fixed-player{
  background:#c91518!important;
}

.event-scroll-content{
  padding:12px 12px 92px!important;
}

.event-photo-wrap{
  margin-bottom:12px!important;
}

.event-photo{
  width:100%!important;
  height:clamp(248px,38vh,340px)!important;
  border-radius:16px!important;
  background-size:cover!important;
  background-position:center center!important;
  margin-bottom:0!important;
  box-shadow:none!important;
}

.event-dots{
  margin:12px 0 16px!important;
  gap:8px!important;
}

.event-dots span{
  width:9px!important;
  height:9px!important;
  border-radius:999px!important;
  background:rgba(255,255,255,.28)!important;
}

.event-dots span.active{
  width:24px!important;
  background:#fff!important;
}

.event-screen h2,
.published-event h2,
.event-counter-label{
  font-family:'Great Vibes','Brush Script MT','Segoe Script',cursive!important;
  color:#fff!important;
  font-weight:400!important;
  letter-spacing:0!important;
  text-transform:none!important;
}

.event-screen h2,
.published-event h2{
  font-size:clamp(2.8rem,5.2vw,4.05rem)!important;
  line-height:.92!important;
  margin:6px auto 16px!important;
  max-width:100%!important;
  text-align:center!important;
}

.event-message{
  font-family:'Poppins',Inter,ui-sans-serif,system-ui,sans-serif!important;
  color:#fff!important;
  font-size:clamp(1.02rem,1.22vw,1.2rem)!important;
  line-height:1.34!important;
  font-weight:800!important;
  text-align:center!important;
  max-width:292px!important;
  margin:0 auto 18px!important;
  padding:0 2px!important;
  word-break:normal!important;
  overflow-wrap:anywhere!important;
}

.event-counter-label{
  font-size:clamp(2.3rem,4vw,3.05rem)!important;
  line-height:1!important;
  margin:6px 0 16px!important;
  text-align:center!important;
}

.event-count-grid{
  display:grid!important;
  grid-template-columns:repeat(2,minmax(0,1fr))!important;
  gap:18px 16px!important;
  max-width:320px!important;
  margin:0 auto!important;
}

.event-count-card{
  min-height:112px!important;
  border-radius:14px!important;
  background:rgba(232,0,9,.28)!important;
  box-shadow:none!important;
  padding:12px 10px!important;
  display:flex!important;
  flex-direction:column!important;
  align-items:center!important;
  justify-content:center!important;
}

.event-count-card b{
  display:block!important;
  color:#fff!important;
  font-size:2rem!important;
  line-height:1!important;
  font-weight:900!important;
  margin-bottom:10px!important;
}

.event-count-card span{
  display:block!important;
  color:#fff!important;
  font-size:1rem!important;
  line-height:1.05!important;
  font-weight:800!important;
  text-transform:lowercase!important;
}

@media (max-width: 560px){
  .event-screen,
  .published-event{
    padding-top:20px!important;
  }

  .event-scroll-content{
    padding:12px 10px 90px!important;
  }

  .event-photo{
    height:265px!important;
    border-radius:14px!important;
  }

  .event-screen h2,
  .published-event h2{
    font-size:3rem!important;
    margin:8px auto 14px!important;
  }

  .event-message{
    max-width:276px!important;
    font-size:1rem!important;
    line-height:1.33!important;
    margin-bottom:16px!important;
  }

  .event-counter-label{
    font-size:2.55rem!important;
    margin:4px 0 14px!important;
  }

  .event-count-grid{
    max-width:298px!important;
    gap:16px 14px!important;
  }

  .event-count-card{
    min-height:98px!important;
    border-radius:13px!important;
  }

  .event-count-card b{
    font-size:1.92rem!important;
    margin-bottom:8px!important;
  }

  .event-count-card span{
    font-size:.98rem!important;
  }
}


/* ===== Delux: design elegante com paleta exclusiva ===== */

.phone-delux .elegant-screen,
.published-delux .published-elegant{
  background:linear-gradient(180deg,#fbf8f2 0%,#f8f1e7 100%)!important;
  color:#241a11!important;
}

.phone-delux .elegant-screen{
  padding:22px 14px 24px!important;
  scrollbar-width:thin;
  scrollbar-color:rgba(197,22,24,.45) transparent;
}

.published-delux .published-elegant{
  padding:30px 22px 34px!important;
}

.phone-delux.theme-ruby .elegant-screen,
.published-delux.theme-ruby .published-elegant{ background:linear-gradient(180deg,#fff7fa 0%,#fbeff4 100%)!important; }
.phone-delux.theme-sapphire .elegant-screen,
.published-delux.theme-sapphire .published-elegant{ background:linear-gradient(180deg,#f8fbff 0%,#edf5ff 100%)!important; }
.phone-delux.theme-emerald .elegant-screen,
.published-delux.theme-emerald .published-elegant{ background:linear-gradient(180deg,#f8fffc 0%,#eefaf4 100%)!important; }
.phone-delux.theme-rose .elegant-screen,
.published-delux.theme-rose .published-elegant{ background:linear-gradient(180deg,#fff8f8 0%,#fff0f4 100%)!important; }
.phone-delux.theme-noir .elegant-screen,
.published-delux.theme-noir .published-elegant{ background:linear-gradient(180deg,#161412 0%,#090807 100%)!important;color:#f3eadf!important; }
.phone-delux.theme-noir .ornament,
.phone-delux.theme-noir .small-ornament,
.phone-delux.theme-noir .date-line,
.phone-delux.theme-noir .section-label,
.phone-delux.theme-noir .elegant-count-item span,
.published-delux.theme-noir .ornament,
.published-delux.theme-noir .small-ornament,
.published-delux.theme-noir .date-line,
.published-delux.theme-noir .section-label,
.published-delux.theme-noir .elegant-count-item span{ color:#d4b07b!important; }
.phone-delux.theme-noir .music-card,
.published-delux.theme-noir .music-card{ background:rgba(255,255,255,.03)!important;border-color:#5d4a33!important;color:#f3eadf!important; }
.phone-delux.theme-noir .music-card small,
.published-delux.theme-noir .music-card small{ color:#dbc39d!important; }

.phone-delux .ornament,
.published-delux .ornament{
  gap:10px!important;
  font-family:Georgia,serif!important;
  color:#c79c62!important;
  font-size:.92rem!important;
  font-style:italic!important;
  letter-spacing:.06em!important;
  margin-bottom:10px!important;
}
.phone-delux .ornament span,
.phone-delux .small-ornament span,
.published-delux .ornament span,
.published-delux .small-ornament span{ background:#e4cfad!important; height:1px!important; width:52px!important; }
.phone-delux .small-ornament,
.published-delux .small-ornament{ margin:16px 0 10px!important; color:#c79c62!important; }
.phone-delux .small-ornament i,
.published-delux .small-ornament i{ width:6px!important; height:6px!important; background:#c79c62!important; transform:rotate(45deg)!important; }

.phone-delux .elegant-showcase,
.published-delux .elegant-showcase{
  position:relative;
  height:242px;
  margin:10px auto 18px;
  display:flex;
  align-items:center;
  justify-content:center;
}
.published-delux .elegant-showcase{ height:286px; margin-bottom:20px; }
.phone-delux .photo-card.main,
.phone-delux .published-photo.main,
.published-delux .published-photo.main{
  width:158px!important;
  height:195px!important;
  border-radius:4px!important;
  margin:0!important;
  position:relative;
  z-index:3;
  background-size:cover!important;
  background-position:center!important;
  box-shadow:0 18px 28px rgba(0,0,0,.16)!important;
}
.published-delux .published-photo.main{ width:188px!important; height:232px!important; }
.phone-delux .gallery-side,
.published-delux .gallery-side{
  position:absolute;
  top:50%;
  width:92px;
  height:132px;
  border-radius:4px;
  background:#d9d0c2 center/cover no-repeat;
  box-shadow:0 12px 22px rgba(0,0,0,.10);
  opacity:.96;
}
.published-delux .gallery-side{ width:106px; height:152px; }
.phone-delux .gallery-side.left,
.published-delux .gallery-side.left{ left:0; transform:translateY(-50%) rotate(-8deg); }
.phone-delux .gallery-side.right,
.published-delux .gallery-side.right{ right:0; transform:translateY(-50%) rotate(8deg); }
.phone-delux .gallery-arrow,
.published-delux .gallery-arrow{
  position:absolute;
  top:50%;
  width:34px;
  height:34px;
  border-radius:999px;
  border:0;
  background:#fbf4e6;
  color:#c89c60;
  box-shadow:0 8px 18px rgba(0,0,0,.10);
  transform:translateY(-50%);
  z-index:4;
  font-size:1rem;
  font-weight:900;
}
.phone-delux .gallery-arrow.left,
.published-delux .gallery-arrow.left{ left:-2px; }
.phone-delux .gallery-arrow.right,
.published-delux .gallery-arrow.right{ right:-2px; }

.phone-delux .delux-dots,
.published-delux .delux-dots{ display:flex!important;justify-content:center!important;gap:8px!important;margin:0 0 16px!important; }
.phone-delux .delux-dots i,
.published-delux .delux-dots i{ width:6px!important;height:6px!important;border-radius:999px!important;background:#e3cfaf!important;display:block!important; }
.phone-delux .delux-dots i.active,
.published-delux .delux-dots i.active{ width:24px!important;height:6px!important;background:#c79c62!important; }

.phone-delux .elegant-screen h2,
.published-delux .published-elegant h1{
  font-family:'Great Vibes','Brush Script MT','Segoe Script',cursive!important;
  font-size:3rem!important;
  line-height:.9!important;
  font-weight:400!important;
  color:#1b140f!important;
  margin:0 0 8px!important;
}
.published-delux .published-elegant h1{ font-size:3.25rem!important; }
.phone-delux.theme-noir .elegant-screen h2,
.published-delux.theme-noir .published-elegant h1{ color:#f5eadc!important; }

.phone-delux .date-line,
.published-delux .date-line{
  display:block!important;
  margin:0 0 18px!important;
  font-family:Georgia,serif!important;
  font-style:italic!important;
  font-size:.85rem!important;
  line-height:1.4!important;
  color:#c19a61!important;
  letter-spacing:.12em!important;
  text-transform:none!important;
}

.phone-delux .elegant-screen article,
.published-delux .letter-text{
  background:transparent!important;
  border:0!important;
  padding:0 8px!important;
  margin:0 0 22px!important;
  font-family:Georgia,serif!important;
  font-style:italic!important;
  font-size:1.02rem!important;
  line-height:1.8!important;
  color:#7a5f48!important;
  text-align:center!important;
  white-space:pre-wrap!important;
}
.phone-delux.theme-noir .elegant-screen article,
.published-delux.theme-noir .letter-text{ color:#d8c1a0!important; }

.phone-delux .section-label,
.published-delux .section-label{
  text-transform:uppercase!important;
  letter-spacing:.34em!important;
  color:#be9760!important;
  font-size:.88rem!important;
  margin:28px 0 16px!important;
}

.phone-delux .music-card,
.published-delux .music-card{
  display:grid!important;
  grid-template-columns:52px 1fr 56px!important;
  gap:14px!important;
  align-items:center!important;
  text-align:left!important;
  background:#fffaf2!important;
  border:1px solid #ead8bb!important;
  border-radius:4px!important;
  padding:15px 16px!important;
  box-shadow:none!important;
  max-width:100%!important;
}
.published-delux .music-card{ max-width:340px!important; margin:0 auto!important; }
.phone-delux .music-card-media,
.published-delux .music-card-media{ display:flex!important; align-items:center!important; justify-content:center!important; }
.phone-delux .music-card .music-player-thumb,
.published-delux .music-card .music-player-thumb{
  width:46px!important;
  height:46px!important;
  border-radius:2px!important;
  min-width:46px!important;
}
.phone-delux .music-card strong,
.published-delux .music-card strong{
  display:block!important;
  font-family:Georgia,serif!important;
  font-size:1.05rem!important;
  font-weight:400!important;
  color:#2b2118!important;
  line-height:1.1!important;
  white-space:nowrap!important;
  overflow:hidden!important;
  text-overflow:ellipsis!important;
}
.phone-delux .music-card small,
.published-delux .music-card small{
  display:block!important;
  margin-top:4px!important;
  color:#8f7a62!important;
  font-size:.78rem!important;
  letter-spacing:.12em!important;
  text-transform:lowercase!important;
}
.phone-delux .music-card .player-action,
.published-delux .music-card .player-action{
  width:46px!important;
  height:46px!important;
  border-radius:50%!important;
  background:#e3c48d!important;
  border:0!important;
  color:#211910!important;
}

.phone-delux .elegant-count,
.published-delux .elegant-count{
  display:grid!important;
  grid-template-columns:repeat(3,minmax(0,1fr))!important;
  gap:16px 10px!important;
  margin-top:6px!important;
}
.phone-delux .elegant-count-item,
.published-delux .elegant-count-item{ text-align:center!important; position:relative; }
.phone-delux .elegant-count-item b,
.published-delux .elegant-count-item b{
  display:block!important;
  font-family:Georgia,serif!important;
  font-size:1.28rem!important;
  line-height:1.1!important;
  font-weight:400!important;
  color:#201712!important;
  margin-bottom:6px!important;
}
.phone-delux.theme-noir .elegant-count-item b,
.published-delux.theme-noir .elegant-count-item b{ color:#f5eadc!important; }
.phone-delux .elegant-count-item span,
.published-delux .elegant-count-item span{
  display:block!important;
  text-transform:uppercase!important;
  letter-spacing:.18em!important;
  color:#c09c63!important;
  font-size:.68rem!important;
}

.phone-delux .elegant-screen footer,
.published-delux .published-elegant footer{
  border-top:1px solid #eadcc5!important;
  margin-top:24px!important;
  padding-top:22px!important;
  color:#bf985f!important;
  font-family:Georgia,serif!important;
  font-style:italic!important;
}
.phone-delux .elegant-screen footer small,
.published-delux .published-elegant footer small{ font-size:1rem!important; }

@media (max-width:560px){
  .phone-delux .elegant-screen{ padding:18px 12px 22px!important; }
  .phone-delux .elegant-showcase{ height:226px!important; }
  .phone-delux .photo-card.main{ width:150px!important; height:194px!important; }
  .phone-delux .gallery-side{ width:86px!important; height:126px!important; }
  .phone-delux .elegant-screen h2{ font-size:2.78rem!important; }
  .phone-delux .elegant-screen article{ font-size:.98rem!important; line-height:1.72!important; }
}


/* ===== Cartão de Aniversário: design solicitado + confetti opcional ===== */
.effect-card{
  align-items:center;
}
.effect-optional{
  margin-left:auto;
  padding:6px 10px;
  border-radius:999px;
  border:1px solid rgba(255,255,255,.18);
  background:rgba(255,255,255,.06);
  color:#ffd7ea;
  font-style:normal;
  font-size:.78rem;
  font-weight:900;
  letter-spacing:.04em;
}
.effect-card b{margin-left:0}
.effect-card:has(input:not(:checked)) .effect-optional{opacity:.8}

.phone-aniversario .birthday-screen,
.published-birthday .birthday-screen,
.checkout-wrapper .phone-aniversario .birthday-screen{
  background:#c51618!important;
  color:#fff!important;
  padding:18px 12px 100px!important;
  text-align:center!important;
  position:relative!important;
}
.published-birthday .birthday-screen{padding:22px 16px 116px!important}

.phone-aniversario .birthday-photo,
.published-birthday .birthday-photo{
  height:248px!important;
  border-radius:18px!important;
  margin:10px auto 12px!important;
  background-position:center!important;
  background-size:cover!important;
  box-shadow:none!important;
}
.published-birthday .birthday-photo{height:288px!important}

.phone-aniversario .birthday-dots,
.published-birthday .birthday-dots{
  display:flex!important;
  justify-content:center!important;
  gap:8px!important;
  margin:0 0 8px!important;
}
.phone-aniversario .birthday-dots i,
.published-birthday .birthday-dots i{
  display:block!important;
  width:8px!important;
  height:8px!important;
  border-radius:999px!important;
  background:rgba(255,255,255,.28)!important;
}
.phone-aniversario .birthday-dots i.active,
.published-birthday .birthday-dots i.active{
  width:26px!important;
  background:#fff!important;
}

.phone-aniversario .birthday-screen h2,
.published-birthday h1{
  font-family:'Great Vibes','Brush Script MT','Segoe Script',cursive!important;
  color:#fff!important;
  font-size:3.55rem!important;
  line-height:.92!important;
  font-weight:400!important;
  margin:6px 0 10px!important;
  text-shadow:none!important;
}
.published-birthday h1{font-size:4.1rem!important}

.phone-aniversario .birthday-message,
.published-birthday .final-birthday-message{
  margin:0 auto!important;
  max-width:270px!important;
  font-family:Inter,ui-sans-serif,system-ui,-apple-system,BlinkMacSystemFont,'Segoe UI',sans-serif!important;
  font-style:normal!important;
  font-weight:900!important;
  font-size:1.04rem!important;
  line-height:1.42!important;
  color:#fff!important;
  white-space:pre-wrap!important;
  overflow-wrap:anywhere!important;
  text-align:center!important;
}
.published-birthday .final-birthday-message{max-width:320px!important;font-size:1.14rem!important}

.phone-aniversario .birthday-date,
.published-birthday .birthday-date{
  display:inline-block!important;
  margin:14px auto 0!important;
  color:#ffd9d9!important;
  font-weight:900!important;
  font-size:.85rem!important;
}

.phone-aniversario .birthday-player.phone-fixed-player,
.published-birthday .birthday-player.phone-fixed-player{
  position:absolute!important;
  left:0!important;
  right:0!important;
  bottom:0!important;
  width:100%!important;
  border-radius:0 0 28px 28px!important;
  background:#070707!important;
  border-top:1px solid rgba(255,255,255,.08)!important;
  padding:10px 12px calc(10px + env(safe-area-inset-bottom,0px))!important;
  min-height:74px!important;
  box-shadow:none!important;
}
.published-birthday .birthday-player.phone-fixed-player{border-radius:0 0 26px 26px!important}
.phone-aniversario .birthday-player .music-player-thumb,
.published-birthday .birthday-player .music-player-thumb{
  width:38px!important;height:38px!important;border-radius:2px!important;min-width:38px!important;
}
.phone-aniversario .birthday-player .player-track-text,
.published-birthday .birthday-player .player-track-text{
  text-align:left!important;
  min-width:0!important;
}
.phone-aniversario .birthday-player strong,
.published-birthday .birthday-player strong{
  display:block!important;
  color:#fff!important;
  text-transform:none!important;
  font-size:.92rem!important;
  line-height:1.15!important;
  font-weight:800!important;
  white-space:nowrap!important;
  overflow:hidden!important;
  text-overflow:ellipsis!important;
  max-width:180px!important;
}
.phone-aniversario .birthday-player small,
.published-birthday .birthday-player small{
  display:block!important;
  color:#d8d8d8!important;
  font-size:.72rem!important;
  margin-top:2px!important;
  letter-spacing:0!important;
  text-transform:none!important;
}
.phone-aniversario .birthday-player .player-action,
.published-birthday .birthday-player .player-action{
  width:42px!important;
  height:42px!important;
  min-width:42px!important;
  border-radius:999px!important;
  border:2px solid rgba(255,255,255,.92)!important;
  background:transparent!important;
  color:#fff!important;
}
.phone-aniversario .birthday-player .play-icon,
.published-birthday .birthday-player .play-icon{border-left-color:#fff!important;margin-left:3px!important}
.phone-aniversario .birthday-player .pause-icon,
.published-birthday .birthday-player .pause-icon{background:linear-gradient(90deg,#fff 0 35%,transparent 35% 65%,#fff 65% 100%)!important}

.phone-aniversario .phone-confetti,
.published-birthday .phone-confetti{opacity:.95!important}

@media (max-width:560px){
  .phone-aniversario .birthday-screen h2{font-size:3.28rem!important}
  .phone-aniversario .birthday-message{font-size:1rem!important;max-width:262px!important}
  .phone-aniversario .birthday-photo{height:238px!important}
}



/* ===== Correção: player fixo no rodapé + rolagem estável no celular ===== */
.pro-phone,
.pro-screen{
  overflow:hidden!important;
}

.event-screen,
.event-screen-has-fixed-player,
.movie-cinematic-screen,
.movie-poster-screen,
.birthday-screen{
  position:relative!important;
  overflow:hidden!important;
  height:100%!important;
  min-height:100%!important;
}

/* Containers que realmente rolam. Agora a rolagem permanece onde a pessoa soltou. */
.event-scroll-content,
.movie-poster-scroll,
.birthday-screen,
.elegant-screen,
.published-event .event-scroll-content,
.published-movie .movie-poster-scroll,
.published-birthday .birthday-screen,
.published-elegant.elegant-screen{
  overflow-y:auto!important;
  overflow-x:hidden!important;
  -webkit-overflow-scrolling:touch!important;
  overscroll-behavior:contain!important;
  scroll-behavior:auto!important;
  scrollbar-width:thin!important;
  scrollbar-color:rgba(255,255,255,.55) transparent!important;
}

/* Pode mostrar a barra vertical à direita, como você pediu. */
.event-scroll-content::-webkit-scrollbar,
.movie-poster-scroll::-webkit-scrollbar,
.birthday-screen::-webkit-scrollbar,
.elegant-screen::-webkit-scrollbar,
.published-event .event-scroll-content::-webkit-scrollbar,
.published-movie .movie-poster-scroll::-webkit-scrollbar,
.published-birthday .birthday-screen::-webkit-scrollbar,
.published-elegant.elegant-screen::-webkit-scrollbar{
  width:6px!important;
  height:0!important;
}

.event-scroll-content::-webkit-scrollbar-thumb,
.movie-poster-scroll::-webkit-scrollbar-thumb,
.birthday-screen::-webkit-scrollbar-thumb,
.elegant-screen::-webkit-scrollbar-thumb,
.published-event .event-scroll-content::-webkit-scrollbar-thumb,
.published-movie .movie-poster-scroll::-webkit-scrollbar-thumb,
.published-birthday .birthday-screen::-webkit-scrollbar-thumb,
.published-elegant.elegant-screen::-webkit-scrollbar-thumb{
  background:rgba(255,255,255,.52)!important;
  border-radius:999px!important;
}

/* espaço inferior para o player não cobrir texto */
.event-scroll-content,
.movie-poster-scroll{
  padding-bottom:104px!important;
}

.birthday-screen{
  padding-bottom:108px!important;
}

/* Player de música SEMPRE grudado na parte de baixo da tela do celular preview/final. */
.event-screen > .phone-fixed-player,
.movie-cinematic-screen > .phone-fixed-player,
.movie-poster-screen > .phone-fixed-player,
.birthday-screen > .phone-fixed-player,
.published-event > .phone-fixed-player,
.published-movie > .phone-fixed-player,
.published-birthday .birthday-screen > .phone-fixed-player{
  position:absolute!important;
  left:0!important;
  right:0!important;
  bottom:0!important;
  width:100%!important;
  max-width:100%!important;
  min-width:0!important;
  margin:0!important;
  border-radius:0 0 30px 30px!important;
  z-index:90!important;
  background:#050505!important;
  border-top:1px solid rgba(255,255,255,.10)!important;
  padding:10px 14px calc(10px + env(safe-area-inset-bottom,0px))!important;
  min-height:76px!important;
  display:grid!important;
  grid-template-columns:44px minmax(0,1fr) 42px!important;
  gap:10px!important;
  align-items:center!important;
  box-shadow:none!important;
  overflow:hidden!important;
}

/* No poster, a barra cobre até o rodapé, sem faixa vermelha/preta sobrando. */
.movie-cinematic-screen .phone-fixed-player,
.movie-poster-screen .phone-fixed-player{
  bottom:0!important;
  border-radius:0!important;
}

/* Botão play/pause sincronizado: tocando = pause, pausado = play */
.player-action .play-icon{
  display:block!important;
}

.player-action .pause-icon{
  display:none!important;
}

.player-action.is-playing .play-icon{
  display:none!important;
}

.player-action.is-playing .pause-icon{
  display:block!important;
}

.player-action.is-playing .pause-icon::before,
.player-action.is-playing .pause-icon::after{
  background:#fff!important;
}

/* Remove spinner antigo; o clique já mostra pause imediatamente */
.player-action.is-loading::after{
  display:none!important;
  content:none!important;
}

.player-action.is-loading .play-icon{
  display:none!important;
}

.player-action.is-loading .pause-icon{
  display:block!important;
}

/* Texto do player alinhado e sem estourar */
.phone-fixed-player .player-track-text,
.movie-player .player-track-text{
  min-width:0!important;
  max-width:100%!important;
  overflow:hidden!important;
}

.phone-fixed-player .player-track-text strong,
.movie-player .player-track-text strong{
  display:block!important;
  max-width:100%!important;
  overflow:hidden!important;
  white-space:nowrap!important;
  text-overflow:ellipsis!important;
}

.phone-fixed-player .music-player-thumb,
.movie-player .music-player-thumb{
  width:42px!important;
  height:42px!important;
  min-width:42px!important;
  max-width:42px!important;
  border-radius:2px!important;
}

@media(max-width:640px){
  .event-screen > .phone-fixed-player,
  .movie-cinematic-screen > .phone-fixed-player,
  .movie-poster-screen > .phone-fixed-player,
  .birthday-screen > .phone-fixed-player,
  .published-event > .phone-fixed-player,
  .published-movie > .phone-fixed-player,
  .published-birthday .birthday-screen > .phone-fixed-player{
    min-height:74px!important;
    padding:9px 12px calc(9px + env(safe-area-inset-bottom,0px))!important;
    grid-template-columns:42px minmax(0,1fr) 40px!important;
  }
}


/* ===== Ajustes pedidos: cards, Evento Especial, player e rolagem ===== */
.plan-evento .feature-list li:has(span:last-child:nth-child(2)),
.feature-list li.negative .feat-icon{
  font-weight:1000;
}

.plan-evento .feature-list li.negative .feat-icon{
  color:#ff4b55!important;
}

/* Evento Especial moderno mantendo fundo vermelho */
.phone-evento .event-screen,
.published-event.event-screen{
  background:
    radial-gradient(circle at 18% 0%, rgba(255,255,255,.12), transparent 34%),
    linear-gradient(180deg,#d01619 0%,#bd0f12 48%,#a8080c 100%)!important;
  color:#fff!important;
}

.phone-evento .event-scroll-content,
.published-event .event-scroll-content{
  padding:16px 14px 116px!important;
  overflow-y:auto!important;
  overflow-x:hidden!important;
  overscroll-behavior:contain!important;
  -webkit-overflow-scrolling:touch!important;
  scroll-behavior:auto!important;
  scrollbar-width:thin!important;
  scrollbar-color:rgba(255,255,255,.55) rgba(0,0,0,.08)!important;
  min-height:0!important;
}

.phone-evento .event-scroll-content::-webkit-scrollbar,
.published-event .event-scroll-content::-webkit-scrollbar{
  width:6px!important;
  height:0!important;
}

.phone-evento .event-scroll-content::-webkit-scrollbar-thumb,
.published-event .event-scroll-content::-webkit-scrollbar-thumb{
  background:rgba(255,255,255,.55)!important;
  border-radius:999px!important;
}

.phone-evento .event-photo,
.published-event .event-photo{
  border-radius:18px!important;
  box-shadow:0 18px 38px rgba(72,0,0,.28)!important;
}

.phone-evento .event-message,
.published-event .event-message{
  max-width:310px!important;
  text-shadow:0 2px 10px rgba(0,0,0,.08)!important;
}

.phone-evento .event-counter-label,
.published-event .event-counter-label{
  margin-top:18px!important;
}

.phone-evento .event-count-grid,
.published-event .event-count-grid{
  display:grid!important;
  grid-template-columns:repeat(2,minmax(0,1fr))!important;
  gap:16px!important;
  max-width:320px!important;
  margin:0 auto!important;
}

.phone-evento .event-count-card,
.published-event .event-count-card{
  min-height:96px!important;
  border-radius:16px!important;
  background:linear-gradient(180deg,rgba(244,16,23,.94),rgba(205,4,10,.94))!important;
  border:1px solid rgba(255,255,255,.08)!important;
  box-shadow:
    inset 0 1px 0 rgba(255,255,255,.10),
    0 16px 30px rgba(85,0,0,.18)!important;
  padding:14px 10px!important;
}

.phone-evento .event-count-card b,
.published-event .event-count-card b{
  font-size:2.1rem!important;
  font-weight:1000!important;
}

.phone-evento .event-count-card span,
.published-event .event-count-card span{
  font-size:1.02rem!important;
  font-weight:900!important;
}

/* Player fixo, preto e colado no rodapé, com nome da música em cima e cantor embaixo */
.event-screen > .phone-fixed-player,
.movie-cinematic-screen > .phone-fixed-player,
.movie-poster-screen > .phone-fixed-player,
.birthday-screen > .phone-fixed-player,
.published-event > .phone-fixed-player,
.published-movie > .phone-fixed-player,
.published-birthday .birthday-screen > .phone-fixed-player{
  position:absolute!important;
  left:0!important;
  right:0!important;
  bottom:0!important;
  width:100%!important;
  max-width:100%!important;
  min-width:0!important;
  margin:0!important;
  border-radius:0!important;
  background:#050505!important;
  border-top:1px solid rgba(255,255,255,.10)!important;
  min-height:82px!important;
  padding:12px 14px calc(12px + env(safe-area-inset-bottom,0px))!important;
  display:grid!important;
  grid-template-columns:46px minmax(0,1fr) 44px!important;
  align-items:center!important;
  gap:11px!important;
  z-index:120!important;
  box-shadow:0 -16px 34px rgba(0,0,0,.16)!important;
  overflow:hidden!important;
}

.phone-fixed-player .music-player-thumb,
.movie-player .music-player-thumb{
  width:46px!important;
  height:46px!important;
  min-width:46px!important;
  max-width:46px!important;
  border-radius:3px!important;
  background-color:#262626!important;
}

.phone-fixed-player .player-track-text,
.movie-player .player-track-text{
  display:block!important;
  min-width:0!important;
  max-width:100%!important;
  overflow:hidden!important;
  text-align:left!important;
}

.phone-fixed-player .player-track-text strong,
.movie-player .player-track-text strong{
  display:block!important;
  color:#fff!important;
  font-size:.9rem!important;
  line-height:1.05!important;
  font-weight:950!important;
  white-space:nowrap!important;
  overflow:hidden!important;
  text-overflow:ellipsis!important;
  margin:0 0 4px!important;
}

.phone-fixed-player .player-track-text small,
.movie-player .player-track-text small{
  display:block!important;
  color:rgba(255,255,255,.72)!important;
  font-size:.72rem!important;
  line-height:1.05!important;
  font-weight:800!important;
  white-space:nowrap!important;
  overflow:hidden!important;
  text-overflow:ellipsis!important;
  text-transform:none!important;
  letter-spacing:0!important;
}

/* Botão sincronizado: tocando = dois palitos; pausado = play */
.player-action .play-icon{
  display:block!important;
}

.player-action .pause-icon{
  display:none!important;
}

.player-action.is-playing .play-icon,
.player-action.is-loading .play-icon{
  display:none!important;
}

.player-action.is-playing .pause-icon,
.player-action.is-loading .pause-icon{
  display:block!important;
}

.player-action .pause-icon{
  width:15px!important;
  height:17px!important;
  position:relative!important;
  background:none!important;
}

.player-action .pause-icon::before,
.player-action .pause-icon::after{
  content:""!important;
  position:absolute!important;
  top:0!important;
  width:5px!important;
  height:17px!important;
  background:#fff!important;
  border-radius:2px!important;
}

.player-action .pause-icon::before{left:1px!important;}
.player-action .pause-icon::after{right:1px!important;}

.player-action.is-loading::after{
  display:none!important;
  content:none!important;
}

/* Evita pulo de rolagem e anchoring automático */
.pro-screen,
.event-scroll-content,
.movie-poster-scroll,
.birthday-screen,
.elegant-screen{
  overflow-anchor:none!important;
  scroll-behavior:auto!important;
  overscroll-behavior:contain!important;
  touch-action:pan-y!important;
}

/* espaço extra para player não cobrir conteúdo */
.event-scroll-content,
.movie-poster-scroll{
  padding-bottom:118px!important;
}

.birthday-screen{
  padding-bottom:118px!important;
}

@media(max-width:640px){
  .event-screen > .phone-fixed-player,
  .movie-cinematic-screen > .phone-fixed-player,
  .movie-poster-screen > .phone-fixed-player,
  .birthday-screen > .phone-fixed-player,
  .published-event > .phone-fixed-player,
  .published-movie > .phone-fixed-player,
  .published-birthday .birthday-screen > .phone-fixed-player{
    min-height:80px!important;
    grid-template-columns:44px minmax(0,1fr) 42px!important;
    padding:11px 12px calc(11px + env(safe-area-inset-bottom,0px))!important;
  }
}



/* ===== Enquadramento das fotos: não cortar imagem ===== */
/* Todas as fotos selecionadas agora usam contain para mostrar a imagem inteira.
   O fundo fica preenchido de forma discreta para evitar cortes nas bordas. */

.event-photo,
.event-photo-wrap .event-photo,
.birthday-photo,
.photo-card,
.photo-card.main,
.published-photo,
.published-photo.main,
.movie-hero,
.movie-scene-thumb,
.movie-big-scene,
.gallery-side,
.event-preview-photo,
.preview-photo,
.phone-photo,
.phone-gallery-photo,
.example-photo,
.upload-preview img{
  background-size:contain!important;
  background-position:center center!important;
  background-repeat:no-repeat!important;
  object-fit:contain!important;
}

/* Fundo por modelo para quando a foto inteira criar espaços laterais/superiores */
.event-photo,
.birthday-photo,
.phone-evento .event-photo,
.phone-aniversario .birthday-photo,
.published-event .event-photo,
.published-birthday .birthday-photo{
  background-color:rgba(0,0,0,.13)!important;
}

.phone-delux .photo-card.main,
.phone-delux .published-photo.main,
.published-delux .published-photo.main,
.phone-delux .gallery-side,
.published-delux .gallery-side,
.elegant-screen .photo-card,
.elegant-screen .gallery-side{
  background-color:#f4eadc!important;
}

.movie-cinematic-screen .movie-hero,
.movie-poster-screen .movie-hero,
.movie-scene-thumb,
.movie-big-scene{
  background-color:#080808!important;
}

/* Garante que imagens enviadas via <img> também não cortem */
.upload-preview img,
.photo-thumb img,
.preview-image img,
.phone-screen img,
.pro-screen img{
  object-fit:contain!important;
  object-position:center center!important;
}

/* Mantém o formato bonito dos containers sem cortar a foto */
.event-photo,
.birthday-photo,
.movie-hero,
.photo-card.main,
.published-photo.main{
  overflow:hidden!important;
}

/* Nas miniaturas, mostra a foto inteira também */
.movie-scenes-row .movie-scene-thumb,
.upload-preview .thumb,
.upload-preview .photo-thumb{
  background-size:contain!important;
  background-position:center center!important;
  background-repeat:no-repeat!important;
}


/* ===== Delux: carrossel, setas, bolinhas e fotos sem corte ===== */
.phone-delux .elegant-showcase.delux-carousel,
.published-delux .elegant-showcase.delux-carousel,
.elegant-screen .elegant-showcase.delux-carousel,
.published-elegant .elegant-showcase.delux-carousel{
  position:relative!important;
  height:242px!important;
  margin:10px auto 18px!important;
  display:flex!important;
  align-items:center!important;
  justify-content:center!important;
  overflow:visible!important;
}

.published-delux .elegant-showcase.delux-carousel,
.published-elegant .elegant-showcase.delux-carousel{
  height:286px!important;
}

.phone-delux .photo-card.main,
.phone-delux .published-photo.main,
.published-delux .published-photo.main,
.elegant-screen .photo-card.main,
.published-elegant .published-photo.main{
  width:158px!important;
  height:195px!important;
  border-radius:5px!important;
  background-size:contain!important;
  background-position:center center!important;
  background-repeat:no-repeat!important;
  background-color:#f4eadc!important;
  box-shadow:0 18px 28px rgba(0,0,0,.16)!important;
}

.published-delux .published-photo.main,
.published-elegant .published-photo.main{
  width:188px!important;
  height:232px!important;
}

.phone-delux .gallery-side,
.published-delux .gallery-side,
.elegant-screen .gallery-side,
.published-elegant .gallery-side{
  width:92px!important;
  height:132px!important;
  border-radius:5px!important;
  background-size:contain!important;
  background-position:center center!important;
  background-repeat:no-repeat!important;
  background-color:#f4eadc!important;
}

.published-delux .gallery-side,
.published-elegant .gallery-side{
  width:106px!important;
  height:152px!important;
}

.phone-delux .gallery-side.left,
.published-delux .gallery-side.left,
.elegant-screen .gallery-side.left,
.published-elegant .gallery-side.left{
  left:0!important;
  transform:translateY(-50%) rotate(-8deg)!important;
}

.phone-delux .gallery-side.right,
.published-delux .gallery-side.right,
.elegant-screen .gallery-side.right,
.published-elegant .gallery-side.right{
  right:0!important;
  transform:translateY(-50%) rotate(8deg)!important;
}

.phone-delux .gallery-arrow,
.published-delux .gallery-arrow,
.elegant-screen .gallery-arrow,
.published-elegant .gallery-arrow{
  z-index:8!important;
  pointer-events:auto!important;
  cursor:pointer!important;
}

.phone-delux .delux-dots,
.published-delux .delux-dots,
.elegant-screen .delux-dots,
.published-elegant .delux-dots{
  display:flex!important;
  justify-content:center!important;
  align-items:center!important;
  gap:8px!important;
  margin:0 0 16px!important;
}

.phone-delux .delux-dots button,
.published-delux .delux-dots button,
.elegant-screen .delux-dots button,
.published-elegant .delux-dots button{
  appearance:none!important;
  border:0!important;
  padding:0!important;
  margin:0!important;
  display:block!important;
  width:6px!important;
  height:6px!important;
  border-radius:999px!important;
  background:#e3cfaf!important;
  cursor:pointer!important;
}

.phone-delux .delux-dots button.active,
.published-delux .delux-dots button.active,
.elegant-screen .delux-dots button.active,
.published-elegant .delux-dots button.active{
  width:24px!important;
  background:#c79c62!important;
}

/* Display da música no Delux fica dentro da página, abaixo da mensagem e antes do contador */
.phone-delux .delux-music-card,
.published-delux .delux-music-card,
.elegant-screen .delux-music-card,
.published-elegant .delux-music-card{
  position:relative!important;
  left:auto!important;
  right:auto!important;
  bottom:auto!important;
  width:100%!important;
  max-width:100%!important;
  margin:0 auto 26px!important;
  background:#fffaf2!important;
  border:1px solid #ead8bb!important;
  border-radius:5px!important;
  padding:15px 16px!important;
  display:grid!important;
  grid-template-columns:52px minmax(0,1fr) 56px!important;
  gap:14px!important;
  align-items:center!important;
}

.phone-delux .delux-music-card .music-player-thumb,
.published-delux .delux-music-card .music-player-thumb,
.elegant-screen .delux-music-card .music-player-thumb,
.published-elegant .delux-music-card .music-player-thumb{
  width:46px!important;
  height:46px!important;
  min-width:46px!important;
  border-radius:2px!important;
  background-size:contain!important;
  background-position:center!important;
  background-repeat:no-repeat!important;
  background-color:#eee0c9!important;
}

.phone-delux .delux-music-card .player-action,
.published-delux .delux-music-card .player-action,
.elegant-screen .delux-music-card .player-action,
.published-elegant .delux-music-card .player-action{
  width:46px!important;
  height:46px!important;
  border-radius:50%!important;
  background:#e3c48d!important;
  border:0!important;
  color:#211910!important;
}

/* Valor Delux permanece fixo no preço final de R$ 19,90 */
.plan-delux .price{
  white-space:nowrap!important;
}

@media(max-width:560px){
  .phone-delux .elegant-showcase.delux-carousel,
  .elegant-screen .elegant-showcase.delux-carousel{
    height:226px!important;
  }
  .phone-delux .photo-card.main,
  .elegant-screen .photo-card.main{
    width:150px!important;
    height:194px!important;
  }
  .phone-delux .gallery-side,
  .elegant-screen .gallery-side{
    width:86px!important;
    height:126px!important;
  }
}



/* ===== Cartão de Aniversário + Poster: paletas, fotos sem corte, player e rolagem ===== */

/* Paletas: Delux mostra as premium, Aniversário mostra apenas as 4 paletas do aniversário */
.palette-birthday{display:none!important;}
body.plan-aniversario .palette-delux{display:none!important;}
body.plan-aniversario .palette-birthday{display:block!important;}
body.plan-aniversario #eventPaletteNotice{
  display:block!important;
  color:#ffd9e8!important;
  border-color:rgba(255,255,255,.15)!important;
  background:rgba(255,255,255,.06)!important;
}

.palette-card.birthday-red span i:nth-child(1){background:#c51618!important}
.palette-card.birthday-red span i:nth-child(2){background:#ff6b76!important}
.palette-card.birthday-red span i:nth-child(3){background:#fff0f1!important}
.palette-card.birthday-pink span i:nth-child(1){background:#ff4fa0!important}
.palette-card.birthday-pink span i:nth-child(2){background:#ffc1dc!important}
.palette-card.birthday-pink span i:nth-child(3){background:#fff7fb!important}
.palette-card.birthday-gold span i:nth-child(1){background:#d99a1b!important}
.palette-card.birthday-gold span i:nth-child(2){background:#ffd66b!important}
.palette-card.birthday-gold span i:nth-child(3){background:#fff8df!important}
.palette-card.birthday-lilac span i:nth-child(1){background:#8d52ff!important}
.palette-card.birthday-lilac span i:nth-child(2){background:#d7c2ff!important}
.palette-card.birthday-lilac span i:nth-child(3){background:#fff8ff!important}

/* Novo layout do Cartão de Aniversário */
.phone-aniversario .birthday-modern-screen,
.published-aniversario .birthday-modern-screen,
.checkout-wrapper .phone-aniversario .birthday-modern-screen{
  position:relative!important;
  height:100%!important;
  min-height:100%!important;
  overflow:hidden!important;
  color:#fff!important;
  padding:0!important;
  text-align:center!important;
  background:
    radial-gradient(circle at 15% 4%,rgba(255,255,255,.20),transparent 32%),
    linear-gradient(180deg,#d01619 0%,#b90f14 55%,#99070b 100%)!important;
}

.phone-aniversario.theme-birthday-pink .birthday-modern-screen,
.published-aniversario.theme-birthday-pink .birthday-modern-screen{
  background:
    radial-gradient(circle at 15% 4%,rgba(255,255,255,.26),transparent 32%),
    linear-gradient(180deg,#ff4fa0 0%,#ec347e 54%,#bd1355 100%)!important;
}

.phone-aniversario.theme-birthday-gold .birthday-modern-screen,
.published-aniversario.theme-birthday-gold .birthday-modern-screen{
  background:
    radial-gradient(circle at 15% 4%,rgba(255,255,255,.28),transparent 32%),
    linear-gradient(180deg,#d89a1c 0%,#bb7410 55%,#884907 100%)!important;
}

.phone-aniversario.theme-birthday-lilac .birthday-modern-screen,
.published-aniversario.theme-birthday-lilac .birthday-modern-screen{
  background:
    radial-gradient(circle at 15% 4%,rgba(255,255,255,.24),transparent 32%),
    linear-gradient(180deg,#8d52ff 0%,#7440df 55%,#4c219e 100%)!important;
}

.birthday-scroll-content{
  position:absolute!important;
  inset:0!important;
  overflow-y:auto!important;
  overflow-x:hidden!important;
  padding:18px 14px 118px!important;
  -webkit-overflow-scrolling:touch!important;
  overscroll-behavior:contain!important;
  scroll-behavior:auto!important;
  scrollbar-width:thin!important;
  scrollbar-color:rgba(255,255,255,.55) rgba(0,0,0,.08)!important;
}

.birthday-scroll-content::-webkit-scrollbar{width:6px!important;height:0!important}
.birthday-scroll-content::-webkit-scrollbar-thumb{background:rgba(255,255,255,.55)!important;border-radius:999px!important}

.birthday-top-ribbon{
  display:inline-flex!important;
  align-items:center!important;
  justify-content:center!important;
  gap:6px!important;
  min-height:30px!important;
  padding:0 14px!important;
  margin:0 auto 12px!important;
  border-radius:999px!important;
  background:rgba(255,255,255,.14)!important;
  border:1px solid rgba(255,255,255,.16)!important;
  color:#fff!important;
  font-size:.82rem!important;
  font-weight:1000!important;
}

.phone-aniversario .birthday-photo,
.published-aniversario .birthday-photo,
.checkout-wrapper .phone-aniversario .birthday-photo{
  height:250px!important;
  border-radius:20px!important;
  margin:0 auto 12px!important;
  background-size:contain!important;
  background-position:center center!important;
  background-repeat:no-repeat!important;
  background-color:rgba(0,0,0,.16)!important;
  box-shadow:0 18px 36px rgba(65,0,0,.22)!important;
}

.published-aniversario .birthday-photo{height:292px!important}

.phone-aniversario .birthday-screen h2,
.phone-aniversario .birthday-screen h1,
.published-aniversario .birthday-screen h1{
  font-family:'Great Vibes','Brush Script MT','Segoe Script',cursive!important;
  color:#fff!important;
  font-size:3.45rem!important;
  line-height:.95!important;
  font-weight:400!important;
  margin:8px 0 12px!important;
  text-shadow:0 10px 24px rgba(0,0,0,.12)!important;
}

.published-aniversario .birthday-screen h1{font-size:4rem!important}

.phone-aniversario .birthday-message,
.published-aniversario .birthday-message{
  max-width:290px!important;
  margin:0 auto!important;
  font-family:Inter,ui-sans-serif,system-ui,sans-serif!important;
  font-style:normal!important;
  font-size:1.03rem!important;
  line-height:1.42!important;
  font-weight:900!important;
  color:#fff!important;
  text-align:center!important;
  overflow-wrap:anywhere!important;
}

.published-aniversario .birthday-message{max-width:330px!important;font-size:1.12rem!important}

.phone-aniversario .birthday-date,
.published-aniversario .birthday-date{
  display:inline-block!important;
  margin:14px auto 0!important;
  color:rgba(255,255,255,.82)!important;
  font-weight:900!important;
}

/* Player preto estilo Spotify no rodapé do Cartão e Poster */
.birthday-screen > .phone-fixed-player,
.movie-cinematic-screen > .phone-fixed-player,
.movie-poster-screen > .phone-fixed-player,
.published-birthday .birthday-screen > .phone-fixed-player,
.published-movie > .phone-fixed-player{
  position:absolute!important;
  left:0!important;
  right:0!important;
  bottom:0!important;
  width:100%!important;
  max-width:100%!important;
  min-width:0!important;
  margin:0!important;
  border-radius:0!important;
  background:#050505!important;
  border-top:1px solid rgba(255,255,255,.10)!important;
  min-height:82px!important;
  padding:12px 14px calc(12px + env(safe-area-inset-bottom,0px))!important;
  display:grid!important;
  grid-template-columns:46px minmax(0,1fr) 44px!important;
  align-items:center!important;
  gap:11px!important;
  z-index:120!important;
  box-shadow:0 -16px 34px rgba(0,0,0,.16)!important;
  overflow:hidden!important;
}

.birthday-screen > .phone-fixed-player .music-player-thumb,
.movie-cinematic-screen > .phone-fixed-player .music-player-thumb,
.movie-poster-screen > .phone-fixed-player .music-player-thumb{
  width:46px!important;
  height:46px!important;
  min-width:46px!important;
  max-width:46px!important;
  border-radius:3px!important;
  background-size:contain!important;
  background-position:center!important;
  background-repeat:no-repeat!important;
  background-color:#262626!important;
}

.birthday-screen > .phone-fixed-player .player-track-text,
.movie-cinematic-screen > .phone-fixed-player .player-track-text,
.movie-poster-screen > .phone-fixed-player .player-track-text{
  min-width:0!important;
  max-width:100%!important;
  overflow:hidden!important;
  text-align:left!important;
}

.birthday-screen > .phone-fixed-player .player-track-text strong,
.movie-cinematic-screen > .phone-fixed-player .player-track-text strong,
.movie-poster-screen > .phone-fixed-player .player-track-text strong{
  display:block!important;
  color:#fff!important;
  font-size:.9rem!important;
  line-height:1.05!important;
  font-weight:950!important;
  white-space:nowrap!important;
  overflow:hidden!important;
  text-overflow:ellipsis!important;
  margin:0 0 4px!important;
}

.birthday-screen > .phone-fixed-player .player-track-text small,
.movie-cinematic-screen > .phone-fixed-player .player-track-text small,
.movie-poster-screen > .phone-fixed-player .player-track-text small{
  display:block!important;
  color:rgba(255,255,255,.72)!important;
  font-size:.72rem!important;
  line-height:1.05!important;
  font-weight:800!important;
  white-space:nowrap!important;
  overflow:hidden!important;
  text-overflow:ellipsis!important;
  text-transform:none!important;
  letter-spacing:0!important;
}

/* Ícone sincronizado: tocando = dois palitos; pausado = play */
.player-action .play-icon{display:block!important}
.player-action .pause-icon{display:none!important}
.player-action.is-playing .play-icon,
.player-action.is-loading .play-icon{display:none!important}
.player-action.is-playing .pause-icon,
.player-action.is-loading .pause-icon{display:block!important}
.player-action .pause-icon{
  width:15px!important;
  height:17px!important;
  position:relative!important;
  background:none!important;
}
.player-action .pause-icon::before,
.player-action .pause-icon::after{
  content:""!important;
  position:absolute!important;
  top:0!important;
  width:5px!important;
  height:17px!important;
  background:#fff!important;
  border-radius:2px!important;
}
.player-action .pause-icon::before{left:1px!important}
.player-action .pause-icon::after{right:1px!important}
.player-action.is-loading::after{display:none!important;content:none!important}

/* Poster de Filme: primeira foto é capa; cenas usam as outras 9, sempre sem cortar */
.movie-cinematic-screen .movie-hero,
.movie-poster-screen .movie-hero,
.movie-scene-thumb,
.movie-big-scene{
  background-size:contain!important;
  background-position:center center!important;
  background-repeat:no-repeat!important;
  background-color:#050505!important;
}

/* Evita pulo de rolagem */
.pro-screen,
.birthday-scroll-content,
.event-scroll-content,
.movie-poster-scroll,
.birthday-screen,
.elegant-screen{
  overflow-anchor:none!important;
  scroll-behavior:auto!important;
  overscroll-behavior:contain!important;
}

@media(max-width:640px){
  .birthday-scroll-content{padding:16px 12px 116px!important}
  .phone-aniversario .birthday-photo{height:238px!important}
  .phone-aniversario .birthday-screen h2{font-size:3.18rem!important}
  .birthday-screen > .phone-fixed-player,
  .movie-cinematic-screen > .phone-fixed-player,
  .movie-poster-screen > .phone-fixed-player{
    min-height:80px!important;
    grid-template-columns:44px minmax(0,1fr) 42px!important;
    padding:11px 12px calc(11px + env(safe-area-inset-bottom,0px))!important;
  }
}



/* ===== Cartão de Aniversário - correção final forte ===== */

/* Valor do cartão permanece R$ 13,90; visual das 4 paletas */
body.plan-aniversario .palette-delux{display:none!important;}
body.plan-aniversario .palette-birthday{display:block!important;}
body:not(.plan-aniversario) .palette-birthday{display:none!important;}

body.plan-aniversario .palette-grid{
  grid-template-columns:repeat(2,minmax(220px,1fr))!important;
}

body.plan-aniversario .palette-card{
  min-height:100px!important;
  border-radius:18px!important;
}

body.plan-aniversario .palette-card.birthday-red{background:linear-gradient(135deg,#310509,#d01619)!important}
body.plan-aniversario .palette-card.birthday-pink{background:linear-gradient(135deg,#3a061e,#ff4fa0)!important}
body.plan-aniversario .palette-card.birthday-gold{background:linear-gradient(135deg,#3b2204,#d99a1b)!important}
body.plan-aniversario .palette-card.birthday-lilac{background:linear-gradient(135deg,#24104c,#8d52ff)!important}

.phone-aniversario .birthday-modern-screen,
.published-aniversario .birthday-modern-screen,
.published-birthday .birthday-modern-screen{
  position:relative!important;
  height:100%!important;
  min-height:100%!important;
  overflow:hidden!important;
  padding:0!important;
  color:#fff!important;
  text-align:center!important;
  background:
    radial-gradient(circle at 12% 0%,rgba(255,255,255,.20),transparent 34%),
    radial-gradient(circle at 85% 16%,rgba(255,215,215,.18),transparent 30%),
    linear-gradient(180deg,#d01619 0%,#b90f14 56%,#97070b 100%)!important;
}

.phone-aniversario.theme-birthday-pink .birthday-modern-screen,
.published-aniversario.theme-birthday-pink .birthday-modern-screen{
  background:
    radial-gradient(circle at 12% 0%,rgba(255,255,255,.24),transparent 34%),
    radial-gradient(circle at 85% 16%,rgba(255,220,238,.22),transparent 30%),
    linear-gradient(180deg,#ff4fa0 0%,#e7327f 56%,#b70e52 100%)!important;
}

.phone-aniversario.theme-birthday-gold .birthday-modern-screen,
.published-aniversario.theme-birthday-gold .birthday-modern-screen{
  background:
    radial-gradient(circle at 12% 0%,rgba(255,255,255,.26),transparent 34%),
    radial-gradient(circle at 85% 16%,rgba(255,248,210,.23),transparent 30%),
    linear-gradient(180deg,#d99a1b 0%,#b87510 56%,#864907 100%)!important;
}

.phone-aniversario.theme-birthday-lilac .birthday-modern-screen,
.published-aniversario.theme-birthday-lilac .birthday-modern-screen{
  background:
    radial-gradient(circle at 12% 0%,rgba(255,255,255,.24),transparent 34%),
    radial-gradient(circle at 85% 16%,rgba(229,214,255,.22),transparent 30%),
    linear-gradient(180deg,#8d52ff 0%,#703ddd 56%,#49209d 100%)!important;
}

/* Somente o conteúdo rola; o player fica preso no rodapé */
.birthday-scroll-content{
  position:absolute!important;
  top:0!important;
  left:0!important;
  right:0!important;
  bottom:82px!important;
  height:auto!important;
  min-height:0!important;
  overflow-y:auto!important;
  overflow-x:hidden!important;
  padding:18px 14px 24px!important;
  overscroll-behavior:contain!important;
  -webkit-overflow-scrolling:touch!important;
  scroll-behavior:auto!important;
  overflow-anchor:none!important;
  scrollbar-width:thin!important;
  scrollbar-color:rgba(255,255,255,.60) rgba(0,0,0,.10)!important;
  touch-action:pan-y!important;
}

.birthday-scroll-content::-webkit-scrollbar{
  width:6px!important;
  height:0!important;
}

.birthday-scroll-content::-webkit-scrollbar-thumb{
  background:rgba(255,255,255,.60)!important;
  border-radius:999px!important;
}

.birthday-scroll-content::-webkit-scrollbar-track{
  background:rgba(0,0,0,.10)!important;
}

.birthday-top-ribbon{
  display:inline-flex!important;
  align-items:center!important;
  justify-content:center!important;
  min-height:32px!important;
  padding:0 14px!important;
  margin:0 auto 12px!important;
  border-radius:999px!important;
  background:rgba(255,255,255,.16)!important;
  border:1px solid rgba(255,255,255,.18)!important;
  color:#fff!important;
  font-size:.82rem!important;
  font-weight:1000!important;
}

.phone-aniversario .birthday-photo,
.published-aniversario .birthday-photo,
.published-birthday .birthday-photo{
  width:100%!important;
  height:250px!important;
  margin:0 auto 12px!important;
  border-radius:20px!important;
  background-size:contain!important;
  background-position:center center!important;
  background-repeat:no-repeat!important;
  background-color:rgba(0,0,0,.16)!important;
  box-shadow:0 18px 36px rgba(65,0,0,.22)!important;
}

.published-aniversario .birthday-photo,
.published-birthday .birthday-photo{
  height:292px!important;
}

.phone-aniversario .birthday-screen h2,
.published-aniversario .birthday-screen h1,
.published-birthday .birthday-screen h1{
  font-family:'Great Vibes','Brush Script MT','Segoe Script',cursive!important;
  color:#fff!important;
  font-weight:400!important;
  font-size:3.45rem!important;
  line-height:.95!important;
  margin:8px 0 12px!important;
  text-shadow:0 10px 24px rgba(0,0,0,.16)!important;
}

.phone-aniversario .birthday-message,
.published-aniversario .birthday-message,
.published-birthday .birthday-message{
  max-width:290px!important;
  margin:0 auto!important;
  font-family:Inter,ui-sans-serif,system-ui,sans-serif!important;
  font-size:1.03rem!important;
  line-height:1.42!important;
  font-style:normal!important;
  font-weight:900!important;
  color:#fff!important;
  text-align:center!important;
  overflow-wrap:anywhere!important;
}

/* Player preto tipo Spotify grudado na base do celular */
.birthday-modern-screen > .phone-fixed-player,
.birthday-screen > .phone-fixed-player,
.published-birthday .birthday-screen > .phone-fixed-player,
.published-aniversario .birthday-screen > .phone-fixed-player{
  position:absolute!important;
  left:0!important;
  right:0!important;
  bottom:0!important;
  width:100%!important;
  max-width:100%!important;
  min-width:0!important;
  margin:0!important;
  border-radius:0!important;
  background:#050505!important;
  border-top:1px solid rgba(255,255,255,.12)!important;
  min-height:82px!important;
  height:82px!important;
  padding:12px 14px!important;
  display:grid!important;
  grid-template-columns:46px minmax(0,1fr) 44px!important;
  align-items:center!important;
  gap:11px!important;
  z-index:200!important;
  overflow:hidden!important;
  box-shadow:0 -16px 34px rgba(0,0,0,.18)!important;
}

.birthday-modern-screen > .phone-fixed-player .music-player-thumb,
.birthday-screen > .phone-fixed-player .music-player-thumb{
  width:46px!important;
  height:46px!important;
  min-width:46px!important;
  max-width:46px!important;
  border-radius:3px!important;
  background-size:contain!important;
  background-position:center!important;
  background-repeat:no-repeat!important;
  background-color:#262626!important;
}

.birthday-modern-screen > .phone-fixed-player .player-track-text,
.birthday-screen > .phone-fixed-player .player-track-text{
  min-width:0!important;
  max-width:100%!important;
  overflow:hidden!important;
  text-align:left!important;
}

.birthday-modern-screen > .phone-fixed-player .player-track-text strong,
.birthday-screen > .phone-fixed-player .player-track-text strong{
  display:block!important;
  color:#fff!important;
  font-size:.9rem!important;
  line-height:1.08!important;
  font-weight:950!important;
  white-space:nowrap!important;
  overflow:hidden!important;
  text-overflow:ellipsis!important;
  margin:0 0 4px!important;
}

.birthday-modern-screen > .phone-fixed-player .player-track-text small,
.birthday-screen > .phone-fixed-player .player-track-text small{
  display:block!important;
  color:rgba(255,255,255,.72)!important;
  font-size:.72rem!important;
  line-height:1.05!important;
  font-weight:800!important;
  white-space:nowrap!important;
  overflow:hidden!important;
  text-overflow:ellipsis!important;
  text-transform:none!important;
  letter-spacing:0!important;
}

/* Play/Pause visual final */
.player-action .play-icon{display:block!important}
.player-action .pause-icon{display:none!important}
.player-action.is-playing .play-icon,
.player-action.is-loading .play-icon{display:none!important}
.player-action.is-playing .pause-icon,
.player-action.is-loading .pause-icon{display:block!important}

.player-action .pause-icon{
  width:15px!important;
  height:17px!important;
  position:relative!important;
  background:none!important;
}

.player-action .pause-icon::before,
.player-action .pause-icon::after{
  content:""!important;
  position:absolute!important;
  top:0!important;
  width:5px!important;
  height:17px!important;
  background:#fff!important;
  border-radius:2px!important;
}

.player-action .pause-icon::before{left:1px!important}
.player-action .pause-icon::after{right:1px!important}
.player-action.is-loading::after{display:none!important;content:none!important}

@media(max-width:640px){
  .birthday-scroll-content{
    bottom:80px!important;
    padding:16px 12px 24px!important;
  }

  .phone-aniversario .birthday-photo{
    height:238px!important;
  }

  .phone-aniversario .birthday-screen h2{
    font-size:3.18rem!important;
  }

  .birthday-modern-screen > .phone-fixed-player,
  .birthday-screen > .phone-fixed-player{
    min-height:80px!important;
    height:80px!important;
    grid-template-columns:44px minmax(0,1fr) 42px!important;
    padding:11px 12px!important;
  }
}


/* ===== REVISÃO FINAL MimoQR: estabilidade, fotos, player e fluxos ===== */

/* Não mexer no botão de fechar antigo: este bloco não altera .modal-close/.close-btn. */

/* Fotos sem cortar em todos os modelos */
.event-photo,
.birthday-photo,
.movie-hero,
.movie-scene-thumb,
.movie-big-scene,
.photo-card,
.photo-card.main,
.published-photo,
.published-photo.main,
.gallery-side,
.music-player-thumb{
  background-size:contain!important;
  background-position:center center!important;
  background-repeat:no-repeat!important;
}

.event-photo,
.birthday-photo{
  background-color:rgba(0,0,0,.14)!important;
}

.movie-hero,
.movie-scene-thumb,
.movie-big-scene{
  background-color:#050505!important;
}

.photo-card,
.photo-card.main,
.published-photo,
.published-photo.main,
.gallery-side{
  background-color:#f4eadc!important;
}

/* Conteúdo rolável separado do player */
.event-screen,
.birthday-modern-screen,
.movie-cinematic-screen,
.movie-poster-screen{
  position:relative!important;
  height:100%!important;
  min-height:100%!important;
  overflow:hidden!important;
}

.event-scroll-content,
.birthday-scroll-content,
.movie-poster-scroll,
.elegant-screen{
  overflow-y:auto!important;
  overflow-x:hidden!important;
  -webkit-overflow-scrolling:touch!important;
  overscroll-behavior:contain!important;
  scroll-behavior:auto!important;
  overflow-anchor:none!important;
  touch-action:pan-y!important;
  scrollbar-width:thin!important;
  scrollbar-color:rgba(255,255,255,.58) rgba(0,0,0,.08)!important;
}

.event-scroll-content::-webkit-scrollbar,
.birthday-scroll-content::-webkit-scrollbar,
.movie-poster-scroll::-webkit-scrollbar,
.elegant-screen::-webkit-scrollbar{
  width:6px!important;
  height:0!important;
}

.event-scroll-content::-webkit-scrollbar-thumb,
.birthday-scroll-content::-webkit-scrollbar-thumb,
.movie-poster-scroll::-webkit-scrollbar-thumb,
.elegant-screen::-webkit-scrollbar-thumb{
  background:rgba(255,255,255,.58)!important;
  border-radius:999px!important;
}

.birthday-scroll-content{
  position:absolute!important;
  inset:0 0 82px 0!important;
  height:auto!important;
  min-height:0!important;
  padding:18px 14px 24px!important;
}

.event-scroll-content,
.movie-poster-scroll{
  padding-bottom:118px!important;
}

/* Player preto estilo Spotify no rodapé para Evento, Aniversário e Poster */
.event-screen > .phone-fixed-player,
.birthday-modern-screen > .phone-fixed-player,
.birthday-screen > .phone-fixed-player,
.movie-cinematic-screen > .phone-fixed-player,
.movie-poster-screen > .phone-fixed-player,
.published-event > .phone-fixed-player,
.published-birthday .birthday-screen > .phone-fixed-player,
.published-movie > .phone-fixed-player{
  position:absolute!important;
  left:0!important;
  right:0!important;
  bottom:0!important;
  width:100%!important;
  max-width:100%!important;
  min-width:0!important;
  margin:0!important;
  border-radius:0!important;
  background:#050505!important;
  border-top:1px solid rgba(255,255,255,.12)!important;
  min-height:82px!important;
  height:82px!important;
  padding:12px 14px!important;
  display:grid!important;
  grid-template-columns:46px minmax(0,1fr) 44px!important;
  align-items:center!important;
  gap:11px!important;
  z-index:220!important;
  overflow:hidden!important;
}

.phone-fixed-player .music-player-thumb{
  width:46px!important;
  height:46px!important;
  min-width:46px!important;
  max-width:46px!important;
  border-radius:3px!important;
  background-color:#262626!important;
}

.phone-fixed-player .player-track-text{
  min-width:0!important;
  max-width:100%!important;
  overflow:hidden!important;
  text-align:left!important;
}

.phone-fixed-player .player-track-text strong{
  display:block!important;
  color:#fff!important;
  font-size:.9rem!important;
  line-height:1.08!important;
  font-weight:950!important;
  white-space:nowrap!important;
  overflow:hidden!important;
  text-overflow:ellipsis!important;
  margin:0 0 4px!important;
}

.phone-fixed-player .player-track-text small{
  display:block!important;
  color:rgba(255,255,255,.72)!important;
  font-size:.72rem!important;
  line-height:1.05!important;
  font-weight:800!important;
  white-space:nowrap!important;
  overflow:hidden!important;
  text-overflow:ellipsis!important;
  text-transform:none!important;
  letter-spacing:0!important;
}

/* Botão sincronizado: tocando/carregando = pause; pausado = play */
.player-action .play-icon{display:block!important}
.player-action .pause-icon{display:none!important}
.player-action.is-playing .play-icon,
.player-action.is-loading .play-icon{display:none!important}
.player-action.is-playing .pause-icon,
.player-action.is-loading .pause-icon{display:block!important}
.player-action .pause-icon{
  width:15px!important;
  height:17px!important;
  position:relative!important;
  background:none!important;
}
.player-action .pause-icon::before,
.player-action .pause-icon::after{
  content:""!important;
  position:absolute!important;
  top:0!important;
  width:5px!important;
  height:17px!important;
  background:#fff!important;
  border-radius:2px!important;
}
.player-action .pause-icon::before{left:1px!important}
.player-action .pause-icon::after{right:1px!important}
.player-action.is-loading::after{display:none!important;content:none!important}

/* Evento Especial mais moderno, mantendo vermelho */
.phone-evento .event-screen,
.published-event.event-screen{
  background:
    radial-gradient(circle at 18% 0%, rgba(255,255,255,.12), transparent 34%),
    linear-gradient(180deg,#d01619 0%,#bd0f12 50%,#98070b 100%)!important;
}
.phone-evento .event-count-card,
.published-event .event-count-card{
  border-radius:16px!important;
  background:linear-gradient(180deg,rgba(244,16,23,.96),rgba(205,4,10,.96))!important;
  border:1px solid rgba(255,255,255,.10)!important;
  box-shadow:0 16px 30px rgba(85,0,0,.18)!important;
}

/* Delux: carrossel ativo, foto sem corte e player diferente dentro da página */
.phone-delux .photo-card.main,
.published-delux .published-photo.main,
.elegant-screen .photo-card.main,
.published-elegant .published-photo.main,
.phone-delux .gallery-side,
.published-delux .gallery-side,
.elegant-screen .gallery-side,
.published-elegant .gallery-side{
  background-size:contain!important;
  background-position:center center!important;
  background-repeat:no-repeat!important;
  background-color:#f4eadc!important;
}

.phone-delux .delux-dots button,
.published-delux .delux-dots button,
.elegant-screen .delux-dots button,
.published-elegant .delux-dots button{
  appearance:none!important;
  border:0!important;
  padding:0!important;
  margin:0!important;
  width:6px!important;
  height:6px!important;
  border-radius:999px!important;
  background:#e3cfaf!important;
  cursor:pointer!important;
}

.phone-delux .delux-dots button.active,
.published-delux .delux-dots button.active,
.elegant-screen .delux-dots button.active,
.published-elegant .delux-dots button.active{
  width:24px!important;
  background:#c79c62!important;
}

.phone-delux .delux-music-card,
.published-delux .delux-music-card,
.elegant-screen .delux-music-card,
.published-elegant .delux-music-card{
  position:relative!important;
  left:auto!important;
  right:auto!important;
  bottom:auto!important;
  width:100%!important;
  max-width:100%!important;
  margin:0 auto 26px!important;
  background:#fffaf2!important;
  border:1px solid #ead8bb!important;
  border-radius:5px!important;
  padding:15px 16px!important;
  display:grid!important;
  grid-template-columns:52px minmax(0,1fr) 56px!important;
  gap:14px!important;
  align-items:center!important;
}

.phone-delux .delux-music-card .music-player-thumb,
.published-delux .delux-music-card .music-player-thumb{
  width:46px!important;
  height:46px!important;
  min-width:46px!important;
  border-radius:2px!important;
  background-size:contain!important;
  background-position:center!important;
  background-repeat:no-repeat!important;
  background-color:#eee0c9!important;
}

.phone-delux .delux-music-card .player-action,
.published-delux .delux-music-card .player-action{
  width:46px!important;
  height:46px!important;
  border-radius:50%!important;
  background:#e3c48d!important;
  border:0!important;
  color:#211910!important;
}

/* Cartão de Aniversário: 4 paletas */
body.plan-aniversario .palette-delux{display:none!important}
body.plan-aniversario .palette-birthday{display:block!important}
body:not(.plan-aniversario) .palette-birthday{display:none!important}
body.plan-aniversario .palette-card.birthday-red{background:linear-gradient(135deg,#310509,#d01619)!important}
body.plan-aniversario .palette-card.birthday-pink{background:linear-gradient(135deg,#3a061e,#ff4fa0)!important}
body.plan-aniversario .palette-card.birthday-gold{background:linear-gradient(135deg,#3b2204,#d99a1b)!important}
body.plan-aniversario .palette-card.birthday-lilac{background:linear-gradient(135deg,#24104c,#8d52ff)!important}

.phone-aniversario.theme-birthday-red .birthday-modern-screen,
.published-aniversario.theme-birthday-red .birthday-modern-screen{
  background:radial-gradient(circle at 12% 0%,rgba(255,255,255,.20),transparent 34%),linear-gradient(180deg,#d01619 0%,#b90f14 56%,#97070b 100%)!important;
}
.phone-aniversario.theme-birthday-pink .birthday-modern-screen,
.published-aniversario.theme-birthday-pink .birthday-modern-screen{
  background:radial-gradient(circle at 12% 0%,rgba(255,255,255,.24),transparent 34%),linear-gradient(180deg,#ff4fa0 0%,#e7327f 56%,#b70e52 100%)!important;
}
.phone-aniversario.theme-birthday-gold .birthday-modern-screen,
.published-aniversario.theme-birthday-gold .birthday-modern-screen{
  background:radial-gradient(circle at 12% 0%,rgba(255,255,255,.26),transparent 34%),linear-gradient(180deg,#d99a1b 0%,#b87510 56%,#864907 100%)!important;
}
.phone-aniversario.theme-birthday-lilac .birthday-modern-screen,
.published-aniversario.theme-birthday-lilac .birthday-modern-screen{
  background:radial-gradient(circle at 12% 0%,rgba(255,255,255,.24),transparent 34%),linear-gradient(180deg,#8d52ff 0%,#703ddd 56%,#49209d 100%)!important;
}

.birthday-top-ribbon{
  display:inline-flex!important;
  align-items:center!important;
  justify-content:center!important;
  min-height:32px!important;
  padding:0 14px!important;
  margin:0 auto 12px!important;
  border-radius:999px!important;
  background:rgba(255,255,255,.16)!important;
  border:1px solid rgba(255,255,255,.18)!important;
  color:#fff!important;
  font-size:.82rem!important;
  font-weight:1000!important;
}

.phone-aniversario .birthday-photo,
.published-aniversario .birthday-photo,
.published-birthday .birthday-photo{
  width:100%!important;
  height:250px!important;
  margin:0 auto 12px!important;
  border-radius:20px!important;
  background-size:contain!important;
  background-position:center center!important;
  background-repeat:no-repeat!important;
  background-color:rgba(0,0,0,.16)!important;
  box-shadow:0 18px 36px rgba(65,0,0,.22)!important;
}

.published-aniversario .birthday-photo,
.published-birthday .birthday-photo{height:292px!important}

/* Poster: primeira foto capa, fotos 2-10 nas cenas, sem corte */
.movie-cinematic-screen .movie-hero,
.movie-poster-screen .movie-hero{
  background-size:contain!important;
  background-position:center top!important;
  background-repeat:no-repeat!important;
  background-color:#050505!important;
}
.movie-scenes-row .movie-scene-thumb,
.movie-scenes-show .movie-big-scene{
  background-size:contain!important;
  background-position:center center!important;
  background-repeat:no-repeat!important;
}

@media(max-width:640px){
  .birthday-scroll-content{inset:0 0 80px 0!important;padding:16px 12px 24px!important}
  .event-screen > .phone-fixed-player,
  .birthday-modern-screen > .phone-fixed-player,
  .birthday-screen > .phone-fixed-player,
  .movie-cinematic-screen > .phone-fixed-player,
  .movie-poster-screen > .phone-fixed-player{
    min-height:80px!important;
    height:80px!important;
    grid-template-columns:44px minmax(0,1fr) 42px!important;
    padding:11px 12px!important;
  }
}


/* Evento especial - opt-in de música */
.music-optin{display:flex;flex-direction:column;align-items:flex-start;gap:10px;margin:10px 0 14px}
.music-add-btn{display:inline-flex;align-items:center;gap:10px;border:0;border-radius:12px;background:#ef1117;color:#fff;padding:14px 22px;font-weight:1000;font-size:1rem;cursor:pointer;box-shadow:0 12px 26px rgba(239,17,23,.26)}
.music-add-btn span{display:inline-grid;place-items:center;font-size:1.05rem;line-height:1}
.music-optin small{color:#d5c8c8;font-size:.95rem;line-height:1.5;max-width:560px}
#musicSearchArea.hidden{display:none!important}



/* ===== Correção final: botão play/pause do player preto ===== */
/* O botão do player fixo não pode virar círculo branco. Ele fica preto/transparente com borda branca,
   e sincronizado: tocando/carregando = pause; pausado = play. */
.phone-fixed-player .player-action,
.movie-player.phone-fixed-player .player-action,
.event-player.phone-fixed-player .player-action,
.birthday-player.phone-fixed-player .player-action,
.published-player.phone-fixed-player .player-action,
.event-screen > .phone-fixed-player .player-action,
.birthday-screen > .phone-fixed-player .player-action,
.movie-cinematic-screen > .phone-fixed-player .player-action,
.movie-poster-screen > .phone-fixed-player .player-action{
  width:38px!important;
  height:38px!important;
  min-width:38px!important;
  max-width:38px!important;
  border-radius:999px!important;
  border:2px solid rgba(255,255,255,.96)!important;
  background:transparent!important;
  color:#fff!important;
  display:grid!important;
  place-items:center!important;
  padding:0!important;
  margin:0!important;
  box-shadow:none!important;
  font-size:0!important;
  line-height:0!important;
  position:relative!important;
  cursor:pointer!important;
}

.phone-fixed-player .player-action .play-icon,
.movie-player.phone-fixed-player .player-action .play-icon{
  display:block!important;
  width:0!important;
  height:0!important;
  border-top:8px solid transparent!important;
  border-bottom:8px solid transparent!important;
  border-left:12px solid #fff!important;
  margin-left:3px!important;
  background:transparent!important;
}

.phone-fixed-player .player-action .pause-icon,
.movie-player.phone-fixed-player .player-action .pause-icon{
  display:none!important;
  width:13px!important;
  height:15px!important;
  position:relative!important;
  background:transparent!important;
  margin:0!important;
}

.phone-fixed-player .player-action .pause-icon::before,
.phone-fixed-player .player-action .pause-icon::after,
.movie-player.phone-fixed-player .player-action .pause-icon::before,
.movie-player.phone-fixed-player .player-action .pause-icon::after{
  content:""!important;
  position:absolute!important;
  top:0!important;
  width:4px!important;
  height:15px!important;
  border-radius:2px!important;
  background:#fff!important;
}

.phone-fixed-player .player-action .pause-icon::before,
.movie-player.phone-fixed-player .player-action .pause-icon::before{
  left:1px!important;
}

.phone-fixed-player .player-action .pause-icon::after,
.movie-player.phone-fixed-player .player-action .pause-icon::after{
  right:1px!important;
}

.phone-fixed-player .player-action.is-playing .play-icon,
.phone-fixed-player .player-action.is-loading .play-icon,
.movie-player.phone-fixed-player .player-action.is-playing .play-icon,
.movie-player.phone-fixed-player .player-action.is-loading .play-icon{
  display:none!important;
}

.phone-fixed-player .player-action.is-playing .pause-icon,
.phone-fixed-player .player-action.is-loading .pause-icon,
.movie-player.phone-fixed-player .player-action.is-playing .pause-icon,
.movie-player.phone-fixed-player .player-action.is-loading .pause-icon{
  display:block!important;
}

.phone-fixed-player .player-action.is-loading::after,
.movie-player.phone-fixed-player .player-action.is-loading::after{
  display:none!important;
  content:none!important;
}

/* Delux continua com o botão dourado dentro do card, separado dos players fixos. */
.delux-music-card .player-action{
  background:#e3c48d!important;
  border:0!important;
  color:#211910!important;
}



/* ===== Correção Delux: scrollbar e rolagem do celular ===== */
/* O Delux precisa rolar dentro da tela do celular para ver o restante do conteúdo. */
.phone-delux .pro-screen{
  overflow:hidden!important;
}

.phone-delux .elegant-screen,
.phone-delux .delux-elegant-screen{
  height:100%!important;
  min-height:100%!important;
  max-height:100%!important;
  overflow-y:auto!important;
  overflow-x:hidden!important;
  -webkit-overflow-scrolling:touch!important;
  overscroll-behavior:contain!important;
  scroll-behavior:auto!important;
  overflow-anchor:none!important;
  scrollbar-width:thin!important;
  scrollbar-color:rgba(196,153,93,.72) rgba(0,0,0,.08)!important;
  padding-bottom:34px!important;
}

/* Página final publicada do Delux também mantém rolagem visível. */
.published-delux .published-elegant,
.published-elegant{
  overflow-y:auto!important;
  overflow-x:hidden!important;
  -webkit-overflow-scrolling:touch!important;
  overscroll-behavior:contain!important;
  scrollbar-width:thin!important;
  scrollbar-color:rgba(196,153,93,.72) rgba(0,0,0,.08)!important;
}

.phone-delux .elegant-screen::-webkit-scrollbar,
.phone-delux .delux-elegant-screen::-webkit-scrollbar,
.published-delux .published-elegant::-webkit-scrollbar,
.published-elegant::-webkit-scrollbar{
  width:6px!important;
  height:0!important;
}

.phone-delux .elegant-screen::-webkit-scrollbar-thumb,
.phone-delux .delux-elegant-screen::-webkit-scrollbar-thumb,
.published-delux .published-elegant::-webkit-scrollbar-thumb,
.published-elegant::-webkit-scrollbar-thumb{
  background:rgba(196,153,93,.72)!important;
  border-radius:999px!important;
}

.phone-delux .elegant-screen::-webkit-scrollbar-track,
.phone-delux .delux-elegant-screen::-webkit-scrollbar-track,
.published-delux .published-elegant::-webkit-scrollbar-track,
.published-elegant::-webkit-scrollbar-track{
  background:rgba(0,0,0,.08)!important;
}

/* Evita que algum container interno esconda conteúdo do Delux. */
.phone-delux .elegant-screen > *,
.phone-delux .delux-elegant-screen > *{
  flex-shrink:0!important;
}



/* ===== Cartão de Aniversário: fundo branco + cores de letra ===== */
/* O fundo do Cartão de Aniversário agora fica branco por padrão.
   As 4 opções de paleta mudam apenas letras/detalhes, não o fundo. */

.phone-aniversario.theme-birthday-red,
.published-aniversario.theme-birthday-red,
.published-birthday.theme-birthday-red{
  --birthday-accent:#c51618;
  --birthday-accent-2:#ff4e63;
  --birthday-text:#231416;
  --birthday-muted:#7e4b4f;
  --birthday-soft:#fff1f2;
}

.phone-aniversario.theme-birthday-pink,
.published-aniversario.theme-birthday-pink,
.published-birthday.theme-birthday-pink{
  --birthday-accent:#e83f91;
  --birthday-accent-2:#ff77b7;
  --birthday-text:#27131f;
  --birthday-muted:#874b6d;
  --birthday-soft:#fff1f8;
}

.phone-aniversario.theme-birthday-gold,
.published-aniversario.theme-birthday-gold,
.published-birthday.theme-birthday-gold{
  --birthday-accent:#b97808;
  --birthday-accent-2:#e3ac31;
  --birthday-text:#271b0c;
  --birthday-muted:#80603a;
  --birthday-soft:#fff7e4;
}

.phone-aniversario.theme-birthday-lilac,
.published-aniversario.theme-birthday-lilac,
.published-birthday.theme-birthday-lilac{
  --birthday-accent:#7545dd;
  --birthday-accent-2:#a97cff;
  --birthday-text:#201633;
  --birthday-muted:#65527e;
  --birthday-soft:#f6f0ff;
}

.phone-aniversario .birthday-modern-screen,
.published-aniversario .birthday-modern-screen,
.published-birthday .birthday-modern-screen{
  background:
    radial-gradient(circle at 18% 4%, var(--birthday-soft, #fff1f2) 0 16%, transparent 31%),
    radial-gradient(circle at 86% 18%, rgba(0,0,0,.035) 0 10%, transparent 28%),
    linear-gradient(180deg,#fffdf9 0%,#fff8f0 100%)!important;
  color:var(--birthday-text,#231416)!important;
  position:relative!important;
}

.phone-aniversario .birthday-modern-screen::before,
.published-aniversario .birthday-modern-screen::before,
.published-birthday .birthday-modern-screen::before{
  content:"✦  •  ✧  •  ✦"!important;
  position:absolute!important;
  top:14px!important;
  left:0!important;
  right:0!important;
  text-align:center!important;
  color:var(--birthday-accent,#c51618)!important;
  opacity:.38!important;
  font-size:.9rem!important;
  letter-spacing:.7em!important;
  pointer-events:none!important;
  z-index:1!important;
}

.phone-aniversario .birthday-modern-screen::after,
.published-aniversario .birthday-modern-screen::after,
.published-birthday .birthday-modern-screen::after{
  content:""!important;
  position:absolute!important;
  inset:12px!important;
  border:1px solid rgba(197,22,24,.18)!important;
  border-radius:24px!important;
  pointer-events:none!important;
  z-index:1!important;
}

.birthday-scroll-content{
  z-index:2!important;
  padding-top:40px!important;
}

.phone-aniversario .birthday-top-ribbon,
.published-aniversario .birthday-top-ribbon,
.published-birthday .birthday-top-ribbon{
  background:var(--birthday-soft,#fff1f2)!important;
  color:var(--birthday-accent,#c51618)!important;
  border:1px solid rgba(197,22,24,.18)!important;
  box-shadow:0 12px 28px rgba(0,0,0,.05)!important;
}

.phone-aniversario .birthday-photo,
.published-aniversario .birthday-photo,
.published-birthday .birthday-photo{
  background-color:#fff!important;
  border:1px solid rgba(0,0,0,.06)!important;
  box-shadow:0 18px 34px rgba(0,0,0,.08)!important;
}

.phone-aniversario .birthday-dots i,
.published-aniversario .birthday-dots i,
.published-birthday .birthday-dots i{
  background:rgba(0,0,0,.14)!important;
}

.phone-aniversario .birthday-dots i.active,
.published-aniversario .birthday-dots i.active,
.published-birthday .birthday-dots i.active{
  background:var(--birthday-accent,#c51618)!important;
}

.phone-aniversario .birthday-screen h2,
.phone-aniversario .birthday-screen h1,
.published-aniversario .birthday-screen h1,
.published-birthday .birthday-screen h1{
  color:var(--birthday-accent,#c51618)!important;
  text-shadow:0 10px 24px rgba(0,0,0,.08)!important;
}

.phone-aniversario .birthday-screen h2::after,
.published-aniversario .birthday-screen h1::after,
.published-birthday .birthday-screen h1::after{
  content:""!important;
  display:block!important;
  width:74px!important;
  height:2px!important;
  border-radius:99px!important;
  margin:12px auto 0!important;
  background:linear-gradient(90deg,transparent,var(--birthday-accent,#c51618),transparent)!important;
}

.phone-aniversario .birthday-message,
.published-aniversario .birthday-message,
.published-birthday .birthday-message{
  color:var(--birthday-text,#231416)!important;
  background:rgba(255,255,255,.72)!important;
  border-radius:18px!important;
  padding:14px 12px!important;
  border:1px solid rgba(0,0,0,.045)!important;
  box-shadow:0 14px 32px rgba(0,0,0,.04)!important;
}

.phone-aniversario .birthday-date,
.published-aniversario .birthday-date,
.published-birthday .birthday-date{
  color:var(--birthday-muted,#7e4b4f)!important;
}

/* Paleta do aniversário: deixa claro que muda a letra/detalhes, fundo branco. */
body.plan-aniversario .palette-card.birthday-red,
body.plan-aniversario .palette-card.birthday-pink,
body.plan-aniversario .palette-card.birthday-gold,
body.plan-aniversario .palette-card.birthday-lilac{
  background:#fff!important;
}

body.plan-aniversario .palette-card.birthday-red strong{color:#c51618!important;}
body.plan-aniversario .palette-card.birthday-pink strong{color:#e83f91!important;}
body.plan-aniversario .palette-card.birthday-gold strong{color:#b97808!important;}
body.plan-aniversario .palette-card.birthday-lilac strong{color:#7545dd!important;}

/* Botão pause do Cartão de Aniversário igual ao print: círculo preto com borda branca e dois palitos brancos. */
.phone-aniversario .birthday-player.phone-fixed-player .player-action,
.published-aniversario .birthday-player.phone-fixed-player .player-action,
.published-birthday .birthday-player.phone-fixed-player .player-action,
.phone-aniversario .birthday-screen > .phone-fixed-player .player-action,
.published-birthday .birthday-screen > .phone-fixed-player .player-action{
  width:38px!important;
  height:38px!important;
  min-width:38px!important;
  border-radius:999px!important;
  background:#050505!important;
  border:2px solid #fff!important;
  box-shadow:none!important;
  color:#fff!important;
}

.phone-aniversario .birthday-player.phone-fixed-player .player-action .play-icon,
.published-aniversario .birthday-player.phone-fixed-player .player-action .play-icon,
.published-birthday .birthday-player.phone-fixed-player .player-action .play-icon{
  border-left-color:#fff!important;
}

.phone-aniversario .birthday-player.phone-fixed-player .player-action .pause-icon,
.published-aniversario .birthday-player.phone-fixed-player .player-action .pause-icon,
.published-birthday .birthday-player.phone-fixed-player .player-action .pause-icon{
  width:13px!important;
  height:15px!important;
  background:transparent!important;
}

.phone-aniversario .birthday-player.phone-fixed-player .player-action .pause-icon::before,
.phone-aniversario .birthday-player.phone-fixed-player .player-action .pause-icon::after,
.published-aniversario .birthday-player.phone-fixed-player .player-action .pause-icon::before,
.published-aniversario .birthday-player.phone-fixed-player .player-action .pause-icon::after,
.published-birthday .birthday-player.phone-fixed-player .player-action .pause-icon::before,
.published-birthday .birthday-player.phone-fixed-player .player-action .pause-icon::after{
  background:#fff!important;
  width:4px!important;
  height:15px!important;
  border-radius:2px!important;
}



/* ===== FINAL: Cartão de Aniversário mais moderno + botão do player corrigido ===== */
/* Fundo branco por padrão; paletas mudam apenas letras e detalhes. */
.phone-aniversario.theme-birthday-red,
.published-aniversario.theme-birthday-red,
.published-birthday.theme-birthday-red{--birthday-accent:#c51618;--birthday-accent-2:#ff5a6b;--birthday-text:#241416;--birthday-muted:#7e4b4f;--birthday-soft:#fff1f2;}
.phone-aniversario.theme-birthday-pink,
.published-aniversario.theme-birthday-pink,
.published-birthday.theme-birthday-pink{--birthday-accent:#e83f91;--birthday-accent-2:#ff7dbb;--birthday-text:#27131f;--birthday-muted:#874b6d;--birthday-soft:#fff1f8;}
.phone-aniversario.theme-birthday-gold,
.published-aniversario.theme-birthday-gold,
.published-birthday.theme-birthday-gold{--birthday-accent:#b97808;--birthday-accent-2:#e4ad31;--birthday-text:#271b0c;--birthday-muted:#80603a;--birthday-soft:#fff7e4;}
.phone-aniversario.theme-birthday-lilac,
.published-aniversario.theme-birthday-lilac,
.published-birthday.theme-birthday-lilac{--birthday-accent:#7545dd;--birthday-accent-2:#aa7dff;--birthday-text:#201633;--birthday-muted:#65527e;--birthday-soft:#f6f0ff;}

.phone-aniversario .birthday-premium-screen,
.published-aniversario .birthday-premium-screen,
.published-birthday .birthday-premium-screen{
  background:
    radial-gradient(circle at 12% 0%,var(--birthday-soft,#fff1f2) 0 15%,transparent 34%),
    radial-gradient(circle at 90% 18%,rgba(0,0,0,.035) 0 10%,transparent 28%),
    linear-gradient(180deg,#fffdf9 0%,#fff8f0 100%)!important;
  color:var(--birthday-text,#241416)!important;
  position:relative!important;
  overflow:hidden!important;
}

.birthday-premium-screen::before{
  content:""!important;
  position:absolute!important;
  inset:12px!important;
  border:1px solid rgba(0,0,0,.055)!important;
  border-radius:25px!important;
  pointer-events:none!important;
  z-index:1!important;
}

.birthday-premium-screen::after{
  content:""!important;
  position:absolute!important;
  left:32px!important;
  right:32px!important;
  top:34px!important;
  height:1px!important;
  background:linear-gradient(90deg,transparent,var(--birthday-accent,#c51618),transparent)!important;
  opacity:.35!important;
  pointer-events:none!important;
  z-index:1!important;
}

.birthday-premium-screen .birthday-scroll-content{
  z-index:2!important;
  padding-top:44px!important;
}

.birthday-decor{
  position:absolute!important;
  top:18px!important;
  left:0!important;
  right:0!important;
  height:26px!important;
  display:flex!important;
  align-items:center!important;
  justify-content:center!important;
  gap:28px!important;
  pointer-events:none!important;
  z-index:2!important;
}

.birthday-decor span{
  width:7px!important;
  height:7px!important;
  border-radius:2px!important;
  background:var(--birthday-accent,#c51618)!important;
  opacity:.45!important;
  transform:rotate(45deg)!important;
}

.birthday-decor span:nth-child(2){
  width:11px!important;
  height:11px!important;
  background:var(--birthday-accent-2,#ff5a6b)!important;
  opacity:.55!important;
}

.phone-aniversario .birthday-top-ribbon,
.published-aniversario .birthday-top-ribbon,
.published-birthday .birthday-top-ribbon{
  background:rgba(255,255,255,.88)!important;
  color:var(--birthday-accent,#c51618)!important;
  border:1px solid rgba(0,0,0,.055)!important;
  box-shadow:0 12px 24px rgba(0,0,0,.055)!important;
  backdrop-filter:blur(10px)!important;
}

.birthday-photo-frame{
  position:relative!important;
  margin:0 auto 14px!important;
  padding:8px!important;
  border-radius:24px!important;
  background:linear-gradient(135deg,rgba(255,255,255,.94),var(--birthday-soft,#fff1f2))!important;
  border:1px solid rgba(0,0,0,.05)!important;
  box-shadow:0 20px 42px rgba(0,0,0,.075)!important;
}

.birthday-photo-frame::before,
.birthday-photo-frame::after{
  content:""!important;
  position:absolute!important;
  width:30px!important;
  height:30px!important;
  border-radius:50%!important;
  background:var(--birthday-accent,#c51618)!important;
  opacity:.12!important;
  pointer-events:none!important;
}

.birthday-photo-frame::before{left:-8px!important;top:18px!important}
.birthday-photo-frame::after{right:-8px!important;bottom:22px!important}

.phone-aniversario .birthday-photo,
.published-aniversario .birthday-photo,
.published-birthday .birthday-photo{
  height:242px!important;
  margin:0!important;
  border-radius:18px!important;
  background-size:contain!important;
  background-position:center center!important;
  background-repeat:no-repeat!important;
  background-color:#fff!important;
  border:1px solid rgba(0,0,0,.04)!important;
  box-shadow:none!important;
}

.published-aniversario .birthday-photo,
.published-birthday .birthday-photo{height:292px!important}

.phone-aniversario .birthday-dots,
.published-aniversario .birthday-dots,
.published-birthday .birthday-dots{margin:2px 0 12px!important}

.phone-aniversario .birthday-dots i,
.published-aniversario .birthday-dots i,
.published-birthday .birthday-dots i{background:rgba(0,0,0,.14)!important}

.phone-aniversario .birthday-dots i.active,
.published-aniversario .birthday-dots i.active,
.published-birthday .birthday-dots i.active{background:var(--birthday-accent,#c51618)!important}

.birthday-greeting small{
  display:block!important;
  margin:0 auto 7px!important;
  color:var(--birthday-muted,#7e4b4f)!important;
  font-family:Georgia,serif!important;
  font-style:italic!important;
  letter-spacing:.08em!important;
  font-size:.82rem!important;
}

.phone-aniversario .birthday-greeting h2,
.published-aniversario .birthday-greeting h1,
.published-birthday .birthday-greeting h1{
  font-family:'Great Vibes','Brush Script MT','Segoe Script',cursive!important;
  color:var(--birthday-accent,#c51618)!important;
  font-weight:400!important;
  font-size:3.55rem!important;
  line-height:.92!important;
  margin:0!important;
  text-shadow:0 10px 24px rgba(0,0,0,.08)!important;
}

.published-aniversario .birthday-greeting h1,
.published-birthday .birthday-greeting h1{font-size:4rem!important}

.birthday-title-line{
  display:flex!important;
  align-items:center!important;
  justify-content:center!important;
  gap:10px!important;
  margin:12px 0 16px!important;
  color:var(--birthday-accent,#c51618)!important;
}

.birthday-title-line i{
  display:block!important;
  width:58px!important;
  height:1px!important;
  background:linear-gradient(90deg,transparent,var(--birthday-accent,#c51618))!important;
}

.birthday-title-line i:last-child{
  background:linear-gradient(90deg,var(--birthday-accent,#c51618),transparent)!important;
}

.birthday-title-line b{
  font-size:.85rem!important;
  color:var(--birthday-accent,#c51618)!important;
}

.birthday-wish-card{
  position:relative!important;
  max-width:300px!important;
  margin:0 auto 12px!important;
  padding:18px 14px!important;
  border-radius:22px!important;
  background:rgba(255,255,255,.82)!important;
  border:1px solid rgba(0,0,0,.055)!important;
  box-shadow:0 18px 38px rgba(0,0,0,.055)!important;
}

.birthday-quote{
  position:absolute!important;
  color:var(--birthday-accent,#c51618)!important;
  opacity:.22!important;
  font-family:Georgia,serif!important;
  font-size:2.4rem!important;
  line-height:1!important;
}

.birthday-quote.left{left:10px!important;top:6px!important}
.birthday-quote.right{right:10px!important;bottom:-4px!important}

.phone-aniversario .birthday-message,
.published-aniversario .birthday-message,
.published-birthday .birthday-message{
  color:var(--birthday-text,#241416)!important;
  background:transparent!important;
  border:0!important;
  box-shadow:none!important;
  padding:0!important;
  font-weight:850!important;
}

.phone-aniversario .birthday-date,
.published-aniversario .birthday-date,
.published-birthday .birthday-date{
  color:var(--birthday-muted,#7e4b4f)!important;
  background:var(--birthday-soft,#fff1f2)!important;
  border-radius:999px!important;
  padding:7px 12px!important;
}

/* Cartões de seleção da paleta do aniversário: fundo branco, muda só cor de letra/detalhe. */
body.plan-aniversario .palette-card.birthday-red,
body.plan-aniversario .palette-card.birthday-pink,
body.plan-aniversario .palette-card.birthday-gold,
body.plan-aniversario .palette-card.birthday-lilac{background:#fff!important}
body.plan-aniversario .palette-card.birthday-red strong{color:#c51618!important}
body.plan-aniversario .palette-card.birthday-pink strong{color:#e83f91!important}
body.plan-aniversario .palette-card.birthday-gold strong{color:#b97808!important}
body.plan-aniversario .palette-card.birthday-lilac strong{color:#7545dd!important}

/* Botão do player fixo: nunca branco sólido. Igual ao print: círculo preto/transparente com borda branca. */
.phone-fixed-player .player-action,
.movie-player.phone-fixed-player .player-action,
.event-player.phone-fixed-player .player-action,
.birthday-player.phone-fixed-player .player-action,
.published-player.phone-fixed-player .player-action,
.event-screen > .phone-fixed-player .player-action,
.birthday-screen > .phone-fixed-player .player-action,
.movie-cinematic-screen > .phone-fixed-player .player-action,
.movie-poster-screen > .phone-fixed-player .player-action{
  width:38px!important;
  height:38px!important;
  min-width:38px!important;
  max-width:38px!important;
  border-radius:999px!important;
  border:2px solid rgba(255,255,255,.96)!important;
  background:transparent!important;
  color:#fff!important;
  display:grid!important;
  place-items:center!important;
  padding:0!important;
  margin:0!important;
  box-shadow:none!important;
  font-size:0!important;
  line-height:0!important;
  position:relative!important;
  cursor:pointer!important;
}

.phone-fixed-player .player-action .play-icon,
.movie-player.phone-fixed-player .player-action .play-icon{
  display:block!important;
  width:0!important;
  height:0!important;
  border-top:8px solid transparent!important;
  border-bottom:8px solid transparent!important;
  border-left:12px solid #fff!important;
  margin-left:3px!important;
  background:transparent!important;
}

.phone-fixed-player .player-action .pause-icon,
.movie-player.phone-fixed-player .player-action .pause-icon{
  display:none!important;
  width:13px!important;
  height:15px!important;
  position:relative!important;
  background:transparent!important;
  margin:0!important;
}

.phone-fixed-player .player-action .pause-icon::before,
.phone-fixed-player .player-action .pause-icon::after,
.movie-player.phone-fixed-player .player-action .pause-icon::before,
.movie-player.phone-fixed-player .player-action .pause-icon::after{
  content:""!important;
  position:absolute!important;
  top:0!important;
  width:4px!important;
  height:15px!important;
  border-radius:2px!important;
  background:#fff!important;
}

.phone-fixed-player .player-action .pause-icon::before,
.movie-player.phone-fixed-player .player-action .pause-icon::before{left:1px!important}
.phone-fixed-player .player-action .pause-icon::after,
.movie-player.phone-fixed-player .player-action .pause-icon::after{right:1px!important}

.phone-fixed-player .player-action.is-playing .play-icon,
.phone-fixed-player .player-action.is-loading .play-icon,
.movie-player.phone-fixed-player .player-action.is-playing .play-icon,
.movie-player.phone-fixed-player .player-action.is-loading .play-icon{display:none!important}

.phone-fixed-player .player-action.is-playing .pause-icon,
.phone-fixed-player .player-action.is-loading .pause-icon,
.movie-player.phone-fixed-player .player-action.is-playing .pause-icon,
.movie-player.phone-fixed-player .player-action.is-loading .pause-icon{display:block!important}

/* Delux mantém botão dourado dentro do card de música. */
.phone-delux .delux-music-card .player-action,
.published-delux .delux-music-card .player-action,
.elegant-screen .delux-music-card .player-action,
.published-elegant .delux-music-card .player-action{
  width:46px!important;
  height:46px!important;
  min-width:46px!important;
  max-width:46px!important;
  border-radius:999px!important;
  background:#e3c48d!important;
  border:0!important;
  color:#211910!important;
  box-shadow:none!important;
}
.phone-delux .delux-music-card .player-action .play-icon,
.published-delux .delux-music-card .player-action .play-icon{
  border-left-color:#211910!important;
}
.phone-delux .delux-music-card .player-action .pause-icon::before,
.phone-delux .delux-music-card .player-action .pause-icon::after,
.published-delux .delux-music-card .player-action .pause-icon::before,
.published-delux .delux-music-card .player-action .pause-icon::after{
  background:#211910!important;
}

@media(max-width:640px){
  .phone-aniversario .birthday-greeting h2{font-size:3.18rem!important}
  .birthday-wish-card{max-width:282px!important;padding:16px 12px!important}
  .phone-aniversario .birthday-photo{height:232px!important}
}


/* FINAL PATCH: banner da música + alinhamento do botão */
.music-player-thumb{
  background-color:#d8cbb2!important;
  background-position:center center!important;
  background-repeat:no-repeat!important;
  background-size:cover!important;
}
.phone-fixed-player .music-player-thumb,
.movie-player .music-player-thumb,
.phone-delux .delux-music-card .music-player-thumb,
.published-delux .delux-music-card .music-player-thumb,
.elegant-screen .delux-music-card .music-player-thumb,
.published-elegant .delux-music-card .music-player-thumb{
  background-position:center center!important;
  background-repeat:no-repeat!important;
  background-size:cover!important;
}
.phone-delux .delux-music-card .music-card-media,
.published-delux .delux-music-card .music-card-media,
.elegant-screen .delux-music-card .music-card-media,
.published-elegant .delux-music-card .music-card-media{
  display:flex!important;
  align-items:center!important;
  justify-content:center!important;
}
.phone-delux .delux-music-card .player-action,
.published-delux .delux-music-card .player-action,
.elegant-screen .delux-music-card .player-action,
.published-elegant .delux-music-card .player-action,
.birthday-modern-screen > .phone-fixed-player .player-action,
.birthday-screen > .phone-fixed-player .player-action,
.phone-fixed-player .player-action,
.movie-player .player-action{
  display:grid!important;
  place-items:center!important;
  align-self:center!important;
  justify-self:center!important;
  padding:0!important;
  line-height:1!important;
  overflow:hidden!important;
}
.phone-delux .delux-music-card .player-action .play-icon,
.published-delux .delux-music-card .player-action .play-icon,
.elegant-screen .delux-music-card .player-action .play-icon,
.published-elegant .delux-music-card .player-action .play-icon{
  display:block!important;
  width:0!important;
  height:0!important;
  border-top:8px solid transparent!important;
  border-bottom:8px solid transparent!important;
  border-left:12px solid #211910!important;
  margin-left:3px!important;
}
.phone-delux .delux-music-card .player-action .pause-icon,
.published-delux .delux-music-card .player-action .pause-icon,
.elegant-screen .delux-music-card .player-action .pause-icon,
.published-elegant .delux-music-card .player-action .pause-icon{
  width:14px!important;
  height:16px!important;
  position:relative!important;
  display:none!important;
  background:none!important;
}
.phone-delux .delux-music-card .player-action .pause-icon::before,
.phone-delux .delux-music-card .player-action .pause-icon::after,
.published-delux .delux-music-card .player-action .pause-icon::before,
.published-delux .delux-music-card .player-action .pause-icon::after,
.elegant-screen .delux-music-card .player-action .pause-icon::before,
.elegant-screen .delux-music-card .player-action .pause-icon::after,
.published-elegant .delux-music-card .player-action .pause-icon::before,
.published-elegant .delux-music-card .player-action .pause-icon::after{
  content:""!important;
  position:absolute!important;
  top:0!important;
  width:4px!important;
  height:16px!important;
  border-radius:2px!important;
  background:#211910!important;
}
.phone-delux .delux-music-card .player-action .pause-icon::before,
.published-delux .delux-music-card .player-action .pause-icon::before,
.elegant-screen .delux-music-card .player-action .pause-icon::before,
.published-elegant .delux-music-card .player-action .pause-icon::before{left:1px!important;}
.phone-delux .delux-music-card .player-action .pause-icon::after,
.published-delux .delux-music-card .player-action .pause-icon::after,
.elegant-screen .delux-music-card .player-action .pause-icon::after,
.published-elegant .delux-music-card .player-action .pause-icon::after{right:1px!important;}
.phone-delux .delux-music-card .player-action.is-playing .play-icon,
.phone-delux .delux-music-card .player-action.is-loading .play-icon,
.published-delux .delux-music-card .player-action.is-playing .play-icon,
.published-delux .delux-music-card .player-action.is-loading .play-icon,
.elegant-screen .delux-music-card .player-action.is-playing .play-icon,
.elegant-screen .delux-music-card .player-action.is-loading .play-icon,
.published-elegant .delux-music-card .player-action.is-playing .play-icon,
.published-elegant .delux-music-card .player-action.is-loading .play-icon{display:none!important;}
.phone-delux .delux-music-card .player-action.is-playing .pause-icon,
.phone-delux .delux-music-card .player-action.is-loading .pause-icon,
.published-delux .delux-music-card .player-action.is-playing .pause-icon,
.published-delux .delux-music-card .player-action.is-loading .pause-icon,
.elegant-screen .delux-music-card .player-action.is-playing .pause-icon,
.elegant-screen .delux-music-card .player-action.is-loading .pause-icon,
.published-elegant .delux-music-card .player-action.is-playing .pause-icon,
.published-elegant .delux-music-card .player-action.is-loading .pause-icon{display:block!important;}


/* PATCH: mais 2 cores no Cartão de Aniversário + contraste melhor */
body.plan-aniversario .palette-grid{grid-template-columns:repeat(2,minmax(220px,1fr))!important;}
@media (max-width:560px){body.plan-aniversario .palette-grid{grid-template-columns:1fr!important;}}

.palette-card.birthday-green span i:nth-child(1){background:#1f9a67!important}
.palette-card.birthday-green span i:nth-child(2){background:#8fe0b7!important}
.palette-card.birthday-green span i:nth-child(3){background:#edfdf4!important}
.palette-card.birthday-blue span i:nth-child(1){background:#2f7cf6!important}
.palette-card.birthday-blue span i:nth-child(2){background:#9bcbff!important}
.palette-card.birthday-blue span i:nth-child(3){background:#eef7ff!important}

body.plan-aniversario .palette-card.birthday-green,
body.plan-aniversario .palette-card.birthday-blue{background:#fff!important}
body.plan-aniversario .palette-card.birthday-green strong{color:#157b53!important}
body.plan-aniversario .palette-card.birthday-blue strong{color:#2264d8!important}

.phone-aniversario.theme-birthday-green,
.published-aniversario.theme-birthday-green,
.published-birthday.theme-birthday-green{--birthday-accent:#157b53;--birthday-accent-2:#2fc98b;--birthday-text:#173328;--birthday-muted:#4b7564;--birthday-soft:#eefcf5;}
.phone-aniversario.theme-birthday-blue,
.published-aniversario.theme-birthday-blue,
.published-birthday.theme-birthday-blue{--birthday-accent:#2264d8;--birthday-accent-2:#5ca0ff;--birthday-text:#14253f;--birthday-muted:#526b90;--birthday-soft:#eef6ff;}

/* melhora contraste dos detalhes em qualquer cor */
.phone-aniversario .birthday-greeting small,
.published-aniversario .birthday-greeting small,
.published-birthday .birthday-greeting small{
  color:color-mix(in srgb, var(--birthday-muted,#7e4b4f) 72%, #000 28%)!important;
  opacity:.96!important;
  text-shadow:0 1px 0 rgba(255,255,255,.25)!important;
}
.phone-aniversario .birthday-top-ribbon,
.published-aniversario .birthday-top-ribbon,
.published-birthday .birthday-top-ribbon{
  color:color-mix(in srgb, var(--birthday-accent,#c51618) 82%, #000 18%)!important;
}
.phone-aniversario .birthday-greeting h2,
.published-aniversario .birthday-greeting h1,
.published-birthday .birthday-greeting h1{
  text-shadow:0 12px 24px rgba(0,0,0,.06), 0 1px 0 rgba(255,255,255,.4)!important;
}
.phone-aniversario .birthday-title-line,
.phone-aniversario .birthday-title-line b,
.published-aniversario .birthday-title-line,
.published-aniversario .birthday-title-line b,
.published-birthday .birthday-title-line,
.published-birthday .birthday-title-line b{opacity:.95!important}
.phone-aniversario .birthday-date,
.published-aniversario .birthday-date,
.published-birthday .birthday-date{
  color:color-mix(in srgb, var(--birthday-muted,#7e4b4f) 75%, #000 25%)!important;
  border:1px solid color-mix(in srgb, var(--birthday-accent,#c51618) 10%, #000 6%)!important;
}



/* ===== FINAL Poster de Filme: visual cinematográfico premium ===== */
.phone-filme .movie-cinematic-screen,
.published-movie.movie-cinematic-screen{
  background:#050505!important;
  color:#fff!important;
  position:relative!important;
  overflow:hidden!important;
  padding:0!important;
  text-align:left!important;
}

.movie-cinematic-screen .movie-poster-scroll,
.movie-poster-screen .movie-poster-scroll,
.published-movie .movie-poster-scroll{
  position:absolute!important;
  inset:0!important;
  overflow-y:auto!important;
  overflow-x:hidden!important;
  padding:0 28px 112px!important;
  -webkit-overflow-scrolling:touch!important;
  overscroll-behavior:contain!important;
  scroll-behavior:auto!important;
  scrollbar-width:thin!important;
  scrollbar-color:rgba(255,255,255,.58) rgba(255,255,255,.08)!important;
}

.movie-cinematic-screen .movie-poster-scroll::-webkit-scrollbar,
.movie-poster-screen .movie-poster-scroll::-webkit-scrollbar{
  width:6px!important;
  height:0!important;
}

.movie-cinematic-screen .movie-poster-scroll::-webkit-scrollbar-thumb,
.movie-poster-screen .movie-poster-scroll::-webkit-scrollbar-thumb{
  background:rgba(255,255,255,.58)!important;
  border-radius:999px!important;
}

.movie-cinematic-screen .movie-hero,
.movie-poster-screen .movie-hero{
  height:315px!important;
  margin:0 -28px -128px!important;
  border-radius:0!important;
  background-size:cover!important;
  background-position:center center!important;
  background-repeat:no-repeat!important;
  background-color:#050505!important;
  position:relative!important;
  filter:saturate(1.04) contrast(1.06)!important;
}

.movie-cinematic-screen .movie-hero::after,
.movie-poster-screen .movie-hero::after{
  content:""!important;
  position:absolute!important;
  inset:0!important;
  background:
    linear-gradient(180deg,rgba(0,0,0,.02) 0%,rgba(0,0,0,.16) 38%,#050505 88%,#050505 100%),
    linear-gradient(90deg,rgba(0,0,0,.62) 0%,rgba(0,0,0,.10) 52%,rgba(0,0,0,.58) 100%)!important;
  pointer-events:none!important;
}

.movie-cinematic-screen h2,
.movie-cinematic-screen h1{
  position:relative!important;
  z-index:3!important;
  margin:0 0 18px!important;
  max-width:285px!important;
  color:#fff!important;
  font-family:Impact,Haettenschweiler,'Arial Black','Arial Narrow Bold',sans-serif!important;
  font-size:clamp(3.35rem,15vw,4.55rem)!important;
  line-height:.9!important;
  letter-spacing:-.052em!important;
  text-transform:none!important;
  text-shadow:
    2px 0 0 rgba(32,127,220,.95),
    5px 4px 0 rgba(224,36,23,.85),
    0 12px 24px rgba(0,0,0,.72)!important;
  overflow-wrap:break-word!important;
  padding-top:188px!important;
}

.movie-cinematic-screen em{
  position:relative!important;
  z-index:3!important;
  display:block!important;
  max-width:295px!important;
  margin:0 0 26px!important;
  color:#ef1117!important;
  font-family:Inter,ui-sans-serif,system-ui,sans-serif!important;
  font-style:italic!important;
  font-size:1rem!important;
  line-height:1.35!important;
  font-weight:850!important;
}

.movie-cinematic-screen p{
  position:relative!important;
  z-index:3!important;
  max-width:302px!important;
  margin:0 0 26px!important;
  color:#f8fbff!important;
  font-family:Inter,ui-sans-serif,system-ui,sans-serif!important;
  font-size:1.03rem!important;
  line-height:1.44!important;
  font-weight:900!important;
  text-align:left!important;
  text-shadow:0 2px 10px rgba(0,0,0,.24)!important;
}

.movie-watch-btn{
  position:relative!important;
  z-index:3!important;
  display:inline-flex!important;
  align-items:center!important;
  justify-content:center!important;
  gap:12px!important;
  min-width:132px!important;
  min-height:48px!important;
  margin:0 0 24px!important;
  padding:0 22px!important;
  border:0!important;
  border-radius:7px!important;
  background:#fff!important;
  color:#000!important;
  font-size:1rem!important;
  font-weight:1000!important;
  box-shadow:0 14px 26px rgba(0,0,0,.26)!important;
}

.movie-watch-btn span{
  width:0!important;
  height:0!important;
  border-top:12px solid transparent!important;
  border-bottom:12px solid transparent!important;
  border-left:18px solid #000!important;
  display:block!important;
}

.movie-date-pill{
  position:relative!important;
  z-index:3!important;
  display:flex!important;
  width:fit-content!important;
  align-items:center!important;
  gap:10px!important;
  max-width:100%!important;
  margin:0 0 28px!important;
  padding:14px 18px!important;
  border-radius:8px!important;
  border:1px solid rgba(239,17,23,.58)!important;
  background:rgba(239,17,23,.18)!important;
  color:#fff!important;
  font-weight:900!important;
  font-size:.9rem!important;
  box-shadow:0 12px 24px rgba(0,0,0,.18)!important;
}

.movie-scenes-block{
  position:relative!important;
  z-index:3!important;
  margin:4px -28px 28px 0!important;
}

.movie-scenes-block h3,
.movie-after-intro h3{
  margin:0 0 14px!important;
  color:rgba(255,255,255,.72)!important;
  font-size:.8rem!important;
  font-weight:1000!important;
  letter-spacing:.16em!important;
  text-transform:uppercase!important;
}

.movie-scenes-row{
  display:flex!important;
  gap:10px!important;
  overflow-x:auto!important;
  overflow-y:hidden!important;
  padding:0 28px 4px 0!important;
  scrollbar-width:none!important;
}

.movie-scenes-row::-webkit-scrollbar{display:none!important;}

.movie-scene-thumb{
  flex:0 0 118px!important;
  width:118px!important;
  height:72px!important;
  border:0!important;
  border-radius:7px!important;
  background:#111 center/cover no-repeat!important;
  box-shadow:0 10px 20px rgba(0,0,0,.28)!important;
  cursor:pointer!important;
}

.movie-after-intro{
  display:none!important;
  position:relative!important;
  z-index:3!important;
  padding:8px 0 28px!important;
}

.movie-started .movie-after-intro{display:block!important;}

.movie-scenes-show{
  position:relative!important;
  width:100%!important;
  height:295px!important;
  overflow:hidden!important;
  border-radius:14px!important;
  background:#111!important;
  box-shadow:0 18px 34px rgba(0,0,0,.28)!important;
}

.movie-big-scene{
  position:absolute!important;
  inset:0!important;
  opacity:0!important;
  transform:scale(1.04)!important;
  background:center/cover no-repeat!important;
  transition:opacity .58s ease, transform 2.8s ease!important;
}

.movie-big-scene.active{
  opacity:1!important;
  transform:scale(1)!important;
}

/* Player do Poster: fixo, preto, alinhado e com thumb */
.movie-cinematic-screen > .phone-fixed-player,
.movie-poster-screen > .phone-fixed-player,
.published-movie > .phone-fixed-player{
  position:absolute!important;
  left:0!important;
  right:0!important;
  bottom:0!important;
  width:100%!important;
  max-width:100%!important;
  height:82px!important;
  min-height:82px!important;
  margin:0!important;
  padding:12px 14px!important;
  border-radius:0!important;
  background:#050505!important;
  border-top:1px solid rgba(255,255,255,.12)!important;
  display:grid!important;
  grid-template-columns:46px minmax(0,1fr) 44px!important;
  gap:11px!important;
  align-items:center!important;
  z-index:90!important;
  overflow:hidden!important;
}

.movie-cinematic-screen > .phone-fixed-player .music-player-thumb,
.movie-poster-screen > .phone-fixed-player .music-player-thumb,
.published-movie > .phone-fixed-player .music-player-thumb{
  width:46px!important;
  height:46px!important;
  min-width:46px!important;
  max-width:46px!important;
  border-radius:3px!important;
  background-size:cover!important;
  background-position:center!important;
  background-repeat:no-repeat!important;
  background-color:#1c1c1c!important;
}

.movie-cinematic-screen > .phone-fixed-player .player-action,
.movie-poster-screen > .phone-fixed-player .player-action,
.published-movie > .phone-fixed-player .player-action{
  width:38px!important;
  height:38px!important;
  min-width:38px!important;
  border-radius:999px!important;
  background:transparent!important;
  border:2px solid #fff!important;
  color:#fff!important;
  display:grid!important;
  place-items:center!important;
  padding:0!important;
  margin:0!important;
  line-height:0!important;
}

.movie-cinematic-screen .share-final{display:none!important;}

@media(max-width:640px){
  .movie-cinematic-screen .movie-poster-scroll,
  .movie-poster-screen .movie-poster-scroll{
    padding-left:22px!important;
    padding-right:22px!important;
  }

  .movie-cinematic-screen .movie-hero,
  .movie-poster-screen .movie-hero{
    margin-left:-22px!important;
    margin-right:-22px!important;
    height:300px!important;
  }

  .movie-cinematic-screen h2,
  .movie-cinematic-screen h1{
    font-size:3.45rem!important;
    max-width:275px!important;
    padding-top:178px!important;
  }

  .movie-cinematic-screen p{
    font-size:.99rem!important;
    max-width:290px!important;
  }

  .movie-scene-thumb{
    flex-basis:118px!important;
    width:118px!important;
    height:70px!important;
  }
}



/* ===== FINAL Poster: fullscreen Netflix/MimoQR + botão correto ===== */
.movie-fullscreen-player{
  position:absolute!important;
  inset:0!important;
  z-index:210!important;
  display:none!important;
  background:#000!important;
  overflow:hidden!important;
}

.movie-fullscreen-active .movie-fullscreen-player{
  display:block!important;
}

.movie-fullscreen-scene{
  position:absolute!important;
  inset:0!important;
  background:#000 center/contain no-repeat!important;
  opacity:1!important;
  transform:scale(1.01)!important;
  transition:background-image .25s ease, transform 3.5s ease!important;
}

.movie-fullscreen-gradient{
  position:absolute!important;
  inset:0!important;
  background:
    radial-gradient(circle at center, transparent 0 48%, rgba(0,0,0,.35) 100%),
    linear-gradient(180deg,rgba(0,0,0,.20),rgba(0,0,0,.10) 52%,rgba(0,0,0,.72))!important;
  pointer-events:none!important;
}

.movie-fullscreen-brand{
  position:absolute!important;
  inset:0!important;
  display:flex!important;
  flex-direction:column!important;
  align-items:center!important;
  justify-content:center!important;
  gap:14px!important;
  opacity:0!important;
  transform:scale(.74)!important;
  pointer-events:none!important;
}

.movie-fullscreen-brand img{
  width:104px!important;
  height:104px!important;
  object-fit:contain!important;
  filter:drop-shadow(0 0 28px rgba(239,17,23,.88))!important;
}

.movie-fullscreen-brand span{
  color:#ef1117!important;
  font-size:1.35rem!important;
  font-weight:1000!important;
  letter-spacing:.08em!important;
}

.movie-cinematic-screen.is-intro-running .movie-fullscreen-brand{
  animation:mimoqrFullIntro 2.3s cubic-bezier(.18,.88,.28,1) both!important;
}

@keyframes mimoqrFullIntro{
  0%{opacity:0;transform:scale(.58)}
  15%{opacity:1;transform:scale(.86)}
  62%{opacity:1;transform:scale(1.12)}
  100%{opacity:0;transform:scale(1.55)}
}

.movie-fullscreen-close{
  position:absolute!important;
  right:14px!important;
  top:14px!important;
  width:34px!important;
  height:34px!important;
  border-radius:999px!important;
  border:1px solid rgba(255,255,255,.85)!important;
  background:rgba(0,0,0,.42)!important;
  color:#fff!important;
  font-size:1.45rem!important;
  line-height:1!important;
  z-index:230!important;
  cursor:pointer!important;
}

.movie-scene-thumb.active{
  outline:2px solid #ef1117!important;
  outline-offset:2px!important;
}

/* Cenas e Agora em exibição sempre visíveis no Poster. */
.movie-scenes-block,
.movie-after-intro{
  display:block!important;
  visibility:visible!important;
  opacity:1!important;
}

.movie-scenes-row{
  min-height:78px!important;
}

.movie-scenes-show{
  display:block!important;
  min-height:260px!important;
}

/* Botão do Poster nunca pode virar bola branca. */
.movie-cinematic-screen > .phone-fixed-player .player-action,
.movie-poster-screen > .phone-fixed-player .player-action,
.published-movie > .phone-fixed-player .player-action,
.movie-cinematic-screen > .phone-fixed-player .player-action.is-playing,
.movie-cinematic-screen > .phone-fixed-player .player-action.is-loading,
.movie-poster-screen > .phone-fixed-player .player-action.is-playing,
.movie-poster-screen > .phone-fixed-player .player-action.is-loading,
.published-movie > .phone-fixed-player .player-action.is-playing,
.published-movie > .phone-fixed-player .player-action.is-loading{
  background:transparent!important;
  border:2px solid #fff!important;
  color:#fff!important;
  box-shadow:none!important;
}

.movie-cinematic-screen > .phone-fixed-player .player-action .play-icon,
.movie-poster-screen > .phone-fixed-player .player-action .play-icon,
.published-movie > .phone-fixed-player .player-action .play-icon{
  border-left-color:#fff!important;
}

.movie-cinematic-screen > .phone-fixed-player .player-action .pause-icon::before,
.movie-cinematic-screen > .phone-fixed-player .player-action .pause-icon::after,
.movie-poster-screen > .phone-fixed-player .player-action .pause-icon::before,
.movie-poster-screen > .phone-fixed-player .player-action .pause-icon::after,
.published-movie > .phone-fixed-player .player-action .pause-icon::before,
.published-movie > .phone-fixed-player .player-action .pause-icon::after{
  background:#fff!important;
}

/* reforço para sobrescrever regras antigas que colocavam background branco no is-playing */
.movie-player .player-action.is-playing,
.movie-player button.player-action.is-playing{
  background:transparent!important;
  color:#fff!important;
}
.phone-delux .delux-music-card .player-action.is-playing,
.published-delux .delux-music-card .player-action.is-playing{
  background:#e3c48d!important;
  color:#211910!important;
}


/* ===== final fix 2026-07-03: banner, marquee, event player, birthday contrast ===== */
.music-player-thumb{
  overflow:hidden!important;
  background:#ddd1b8!important;
  display:flex!important;
  align-items:center!important;
  justify-content:center!important;
}
.music-player-thumb img{
  width:100%!important;
  height:100%!important;
  object-fit:cover!important;
  display:block!important;
}
.player-track-marquee{
  min-width:0!important;
  overflow:hidden!important;
  display:flex!important;
  flex-direction:column!important;
  align-items:flex-start!important;
  justify-content:center!important;
  gap:2px!important;
}
.player-marquee-line{
  display:flex!important;
  width:max-content!important;
  min-width:100%!important;
  gap:28px!important;
  white-space:nowrap!important;
  animation:mimoqrPlayerMarquee 10s linear infinite!important;
}
.player-marquee-line span{display:inline-block!important;white-space:nowrap!important;}
.player-track-marquee strong,
.player-track-marquee small{
  overflow:visible!important;
  max-width:none!important;
  text-align:left!important;
}
.player-track-marquee strong{font-size:.82rem!important;line-height:1.06!important;font-weight:900!important;color:#fff!important;}
.player-track-marquee small{font-size:.63rem!important;line-height:1.08!important;opacity:.84!important;color:#d6d6d6!important;}
@keyframes mimoqrPlayerMarquee{0%{transform:translateX(0)}100%{transform:translateX(-50%)}}

.event-player,
.phone-evento .phone-fixed-player,
.event-screen > .phone-fixed-player{
  left:0!important; right:0!important; bottom:0!important;
  width:100%!important; border-radius:0!important;
  min-height:76px!important; padding:10px 14px!important;
  background:#050505!important; border-top:1px solid rgba(255,255,255,.08)!important;
  grid-template-columns:50px minmax(0,1fr) 46px!important; gap:12px!important; align-items:center!important;
}
.phone-evento .phone-fixed-player .music-player-thumb,
.event-screen > .phone-fixed-player .music-player-thumb{
  width:50px!important; height:50px!important; min-width:50px!important; border-radius:4px!important;
}
.phone-evento .phone-fixed-player .player-action,
.event-screen > .phone-fixed-player .player-action{
  width:42px!important; height:42px!important; min-width:42px!important; border-radius:999px!important;
  border:2px solid #fff!important; background:transparent!important; color:#fff!important;
  display:grid!important; place-items:center!important; margin:0!important; align-self:center!important;
}
.phone-evento .phone-fixed-player .player-action.is-playing,
.event-screen > .phone-fixed-player .player-action.is-playing{
  background:transparent!important; color:#fff!important;
}
.phone-evento .phone-fixed-player .player-action .pause-icon,
.event-screen > .phone-fixed-player .player-action .pause-icon{display:block!important}
.phone-evento .phone-fixed-player .player-action .pause-icon::before,
.phone-evento .phone-fixed-player .player-action .pause-icon::after,
.event-screen > .phone-fixed-player .player-action .pause-icon::before,
.event-screen > .phone-fixed-player .player-action .pause-icon::after{background:#fff!important}
.phone-evento .phone-fixed-player .player-track-text,
.event-screen > .phone-fixed-player .player-track-text{text-align:left!important}

.phone-aniversario .birthday-top-ribbon,
.published-aniversario .birthday-top-ribbon,
.published-birthday .birthday-top-ribbon{
  background:rgba(255,255,255,.88)!important;
  color:rgba(0,0,0,.56)!important;
  text-shadow:none!important;
  border:1px solid rgba(0,0,0,.06)!important;
}
.birthday-hero-title{
  display:flex!important;flex-direction:column!important;gap:.02em!important;align-items:center!important;justify-content:center!important;
  text-align:center!important;line-height:.95!important;margin:2px 0 0!important;
}
.birthday-hero-title span{
  display:block!important;font-family:'Poppins',sans-serif!important;font-weight:1000!important;letter-spacing:-.03em!important;
}
.birthday-hero-title span:nth-child(1){font-size:2.6rem!important}
.birthday-hero-title span:nth-child(2){font-size:3rem!important}
.birthday-hero-title span:nth-child(3){font-size:2.25rem!important;margin-top:.08em!important}
.phone-aniversario.theme-birthday-red .birthday-hero-title span,
.published-aniversario.theme-birthday-red .birthday-hero-title span,
.published-birthday.theme-birthday-red .birthday-hero-title span{color:#b70d10!important;text-shadow:0 1px 0 rgba(255,255,255,.85),0 8px 18px rgba(160,15,15,.12)!important;}
.phone-aniversario.theme-birthday-pink .birthday-hero-title span,
.published-aniversario.theme-birthday-pink .birthday-hero-title span,
.published-birthday.theme-birthday-pink .birthday-hero-title span{color:#d3387b!important;text-shadow:0 1px 0 rgba(255,255,255,.85),0 8px 18px rgba(211,56,123,.12)!important;}
.phone-aniversario.theme-birthday-gold .birthday-hero-title span,
.published-aniversario.theme-birthday-gold .birthday-hero-title span,
.published-birthday.theme-birthday-gold .birthday-hero-title span{color:#b57600!important;text-shadow:0 1px 0 rgba(255,255,255,.9),0 8px 18px rgba(181,118,0,.14)!important;}
.phone-aniversario.theme-birthday-lilac .birthday-hero-title span,
.published-aniversario.theme-birthday-lilac .birthday-hero-title span,
.published-birthday.theme-birthday-lilac .birthday-hero-title span{color:#6d46d8!important;text-shadow:0 1px 0 rgba(255,255,255,.85),0 8px 18px rgba(109,70,216,.16)!important;}
.phone-aniversario.theme-birthday-green .birthday-hero-title span,
.published-aniversario.theme-birthday-green .birthday-hero-title span,
.published-birthday.theme-birthday-green .birthday-hero-title span{color:#1a8e55!important;text-shadow:0 1px 0 rgba(255,255,255,.85),0 8px 18px rgba(26,142,85,.16)!important;}
.phone-aniversario.theme-birthday-blue .birthday-hero-title span,
.published-aniversario.theme-birthday-blue .birthday-hero-title span,
.published-birthday.theme-birthday-blue .birthday-hero-title span{color:#236ad8!important;text-shadow:0 1px 0 rgba(255,255,255,.85),0 8px 18px rgba(35,106,216,.16)!important;}



/* ===== Correção frase Cartão de Aniversário ===== */
.birthday-hero-title span:nth-child(1){
  font-size:2.72rem!important;
}
.birthday-hero-title span:nth-child(2){
  font-size:2.58rem!important;
  margin-top:.08em!important;
}
.birthday-hero-title span:nth-child(3){
  display:none!important;
}
@media(max-width:640px){
  .birthday-hero-title span:nth-child(1){
    font-size:2.45rem!important;
  }
  .birthday-hero-title span:nth-child(2){
    font-size:2.28rem!important;
  }
}



/* ===== Ajustes finais gerais 2026-07-03 ===== */
.event-carousel{
  position:relative!important;
  margin:0 0 14px!important;
}
.event-carousel .event-photo-wrap{
  margin-bottom:10px!important;
}
.event-photo-nav{
  position:absolute!important;
  top:calc(50% - 22px)!important;
  width:38px!important;
  height:38px!important;
  border-radius:999px!important;
  border:1px solid rgba(255,255,255,.72)!important;
  background:rgba(0,0,0,.28)!important;
  color:#fff!important;
  display:grid!important;
  place-items:center!important;
  font-size:1.6rem!important;
  font-weight:1000!important;
  line-height:1!important;
  z-index:4!important;
  cursor:pointer!important;
  backdrop-filter:blur(4px)!important;
}
.event-photo-nav.prev{left:10px!important;}
.event-photo-nav.next{right:10px!important;}
.event-dots{
  display:flex!important;
  justify-content:center!important;
  gap:7px!important;
}
.event-dots button{
  width:9px!important;
  height:9px!important;
  padding:0!important;
  border:0!important;
  border-radius:999px!important;
  background:rgba(255,255,255,.34)!important;
  cursor:pointer!important;
}
.event-dots button.active{
  width:28px!important;
  background:#fff!important;
}

/* Poster mais simétrico e com cenas sempre visíveis */
.movie-scenes-block{
  margin:8px 0 28px!important;
}
.movie-scenes-row{
  padding:0!important;
}
.movie-cinematic-screen .movie-after-intro,
.movie-poster-screen .movie-after-intro,
.published-movie .movie-after-intro{
  display:block!important;
  padding:8px 0 34px!important;
}
.movie-scenes-show{
  min-height:295px!important;
  border-radius:16px!important;
}
.movie-scenes-show .movie-big-scene,
.movie-scenes-row .movie-scene-thumb{
  background-color:#111!important;
  background-position:center center!important;
  background-repeat:no-repeat!important;
}
.movie-fullscreen-scene{
  background-position:center center!important;
}
.movie-cinematic-screen .movie-poster-scroll,
.movie-poster-screen .movie-poster-scroll,
.published-movie .movie-poster-scroll{
  padding-left:24px!important;
  padding-right:24px!important;
}
.movie-cinematic-screen .movie-hero,
.movie-poster-screen .movie-hero,
.published-movie .movie-hero{
  margin-left:-24px!important;
  margin-right:-24px!important;
}

/* Cartão de aniversário com fundo claro em todas as 6 cores */
.phone-aniversario.theme-birthday-red .birthday-modern-screen,
.theme-birthday-red .published-birthday .birthday-modern-screen,
.theme-birthday-red .birthday-modern-screen{
  background:linear-gradient(180deg,#ffffff 0%, #fff6f7 100%)!important;
}
.phone-aniversario.theme-birthday-pink .birthday-modern-screen,
.theme-birthday-pink .published-birthday .birthday-modern-screen,
.theme-birthday-pink .birthday-modern-screen{
  background:linear-gradient(180deg,#ffffff 0%, #fff7fb 100%)!important;
}
.phone-aniversario.theme-birthday-gold .birthday-modern-screen,
.theme-birthday-gold .published-birthday .birthday-modern-screen,
.theme-birthday-gold .birthday-modern-screen{
  background:linear-gradient(180deg,#ffffff 0%, #fff9ee 100%)!important;
}
.phone-aniversario.theme-birthday-lilac .birthday-modern-screen,
.theme-birthday-lilac .published-birthday .birthday-modern-screen,
.theme-birthday-lilac .birthday-modern-screen{
  background:linear-gradient(180deg,#ffffff 0%, #faf7ff 100%)!important;
}
.phone-aniversario.theme-birthday-green .birthday-modern-screen,
.theme-birthday-green .published-birthday .birthday-modern-screen,
.theme-birthday-green .birthday-modern-screen{
  background:linear-gradient(180deg,#ffffff 0%, #f5fff9 100%)!important;
}
.phone-aniversario.theme-birthday-blue .birthday-modern-screen,
.theme-birthday-blue .published-birthday .birthday-modern-screen,
.theme-birthday-blue .birthday-modern-screen{
  background:linear-gradient(180deg,#ffffff 0%, #f5f9ff 100%)!important;
}
.theme-birthday-red .birthday-top-ribbon,.theme-birthday-red .birthday-title-line b,.theme-birthday-red .birthday-date{color:#c51618!important;}
.theme-birthday-pink .birthday-top-ribbon,.theme-birthday-pink .birthday-title-line b,.theme-birthday-pink .birthday-date{color:#d3387b!important;}
.theme-birthday-gold .birthday-top-ribbon,.theme-birthday-gold .birthday-title-line b,.theme-birthday-gold .birthday-date{color:#b57600!important;}
.theme-birthday-lilac .birthday-top-ribbon,.theme-birthday-lilac .birthday-title-line b,.theme-birthday-lilac .birthday-date{color:#6d46d8!important;}
.theme-birthday-green .birthday-top-ribbon,.theme-birthday-green .birthday-title-line b,.theme-birthday-green .birthday-date{color:#1a8e55!important;}
.theme-birthday-blue .birthday-top-ribbon,.theme-birthday-blue .birthday-title-line b,.theme-birthday-blue .birthday-date{color:#236ad8!important;}
.theme-birthday-red .birthday-message,
.theme-birthday-pink .birthday-message,
.theme-birthday-gold .birthday-message,
.theme-birthday-lilac .birthday-message,
.theme-birthday-green .birthday-message,
.theme-birthday-blue .birthday-message{
  color:#4a3440!important;
}


/* Cartão de aniversário: carrossel com setas e autoplay 3,5s */
.birthday-photo-carousel{
  position:relative!important;
  margin:0 0 10px!important;
}
.birthday-photo-carousel .birthday-photo-frame{
  margin-bottom:10px!important;
}
.birthday-photo-nav{
  position:absolute!important;
  top:calc(50% - 28px)!important;
  width:38px!important;
  height:38px!important;
  border-radius:999px!important;
  border:1px solid rgba(255,255,255,.84)!important;
  background:rgba(0,0,0,.24)!important;
  color:#fff!important;
  display:grid!important;
  place-items:center!important;
  font-size:1.6rem!important;
  font-weight:1000!important;
  line-height:1!important;
  z-index:5!important;
  cursor:pointer!important;
  backdrop-filter:blur(4px)!important;
  box-shadow:0 10px 20px rgba(0,0,0,.12)!important;
}
.birthday-photo-nav.prev{left:10px!important;}
.birthday-photo-nav.next{right:10px!important;}
.phone-aniversario .birthday-dots,
.published-aniversario .birthday-dots,
.published-birthday .birthday-dots{
  display:flex!important;
  justify-content:center!important;
  gap:8px!important;
  margin:2px 0 12px!important;
}
.phone-aniversario .birthday-dots button,
.published-aniversario .birthday-dots button,
.published-birthday .birthday-dots button,
.phone-aniversario .birthday-dots i,
.published-aniversario .birthday-dots i,
.published-birthday .birthday-dots i{
  width:10px!important;
  height:10px!important;
  padding:0!important;
  border:0!important;
  border-radius:999px!important;
  background:rgba(0,0,0,.14)!important;
  cursor:pointer!important;
}
.phone-aniversario .birthday-dots button.active,
.published-aniversario .birthday-dots button.active,
.published-birthday .birthday-dots button.active,
.phone-aniversario .birthday-dots i.active,
.published-aniversario .birthday-dots i.active,
.published-birthday .birthday-dots i.active{
  width:28px!important;
  background:var(--birthday-accent,#c51618)!important;
}



/* ===== Ajuste visual: setas bonitas do Evento Especial + sem etapa Delux vazia ===== */
.phone-evento .event-photo-nav,
.published-event .event-photo-nav,
.event-screen .event-photo-nav{
  width:44px!important;
  height:44px!important;
  border-radius:999px!important;
  border:1px solid rgba(255,255,255,.82)!important;
  background:
    radial-gradient(circle at 32% 28%, rgba(255,255,255,.98), rgba(255,255,255,.78) 42%, rgba(255,255,255,.26) 100%)!important;
  color:#c91417!important;
  font-size:0!important;
  box-shadow:
    0 14px 28px rgba(0,0,0,.22),
    inset 0 1px 0 rgba(255,255,255,.88)!important;
  backdrop-filter:blur(8px)!important;
  transition:transform .18s ease, box-shadow .18s ease, background .18s ease!important;
}

.phone-evento .event-photo-nav:hover,
.published-event .event-photo-nav:hover,
.event-screen .event-photo-nav:hover{
  transform:translateY(-50%) scale(1.06)!important;
  background:#fff!important;
  box-shadow:
    0 18px 34px rgba(0,0,0,.28),
    0 0 0 4px rgba(255,255,255,.18)!important;
}

.phone-evento .event-photo-nav::before,
.published-event .event-photo-nav::before,
.event-screen .event-photo-nav::before{
  content:""!important;
  width:12px!important;
  height:12px!important;
  border-top:4px solid currentColor!important;
  border-right:4px solid currentColor!important;
  display:block!important;
  margin:0!important;
}

.phone-evento .event-photo-nav.prev,
.published-event .event-photo-nav.prev,
.event-screen .event-photo-nav.prev{
  left:12px!important;
}

.phone-evento .event-photo-nav.next,
.published-event .event-photo-nav.next,
.event-screen .event-photo-nav.next{
  right:12px!important;
}

.phone-evento .event-photo-nav.prev::before,
.published-event .event-photo-nav.prev::before,
.event-screen .event-photo-nav.prev::before{
  transform:rotate(-135deg)!important;
  margin-left:4px!important;
}

.phone-evento .event-photo-nav.next::before,
.published-event .event-photo-nav.next::before,
.event-screen .event-photo-nav.next::before{
  transform:rotate(45deg)!important;
  margin-right:4px!important;
}

.phone-evento .event-dots button.active,
.published-event .event-dots button.active,
.event-screen .event-dots button.active{
  background:#fff!important;
  box-shadow:0 0 0 3px rgba(255,255,255,.18)!important;
}



/* ===== Correção final: setas modernas Evento + Aniversário ===== */
.phone-evento .event-photo-nav,
.published-event .event-photo-nav,
.event-screen .event-photo-nav,
.phone-aniversario .birthday-photo-nav,
.published-aniversario .birthday-photo-nav,
.published-birthday .birthday-photo-nav,
.birthday-screen .birthday-photo-nav{
  width:36px!important;
  height:36px!important;
  border-radius:999px!important;
  border:1px solid rgba(255,255,255,.70)!important;
  background:rgba(5,5,5,.34)!important;
  color:#fff!important;
  font-size:0!important;
  display:grid!important;
  place-items:center!important;
  z-index:8!important;
  cursor:pointer!important;
  backdrop-filter:blur(10px)!important;
  -webkit-backdrop-filter:blur(10px)!important;
  box-shadow:
    0 10px 24px rgba(0,0,0,.24),
    inset 0 1px 0 rgba(255,255,255,.18)!important;
  transition:transform .16s ease, background .16s ease, border-color .16s ease, box-shadow .16s ease!important;
}

.phone-evento .event-photo-nav:hover,
.published-event .event-photo-nav:hover,
.event-screen .event-photo-nav:hover,
.phone-aniversario .birthday-photo-nav:hover,
.published-aniversario .birthday-photo-nav:hover,
.published-birthday .birthday-photo-nav:hover,
.birthday-screen .birthday-photo-nav:hover{
  background:rgba(5,5,5,.52)!important;
  border-color:rgba(255,255,255,.90)!important;
  box-shadow:
    0 14px 30px rgba(0,0,0,.32),
    0 0 0 4px rgba(255,255,255,.10),
    inset 0 1px 0 rgba(255,255,255,.22)!important;
}

.phone-evento .event-photo-nav::before,
.published-event .event-photo-nav::before,
.event-screen .event-photo-nav::before,
.phone-aniversario .birthday-photo-nav::before,
.published-aniversario .birthday-photo-nav::before,
.published-birthday .birthday-photo-nav::before,
.birthday-screen .birthday-photo-nav::before{
  content:""!important;
  width:10px!important;
  height:10px!important;
  border-top:3px solid currentColor!important;
  border-right:3px solid currentColor!important;
  display:block!important;
}

.phone-evento .event-photo-nav.prev,
.published-event .event-photo-nav.prev,
.event-screen .event-photo-nav.prev,
.phone-aniversario .birthday-photo-nav.prev,
.published-aniversario .birthday-photo-nav.prev,
.published-birthday .birthday-photo-nav.prev,
.birthday-screen .birthday-photo-nav.prev{
  left:12px!important;
}

.phone-evento .event-photo-nav.next,
.published-event .event-photo-nav.next,
.event-screen .event-photo-nav.next,
.phone-aniversario .birthday-photo-nav.next,
.published-aniversario .birthday-photo-nav.next,
.published-birthday .birthday-photo-nav.next,
.birthday-screen .birthday-photo-nav.next{
  right:12px!important;
}

.phone-evento .event-photo-nav.prev::before,
.published-event .event-photo-nav.prev::before,
.event-screen .event-photo-nav.prev::before,
.phone-aniversario .birthday-photo-nav.prev::before,
.published-aniversario .birthday-photo-nav.prev::before,
.published-birthday .birthday-photo-nav.prev::before,
.birthday-screen .birthday-photo-nav.prev::before{
  transform:rotate(-135deg)!important;
  margin-left:3px!important;
}

.phone-evento .event-photo-nav.next::before,
.published-event .event-photo-nav.next::before,
.event-screen .event-photo-nav.next::before,
.phone-aniversario .birthday-photo-nav.next::before,
.published-aniversario .birthday-photo-nav.next::before,
.published-birthday .birthday-photo-nav.next::before,
.birthday-screen .birthday-photo-nav.next::before{
  transform:rotate(45deg)!important;
  margin-right:3px!important;
}

/* posicionamento limpo dentro das fotos */
.event-carousel .event-photo-nav,
.birthday-photo-carousel .birthday-photo-nav{
  top:50%!important;
  transform:translateY(-50%)!important;
}

.event-carousel .event-photo-nav:hover,
.birthday-photo-carousel .birthday-photo-nav:hover{
  transform:translateY(-50%) scale(1.06)!important;
}

/* tira visual antigo branco/vermelho das setas do Evento */
.phone-evento .event-photo-nav,
.published-event .event-photo-nav,
.event-screen .event-photo-nav{
  color:#fff!important;
  background:linear-gradient(180deg,rgba(0,0,0,.30),rgba(0,0,0,.54))!important;
}

/* aniversário usa a cor da paleta só no brilho, mantendo moderno */
.phone-aniversario .birthday-photo-nav,
.published-aniversario .birthday-photo-nav,
.published-birthday .birthday-photo-nav,
.birthday-screen .birthday-photo-nav{
  color:#fff!important;
  background:linear-gradient(180deg,rgba(0,0,0,.24),rgba(0,0,0,.48))!important;
  box-shadow:
    0 10px 24px rgba(0,0,0,.22),
    0 0 0 1px color-mix(in srgb, var(--birthday-accent,#c51618) 28%, transparent),
    inset 0 1px 0 rgba(255,255,255,.18)!important;
}



/* ===== Correção final real: setas iguais ao Delux + X branco da música ===== */
.phone-evento .event-photo-nav,
.published-event .event-photo-nav,
.event-screen .event-photo-nav,
.phone-aniversario .birthday-photo-nav,
.published-aniversario .birthday-photo-nav,
.published-birthday .birthday-photo-nav,
.birthday-screen .birthday-photo-nav{
  position:absolute!important;
  top:50%!important;
  width:34px!important;
  height:34px!important;
  min-width:34px!important;
  min-height:34px!important;
  border-radius:999px!important;
  border:0!important;
  background:#fbf4e6!important;
  color:#c89c60!important;
  box-shadow:0 8px 18px rgba(0,0,0,.10)!important;
  transform:translateY(-50%)!important;
  z-index:8!important;
  font-size:1rem!important;
  font-weight:900!important;
  line-height:1!important;
  display:grid!important;
  place-items:center!important;
  padding:0!important;
  cursor:pointer!important;
  backdrop-filter:none!important;
  -webkit-backdrop-filter:none!important;
  transition:transform .16s ease, box-shadow .16s ease!important;
}

.phone-evento .event-photo-nav:hover,
.published-event .event-photo-nav:hover,
.event-screen .event-photo-nav:hover,
.phone-aniversario .birthday-photo-nav:hover,
.published-aniversario .birthday-photo-nav:hover,
.published-birthday .birthday-photo-nav:hover,
.birthday-screen .birthday-photo-nav:hover{
  transform:translateY(-50%) scale(1.04)!important;
  background:#fbf4e6!important;
  color:#c89c60!important;
  box-shadow:0 10px 22px rgba(0,0,0,.16)!important;
}

.phone-evento .event-photo-nav::before,
.published-event .event-photo-nav::before,
.event-screen .event-photo-nav::before,
.phone-aniversario .birthday-photo-nav::before,
.published-aniversario .birthday-photo-nav::before,
.published-birthday .birthday-photo-nav::before,
.birthday-screen .birthday-photo-nav::before{
  display:none!important;
  content:none!important;
}

.phone-evento .event-photo-nav.prev,
.published-event .event-photo-nav.prev,
.event-screen .event-photo-nav.prev,
.phone-aniversario .birthday-photo-nav.prev,
.published-aniversario .birthday-photo-nav.prev,
.published-birthday .birthday-photo-nav.prev,
.birthday-screen .birthday-photo-nav.prev{
  left:-2px!important;
}

.phone-evento .event-photo-nav.next,
.published-event .event-photo-nav.next,
.event-screen .event-photo-nav.next,
.phone-aniversario .birthday-photo-nav.next,
.published-aniversario .birthday-photo-nav.next,
.published-birthday .birthday-photo-nav.next,
.birthday-screen .birthday-photo-nav.next{
  right:-2px!important;
}

/* mantém o X da música no card com X branco e círculo branco */
.feature-list li.negative .feat-icon{
  background:transparent!important;
  border:1.5px solid #fff!important;
  color:#fff!important;
  box-shadow:none!important;
}



/* ===== Correção: X branco apenas no card Evento Especial ===== */
/* volta o padrão dos X negativos para os outros cards */
.plan-card:not(.plan-evento) .feature-list li.negative .feat-icon{
  background:rgba(255,255,255,.06)!important;
  border:1px solid rgba(255,255,255,.22)!important;
  color:#fff!important;
  box-shadow:none!important;
}

/* X branco com círculo/borda branca somente no Evento Especial */
.plan-card.plan-evento .feature-list li.negative .feat-icon{
  background:transparent!important;
  border:1.5px solid #fff!important;
  color:#fff!important;
  box-shadow:none!important;
}



/* ===== Correção final: play/pause sem ícone duplicado ===== */
/* Pausado/parado = triângulo play. Tocando/carregando = dois palitos pause. */
.phone-fixed-player .player-action .play-icon,
.movie-player.phone-fixed-player .player-action .play-icon,
.event-player.phone-fixed-player .player-action .play-icon,
.birthday-player.phone-fixed-player .player-action .play-icon,
.published-player.phone-fixed-player .player-action .play-icon{
  display:block!important;
  width:0!important;
  height:0!important;
  border-top:8px solid transparent!important;
  border-bottom:8px solid transparent!important;
  border-left:12px solid #fff!important;
  margin-left:3px!important;
  background:transparent!important;
}

.phone-fixed-player .player-action .pause-icon,
.movie-player.phone-fixed-player .player-action .pause-icon,
.event-player.phone-fixed-player .player-action .pause-icon,
.birthday-player.phone-fixed-player .player-action .pause-icon,
.published-player.phone-fixed-player .player-action .pause-icon,
.phone-evento .phone-fixed-player .player-action .pause-icon,
.event-screen > .phone-fixed-player .player-action .pause-icon,
.phone-aniversario .phone-fixed-player .player-action .pause-icon,
.birthday-screen > .phone-fixed-player .player-action .pause-icon{
  display:none!important;
  width:13px!important;
  height:15px!important;
  position:relative!important;
  background:transparent!important;
  margin:0!important;
}

.phone-fixed-player .player-action.is-playing .play-icon,
.phone-fixed-player .player-action.is-loading .play-icon,
.movie-player.phone-fixed-player .player-action.is-playing .play-icon,
.movie-player.phone-fixed-player .player-action.is-loading .play-icon,
.event-player.phone-fixed-player .player-action.is-playing .play-icon,
.event-player.phone-fixed-player .player-action.is-loading .play-icon,
.birthday-player.phone-fixed-player .player-action.is-playing .play-icon,
.birthday-player.phone-fixed-player .player-action.is-loading .play-icon,
.published-player.phone-fixed-player .player-action.is-playing .play-icon,
.published-player.phone-fixed-player .player-action.is-loading .play-icon{
  display:none!important;
}

.phone-fixed-player .player-action.is-playing .pause-icon,
.phone-fixed-player .player-action.is-loading .pause-icon,
.movie-player.phone-fixed-player .player-action.is-playing .pause-icon,
.movie-player.phone-fixed-player .player-action.is-loading .pause-icon,
.event-player.phone-fixed-player .player-action.is-playing .pause-icon,
.event-player.phone-fixed-player .player-action.is-loading .pause-icon,
.birthday-player.phone-fixed-player .player-action.is-playing .pause-icon,
.birthday-player.phone-fixed-player .player-action.is-loading .pause-icon,
.published-player.phone-fixed-player .player-action.is-playing .pause-icon,
.published-player.phone-fixed-player .player-action.is-loading .pause-icon{
  display:block!important;
}

.phone-fixed-player .player-action .pause-icon::before,
.phone-fixed-player .player-action .pause-icon::after,
.movie-player.phone-fixed-player .player-action .pause-icon::before,
.movie-player.phone-fixed-player .player-action .pause-icon::after,
.event-player.phone-fixed-player .player-action .pause-icon::before,
.event-player.phone-fixed-player .player-action .pause-icon::after,
.birthday-player.phone-fixed-player .player-action .pause-icon::before,
.birthday-player.phone-fixed-player .player-action .pause-icon::after,
.published-player.phone-fixed-player .player-action .pause-icon::before,
.published-player.phone-fixed-player .player-action .pause-icon::after{
  content:""!important;
  position:absolute!important;
  top:0!important;
  width:4px!important;
  height:15px!important;
  border-radius:2px!important;
  background:#fff!important;
}

.phone-fixed-player .player-action .pause-icon::before,
.movie-player.phone-fixed-player .player-action .pause-icon::before,
.event-player.phone-fixed-player .player-action .pause-icon::before,
.birthday-player.phone-fixed-player .player-action .pause-icon::before,
.published-player.phone-fixed-player .player-action .pause-icon::before{
  left:1px!important;
}

.phone-fixed-player .player-action .pause-icon::after,
.movie-player.phone-fixed-player .player-action .pause-icon::after,
.event-player.phone-fixed-player .player-action .pause-icon::after,
.birthday-player.phone-fixed-player .player-action .pause-icon::after,
.published-player.phone-fixed-player .player-action .pause-icon::after{
  right:1px!important;
}

/* Garante que o botão não mostre círculo branco no Evento/Aniversário/Poster. */
.event-player.phone-fixed-player .player-action,
.birthday-player.phone-fixed-player .player-action,
.movie-player.phone-fixed-player .player-action{
  background:transparent!important;
  border:2px solid #fff!important;
  color:#fff!important;
}



/* ===== Evento Especial: fonte da mensagem igual ao modelo enviado ===== */
.phone-evento .event-message,
.published-event .event-message,
.event-screen .event-message{
  font-family:'Poppins','Inter',system-ui,-apple-system,BlinkMacSystemFont,'Segoe UI',sans-serif!important;
  font-size:1.05rem!important;
  line-height:1.38!important;
  font-weight:800!important;
  letter-spacing:-.018em!important;
  color:#fff!important;
  text-align:center!important;
  text-shadow:none!important;
  max-width:292px!important;
  margin:18px auto 22px!important;
}

@media(max-width:640px){
  .phone-evento .event-message,
  .published-event .event-message,
  .event-screen .event-message{
    font-size:1rem!important;
    line-height:1.4!important;
    max-width:280px!important;
  }
}



/* ===== Cartão de Aniversário: título padrão sincronizado ===== */
.phone-aniversario .birthday-greeting h2,
.published-aniversario .birthday-greeting h2,
.published-birthday .birthday-greeting h2,
.phone-aniversario .birthday-greeting h1,
.published-aniversario .birthday-greeting h1,
.published-birthday .birthday-greeting h1{
  max-width:300px!important;
  margin:0 auto!important;
  text-align:center!important;
  overflow-wrap:break-word!important;
  word-break:normal!important;
}



/* ===== Aniversário: título do preview igual ao campo digitado ===== */
.phone-aniversario .birthday-greeting h2,
.published-aniversario .birthday-greeting h2,
.published-birthday .birthday-greeting h2{
  font-family:'Great Vibes','Brush Script MT','Segoe Script',cursive!important;
  font-size:3.35rem!important;
  line-height:.96!important;
  font-weight:400!important;
  letter-spacing:0!important;
  text-transform:none!important;
  max-width:306px!important;
  margin:0 auto!important;
  text-align:center!important;
  white-space:normal!important;
  overflow-wrap:break-word!important;
  word-break:normal!important;
}
@media(max-width:640px){
  .phone-aniversario .birthday-greeting h2,
  .published-aniversario .birthday-greeting h2,
  .published-birthday .birthday-greeting h2{
    font-size:3rem!important;
    max-width:286px!important;
  }
}


/* ===== Ajuste final: setas do Cartão de Aniversário seguem a paleta selecionada ===== */
.phone-aniversario .birthday-photo-nav,
.published-aniversario .birthday-photo-nav,
.published-birthday .birthday-photo-nav,
.birthday-screen .birthday-photo-nav{
  background:linear-gradient(180deg,color-mix(in srgb, #ffffff 88%, var(--birthday-soft,#fff1f2) 12%),color-mix(in srgb, #ffffff 76%, var(--birthday-soft,#fff1f2) 24%))!important;
  color:var(--birthday-accent,#c51618)!important;
  border:1px solid color-mix(in srgb, var(--birthday-accent,#c51618) 22%, #ffffff 78%)!important;
  box-shadow:0 10px 22px rgba(0,0,0,.10),0 0 0 1px color-mix(in srgb, var(--birthday-accent,#c51618) 12%, transparent)!important;
}

.phone-aniversario .birthday-photo-nav:hover,
.published-aniversario .birthday-photo-nav:hover,
.published-birthday .birthday-photo-nav:hover,
.birthday-screen .birthday-photo-nav:hover{
  background:linear-gradient(180deg,color-mix(in srgb, #ffffff 82%, var(--birthday-soft,#fff1f2) 18%),color-mix(in srgb, #ffffff 66%, var(--birthday-soft,#fff1f2) 34%))!important;
  color:var(--birthday-accent,#c51618)!important;
  border-color:color-mix(in srgb, var(--birthday-accent,#c51618) 34%, #ffffff 66%)!important;
  box-shadow:0 12px 24px rgba(0,0,0,.14),0 0 0 3px color-mix(in srgb, var(--birthday-accent,#c51618) 10%, transparent)!important;
}



/* ===== Ajuste final: badge Novo do Delux sem atrapalhar a simetria ===== */
.plan-card .badge,
.plan-card .plan-badge,
.plan-card .tag,
.plan-card .new-badge,
.plan-card [class*="badge"]{
  pointer-events:none;
}

.plan-card.delux,
.plan-card.plan-delux,
.pro-plan-card.delux,
.pro-plan-card.plan-delux{
  position:relative!important;
}

.plan-card.delux .badge,
.plan-card.plan-delux .badge,
.pro-plan-card.delux .badge,
.pro-plan-card.plan-delux .badge,
.plan-card.delux .plan-badge,
.plan-card.plan-delux .plan-badge,
.pro-plan-card.delux .plan-badge,
.pro-plan-card.plan-delux .plan-badge,
.plan-card.delux .tag,
.plan-card.plan-delux .tag,
.pro-plan-card.delux .tag,
.pro-plan-card.plan-delux .tag,
.plan-card.delux .new-badge,
.plan-card.plan-delux .new-badge,
.pro-plan-card.delux .new-badge,
.pro-plan-card.plan-delux .new-badge{
  position:absolute!important;
  top:14px!important;
  right:14px!important;
  left:auto!important;
  bottom:auto!important;
  transform:none!important;
  margin:0!important;
  z-index:4!important;
  padding:6px 10px!important;
  border-radius:999px!important;
  font-size:.68rem!important;
  line-height:1!important;
  font-weight:1000!important;
  letter-spacing:.04em!important;
  text-transform:uppercase!important;
  background:linear-gradient(135deg,#f4d58f,#c99a4c)!important;
  color:#211506!important;
  box-shadow:0 8px 18px rgba(0,0,0,.20)!important;
}

/* Caso o texto Novo esteja solto dentro do card Delux em algum span/em/small */
.plan-card.delux span:has(> .sr-only),
.plan-card.plan-delux span:has(> .sr-only){
  display:none!important;
}



/* ===== Ajuste final: menu do topo visível no celular ===== */
@media (max-width:950px){
  .site-header.site-header-home,
  .site-header.header-like-print,
  .site-header.qr-scroll-header{
    width:calc(100% - 18px)!important;
    max-width:430px!important;
    height:auto!important;
    min-height:92px!important;
    padding:10px 12px 11px!important;
    flex-direction:column!important;
    align-items:center!important;
    justify-content:center!important;
    gap:9px!important;
    border-radius:24px!important;
  }

  .site-header.site-header-home .brand,
  .site-header.header-like-print .brand,
  .site-header.qr-scroll-header .brand{
    font-size:.96rem!important;
    line-height:1!important;
    gap:8px!important;
  }

  .site-header.site-header-home .brand-mark,
  .site-header.header-like-print .brand-mark,
  .site-header.qr-scroll-header .brand-mark{
    width:26px!important;
    height:26px!important;
    border-radius:9px!important;
  }

  .site-header.site-header-home .desktop-nav,
  .site-header.header-like-print .desktop-nav,
  .site-header.qr-scroll-header .desktop-nav{
    display:flex!important;
    width:100%!important;
    justify-content:center!important;
    align-items:center!important;
    gap:6px!important;
    color:#fff!important;
    font-size:.72rem!important;
    font-weight:950!important;
    line-height:1!important;
    overflow:visible!important;
  }

  .site-header.site-header-home .desktop-nav a,
  .site-header.header-like-print .desktop-nav a,
  .site-header.qr-scroll-header .desktop-nav a{
    flex:1 1 0!important;
    min-width:0!important;
    text-align:center!important;
    white-space:nowrap!important;
    padding:9px 6px!important;
    border-radius:999px!important;
    background:rgba(255,255,255,.075)!important;
    border:1px solid rgba(255,255,255,.10)!important;
  }

  .site-header.site-header-home .desktop-nav a:hover,
  .site-header.header-like-print .desktop-nav a:hover,
  .site-header.qr-scroll-header .desktop-nav a:hover{
    background:rgba(239,17,23,.20)!important;
    border-color:rgba(239,17,23,.38)!important;
  }

  .hero{
    padding-top:136px!important;
  }
}

@media (max-width:380px){
  .site-header.site-header-home .desktop-nav,
  .site-header.header-like-print .desktop-nav,
  .site-header.qr-scroll-header .desktop-nav{
    font-size:.66rem!important;
    gap:5px!important;
  }

  .site-header.site-header-home .desktop-nav a,
  .site-header.header-like-print .desktop-nav a,
  .site-header.qr-scroll-header .desktop-nav a{
    padding:8px 4px!important;
  }
}



/* ===== Ajuste final: alinhamento interno do card Delux ===== */
/* Espaçador invisível no Delux para manter título, preço, lista e botão alinhados com os outros cards, sem mostrar “Pagamento único”. */
.plan-card.plan-delux .delux-align-spacer{
  visibility:hidden!important;
  opacity:0!important;
  pointer-events:none!important;
  display:inline-flex!important;
}

.plan-card.plan-delux{
  display:flex!important;
  flex-direction:column!important;
}

.plan-card.plan-delux .feature-list{
  margin-top:34px!important;
}

.plan-card.plan-delux .btn{
  margin-top:auto!important;
}



/* ===== PACOTE FINAL CONSOLIDADO MimoQR ===== */
/* Delux: sem "Novo" e sem "Pagamento único", mas alinhado com os outros cards. */
.plan-card.plan-delux .new-badge,
.plan-card.plan-delux .badge{
  display:none!important;
}

.plan-card.plan-delux .delux-align-spacer{
  display:block!important;
  width:1px!important;
  height:32px!important;
  margin:14px 0 34px!important;
  padding:0!important;
  opacity:0!important;
  visibility:hidden!important;
  pointer-events:none!important;
}

.plan-card.plan-delux .feature-list{
  margin-top:0!important;
}

.plan-card.plan-delux{
  display:flex!important;
  flex-direction:column!important;
}

.plan-card.plan-delux .btn{
  margin-top:auto!important;
}

/* Garante o X branco somente no card Evento Especial. */
.plan-card:not(.plan-evento) .feature-list li.negative .feat-icon{
  background:rgba(255,255,255,.06)!important;
  border:1px solid rgba(255,255,255,.22)!important;
  color:#fff!important;
  box-shadow:none!important;
}
.plan-card.plan-evento .feature-list li.negative .feat-icon{
  background:transparent!important;
  border:1.5px solid #fff!important;
  color:#fff!important;
  box-shadow:none!important;
}

/* Menu principal visível no celular. */
@media (max-width:950px){
  .site-header.site-header-home .desktop-nav,
  .site-header.header-like-print .desktop-nav,
  .site-header.qr-scroll-header .desktop-nav{
    display:flex!important;
  }
}

/* Setas do Cartão de Aniversário seguem a paleta selecionada. */
.phone-aniversario .birthday-photo-nav,
.published-aniversario .birthday-photo-nav,
.published-birthday .birthday-photo-nav,
.birthday-screen .birthday-photo-nav{
  background:linear-gradient(180deg,color-mix(in srgb, #ffffff 88%, var(--birthday-soft,#fff1f2) 12%),color-mix(in srgb, #ffffff 76%, var(--birthday-soft,#fff1f2) 24%))!important;
  color:var(--birthday-accent,#c51618)!important;
  border:1px solid color-mix(in srgb, var(--birthday-accent,#c51618) 22%, #ffffff 78%)!important;
  box-shadow:0 10px 22px rgba(0,0,0,.10),0 0 0 1px color-mix(in srgb, var(--birthday-accent,#c51618) 12%, transparent)!important;
}
.phone-aniversario .birthday-photo-nav:hover,
.published-aniversario .birthday-photo-nav:hover,
.published-birthday .birthday-photo-nav:hover,
.birthday-screen .birthday-photo-nav:hover{
  background:linear-gradient(180deg,color-mix(in srgb, #ffffff 82%, var(--birthday-soft,#fff1f2) 18%),color-mix(in srgb, #ffffff 66%, var(--birthday-soft,#fff1f2) 34%))!important;
  color:var(--birthday-accent,#c51618)!important;
  border-color:color-mix(in srgb, var(--birthday-accent,#c51618) 34%, #ffffff 66%)!important;
  box-shadow:0 12px 24px rgba(0,0,0,.14),0 0 0 3px color-mix(in srgb, var(--birthday-accent,#c51618) 10%, transparent)!important;
}



/* ===== AJUSTE FINAL FORTE: alinhamento idêntico dos cards, especialmente Delux ===== */
#produtos .plans-grid.enhanced-plans-grid{
  align-items:stretch!important;
}
#produtos .plans-grid.enhanced-plans-grid .plan-card{
  display:flex!important;
  flex-direction:column!important;
  align-items:flex-start!important;
  justify-content:flex-start!important;
  min-height:100%!important;
}
#produtos .plans-grid.enhanced-plans-grid .plan-card h3{
  width:100%!important;
  max-width:calc(100% - 108px)!important;
  min-height:60px!important;
  margin:0 0 8px!important;
  display:flex!important;
  align-items:flex-start!important;
  line-height:1.04!important;
}
#produtos .plans-grid.enhanced-plans-grid .plan-card .old-price{
  min-height:28px!important;
  margin:0!important;
}
#produtos .plans-grid.enhanced-plans-grid .plan-card .price{
  min-height:82px!important;
  margin:8px 0 0!important;
  display:flex!important;
  flex-direction:column!important;
  justify-content:flex-start!important;
}
#produtos .plans-grid.enhanced-plans-grid .plan-card .badge,
#produtos .plans-grid.enhanced-plans-grid .plan-card .delux-align-spacer{
  min-height:42px!important;
  margin:14px 0 26px!important;
  display:inline-flex!important;
  align-items:center!important;
  justify-content:center!important;
  box-sizing:border-box!important;
}
#produtos .plans-grid.enhanced-plans-grid .plan-card.plan-delux .delux-align-spacer{
  width:122px!important;
  border:1px solid transparent!important;
  border-radius:999px!important;
}
#produtos .plans-grid.enhanced-plans-grid .plan-card .feature-list{
  width:100%!important;
  margin:0 0 26px!important;
}
#produtos .plans-grid.enhanced-plans-grid .plan-card .btn.full{
  width:100%!important;
  margin-top:auto!important;
}
#produtos .plans-grid.enhanced-plans-grid .plan-card .plan-icon{
  right:34px!important;
  top:24px!important;
}
@media (max-width: 760px){
  #produtos .plans-grid.enhanced-plans-grid .plan-card h3{
    min-height:auto!important;
    max-width:calc(100% - 86px)!important;
  }
  #produtos .plans-grid.enhanced-plans-grid .plan-card .price{
    min-height:auto!important;
  }
}



/* ===== Poster de Filme: ajustes finais solicitados ===== */
/* Ajusta posição do botão Próximo na primeira etapa do Poster. */
.creator-pro-body.direct-plan-flow[data-plan="filme"].poster-first-step-active .pro-nav-actions{
  max-width:860px!important;
  display:flex!important;
  justify-content:flex-end!important;
  align-items:center!important;
}

.creator-pro-body.direct-plan-flow[data-plan="filme"].poster-first-step-active #prevStep{
  display:none!important;
}

.creator-pro-body.direct-plan-flow[data-plan="filme"].poster-first-step-active #nextStep{
  min-width:142px!important;
  margin-left:auto!important;
}

/* Remove logo/texto MimoQR do fundo/intro do Poster. */
.movie-netflix-intro,
.movie-fullscreen-brand,
.movie-intro-logo{
  display:none!important;
  opacity:0!important;
  visibility:hidden!important;
}

/* Fullscreen do Poster abre direto nas cenas, sem tela preta de intro. */
.movie-fullscreen-active .movie-fullscreen-player{
  display:block!important;
  background:#000!important;
}

.movie-fullscreen-player .movie-fullscreen-scene{
  background-size:contain!important;
  background-position:center center!important;
  background-repeat:no-repeat!important;
  background-color:#000!important;
}

.movie-fullscreen-gradient{
  background:
    linear-gradient(180deg,rgba(0,0,0,.18),rgba(0,0,0,.02) 48%,rgba(0,0,0,.42))!important;
}

/* Agora em exibição é clicável e usa exatamente as cenas selecionadas. */
.movie-after-intro,
.movie-scenes-show,
.movie-big-scene{
  cursor:pointer!important;
}

.movie-after-intro h3::after{content:none!important;display:none!important;}
/* Garante que as fotos de "Agora em exibição" apareçam bem. */
.movie-scenes-show{
  display:block!important;
  min-height:295px!important;
  background:#111!important;
}

.movie-big-scene{
  background-size:cover!important;
  background-position:center center!important;
  background-repeat:no-repeat!important;
}



/* ===== Correção final: Delux com Pagamento único + cenas do Poster visíveis ===== */
/* Delux volta a ter o badge Pagamento único, alinhado igual aos outros cards. */
#produtos .plans-grid.enhanced-plans-grid .plan-card.plan-delux .badge{
  display:inline-flex!important;
  visibility:visible!important;
  opacity:1!important;
  pointer-events:none!important;
  min-height:42px!important;
  margin:14px 0 26px!important;
  align-items:center!important;
  justify-content:center!important;
  box-sizing:border-box!important;
}

#produtos .plans-grid.enhanced-plans-grid .plan-card.plan-delux .delux-align-spacer{
  display:none!important;
}

/* Cenas do Poster: usar imagem real, não placeholder escuro. */
.movie-scenes-row{
  display:flex!important;
  gap:10px!important;
  overflow-x:auto!important;
  padding:3px 2px 8px!important;
}

.movie-scene-thumb{
  position:relative!important;
  flex:0 0 118px!important;
  width:118px!important;
  height:72px!important;
  border-radius:8px!important;
  overflow:hidden!important;
  background:#111!important;
  border:1px solid rgba(255,255,255,.08)!important;
  padding:0!important;
  cursor:pointer!important;
}

.movie-scene-thumb img{
  width:100%!important;
  height:100%!important;
  object-fit:cover!important;
  display:block!important;
}

.movie-scene-thumb.active{
  outline:2px solid #ef1117!important;
  outline-offset:2px!important;
}

.movie-scenes-show{
  position:relative!important;
  display:block!important;
  min-height:295px!important;
  border-radius:16px!important;
  overflow:hidden!important;
  background:#111!important;
  cursor:default!important;
}

.movie-big-scene{
  position:absolute!important;
  inset:0!important;
  display:none!important;
  background:#111!important;
  cursor:default!important;
}

.movie-big-scene.active{
  display:block!important;
}

.movie-big-scene img{
  width:100%!important;
  height:100%!important;
  object-fit:cover!important;
  display:block!important;
}

/* Correção: impede que o navegador "compense" a rolagem sozinho quando as
   cenas trocam automaticamente (scroll anchoring). Isso não afeta em nada
   o efeito de troca de cena — só evita que a página pareça se mexer sozinha. */
.movie-poster-scroll,
.movie-scenes-show,
.movie-big-scene,
.movie-scenes-row,
.movie-scene-thumb{
  overflow-anchor:none!important;
}

.movie-after-intro,
.movie-scenes-show,
.movie-big-scene{
  cursor:default!important;
}

.movie-after-intro h3::after{
  content:none!important;
  display:none!important;
}

/* Tela cheia do Poster continua abrindo somente pelo botão Assistir. */
.movie-watch-btn{
  cursor:pointer!important;
}



/* ===== Correção definitiva: Pagamento único do Delux igual aos outros cards ===== */
#produtos .plans-grid.enhanced-plans-grid .plan-card.plan-delux .badge{
  display:inline-block!important;
  visibility:visible!important;
  opacity:1!important;
  pointer-events:none!important;
  padding:9px 16px!important;
  border-radius:999px!important;
  border:1px solid rgba(157,216,222,.55)!important;
  background:transparent!important;
  color:#fff!important;
  font-size:.86rem!important;
  font-weight:950!important;
  line-height:1.1!important;
  min-height:0!important;
  margin:0 0 26px!important;
  box-shadow:none!important;
}

#produtos .plans-grid.enhanced-plans-grid .plan-card.plan-delux .delux-align-spacer{
  display:none!important;
}

#produtos .plans-grid.enhanced-plans-grid .plan-card.plan-delux .feature-list{
  margin-top:22px!important;
}



/* ===== Poster de Filme: cenas trocando automaticamente a cada 3,5s ===== */
.movie-scenes-row{
  scroll-behavior:smooth!important;
}

.movie-scene-thumb.active{
  outline:2px solid #ef1117!important;
  outline-offset:2px!important;
  filter:brightness(1.08)!important;
}

.movie-big-scene{
  transition:opacity .35s ease!important;
}

.movie-big-scene:not(.active){
  opacity:0!important;
  pointer-events:none!important;
}

.movie-big-scene.active{
  opacity:1!important;
}



/* ===== Correção final exata: Pagamento único do Delux na mesma posição dos outros cards ===== */
#produtos .plans-grid.enhanced-plans-grid .plan-card.plan-delux > .badge{
  position:static!important;
  top:auto!important;
  right:auto!important;
  left:auto!important;
  bottom:auto!important;
  transform:none!important;

  display:inline-block!important;
  visibility:visible!important;
  opacity:1!important;

  padding:9px 16px!important;
  border-radius:999px!important;
  border:1px solid rgba(157,216,222,.55)!important;
  background:transparent!important;
  color:#fff!important;
  font-size:.86rem!important;
  font-weight:950!important;
  line-height:1.1!important;
  letter-spacing:normal!important;
  text-transform:none!important;
  box-shadow:none!important;

  min-height:0!important;
  width:auto!important;
  margin:0 0 26px!important;
}

#produtos .plans-grid.enhanced-plans-grid .plan-card.plan-delux > .feature-list{
  margin-top:22px!important;
}



/* ===== Correção final: Poster em tela cheia dentro da pré-visualização ===== */
.movie-cinematic-screen,
.movie-poster-screen{
  position:relative!important;
}

.movie-fullscreen-active .movie-poster-scroll{
  overflow:hidden!important;
}

.movie-fullscreen-player{
  position:absolute!important;
  inset:0!important;
  z-index:9999!important;
  display:none!important;
  opacity:0!important;
  visibility:hidden!important;
  background:#000!important;
  overflow:hidden!important;
  border-radius:inherit!important;
}

.movie-fullscreen-active .movie-fullscreen-player{
  display:block!important;
  opacity:1!important;
  visibility:visible!important;
  pointer-events:auto!important;
}

.movie-fullscreen-scene{
  position:absolute!important;
  inset:0!important;
  z-index:1!important;
  display:flex!important;
  align-items:center!important;
  justify-content:center!important;
  background:#000 center/contain no-repeat!important;
}

.movie-fullscreen-img{
  width:100%!important;
  height:100%!important;
  object-fit:contain!important;
  display:block!important;
  opacity:1!important;
  visibility:visible!important;
  position:relative!important;
  z-index:2!important;
}

.movie-fullscreen-gradient{
  position:absolute!important;
  inset:0!important;
  z-index:3!important;
  pointer-events:none!important;
}

.movie-fullscreen-close{
  position:absolute!important;
  top:14px!important;
  right:14px!important;
  z-index:5!important;
}

/* a tela cheia do Poster agora não fecha sozinha por pause/bloqueio de música */
.movie-fullscreen-active .movie-fullscreen-player[aria-hidden="false"]{
  display:block!important;
}



/* ===== Poster de Filme: scrollbar da pré-visualização preservada ===== */
.phone-filme .movie-poster-scroll,
.movie-cinematic-screen .movie-poster-scroll{
  scroll-behavior:auto!important;
  overscroll-behavior:contain!important;
}



/* ===== Correção definitiva: todos os badges "Pagamento único" iguais nos cards ===== */
#produtos .plans-grid.enhanced-plans-grid .plan-card > .badge,
#produtos .plans-grid.enhanced-plans-grid .plan-card.plan-delux > .badge{
  position:static!important;
  top:auto!important;
  right:auto!important;
  bottom:auto!important;
  left:auto!important;
  transform:none!important;

  display:inline-flex!important;
  align-items:center!important;
  justify-content:center!important;

  width:auto!important;
  min-width:0!important;
  max-width:none!important;
  min-height:0!important;
  height:auto!important;

  margin:0 0 26px!important;
  padding:9px 16px!important;

  border-radius:7px!important;
  border:1px solid rgba(255,255,255,.82)!important;
  background:transparent!important;
  box-shadow:none!important;

  color:#fff!important;
  font-size:.72rem!important;
  line-height:1.1!important;
  font-weight:950!important;
  letter-spacing:0!important;
  text-transform:none!important;
  white-space:nowrap!important;
  opacity:1!important;
  visibility:visible!important;
  pointer-events:none!important;
}

/* Remove qualquer espaçador antigo do Delux e mantém a lista na mesma distância dos outros cards. */
#produtos .plans-grid.enhanced-plans-grid .plan-card.plan-delux > .delux-align-spacer{
  display:none!important;
}

#produtos .plans-grid.enhanced-plans-grid .plan-card > .feature-list,
#produtos .plans-grid.enhanced-plans-grid .plan-card.plan-delux > .feature-list{
  margin-top:22px!important;
}



/* ===== Aviso sem reembolso ===== */
.no-refund-box{
  margin-top:14px!important;
  padding:14px 16px!important;
  border-radius:14px!important;
  border:1px solid rgba(255,255,255,.16)!important;
  background:rgba(239,17,23,.10)!important;
  color:#fff!important;
  font-size:.92rem!important;
  line-height:1.45!important;
  font-weight:850!important;
}

.refund-note{
  color:#fff!important;
  max-width:850px!important;
  line-height:1.45!important;
}


/* Exemplo home - poster de filme */
.example-movie{
  background:linear-gradient(180deg,#101115 0%,#0b0c11 100%);
  color:#f4f4f4;
  padding:26px 18px 76px;
  transform:translateX(270px) rotateY(-18deg) rotateZ(6deg) scale(.9);
  filter:brightness(.72);
  animation:exampleMovie 15s linear infinite;
}
.example-movie .showcase-poster-img{
  width:100%;
  height:222px;
  object-fit:cover;
  border-radius:14px;
  opacity:.95;
  margin-bottom:16px;
}
.example-movie .showcase-movie-body strong{font-size:2rem}
.example-movie .showcase-movie-body em{font-size:.9rem}
.example-movie .showcase-movie-body p{font-size:.88rem;line-height:1.5}
.example-movie .scene-strip span{height:66px}
@keyframes exampleMovie{
  0%,30%{transform:translateX(270px) rotateY(-18deg) rotateZ(6deg) scale(.9);filter:brightness(.72);z-index:1}
  35%,63%{transform:translateX(-270px) rotateY(18deg) rotateZ(-6deg) scale(.9);filter:brightness(.72);z-index:1}
  68%,96%{transform:translateX(0) rotateY(0) rotateZ(0) scale(1.04);filter:brightness(1);z-index:4}
}
@media (max-width:950px){
  .example-movie{transform:translateX(94px) rotateY(-14deg) rotateZ(5deg) scale(.78)}
  @keyframes exampleMovie{
    0%,30%{transform:translateX(94px) rotateY(-14deg) rotateZ(5deg) scale(.78);filter:brightness(.74);z-index:1}
    35%,63%{transform:translateX(-94px) rotateY(14deg) rotateZ(-5deg) scale(.78);filter:brightness(.74);z-index:1}
    68%,96%{transform:translateX(0) rotateY(0) rotateZ(0) scale(.98);filter:brightness(1);z-index:4}
  }
}
@media (max-width:720px){
  .example-movie .showcase-poster-img{height:188px}
  .example-movie .showcase-movie-body strong{font-size:1.35rem}
  .example-movie .showcase-movie-body em{font-size:.64rem}
  .example-movie .showcase-movie-body p{font-size:.67rem;line-height:1.35;margin-bottom:10px}
}


/* previews reais da home */
.live-hero-stack{
  position:relative;
  width:min(100%, 760px);
  height:610px;
  margin-inline:auto;
}
.live-hero-card,
.live-example-card{
  position:absolute;
  width:290px;
  transition:transform .45s ease, filter .35s ease, box-shadow .35s ease, opacity .35s ease;
}
.live-hero-card{height:560px;}
.live-device-frame,
.live-example-frame{
  position:relative;
  height:100%;
  border-radius:38px;
  padding:12px;
  background:linear-gradient(180deg,#111318 0%,#030406 100%);
  border:1px solid rgba(255,255,255,.08);
  box-shadow:0 28px 70px rgba(0,0,0,.38);
  overflow:hidden;
}
.live-device-screen,
.live-example-screen{
  position:relative;
  width:100%;
  height:100%;
  border-radius:30px;
  overflow:hidden;
  background:#000;
}
.live-device-screen iframe,
.live-example-screen iframe{
  width:100%;
  height:100%;
  border:0;
  display:block;
  background:#000;
}
.live-device-notch,
.live-example-notch{
  position:absolute;
  left:50%;
  top:10px;
  transform:translateX(-50%);
  width:118px;
  height:24px;
  border-radius:0 0 16px 16px;
  background:#050608;
  z-index:3;
}
.live-hero-card.left{left:0; top:48px; transform:rotate(-9deg) scale(.92); filter:brightness(.84); z-index:1;}
.live-hero-card.center{left:50%; top:0; transform:translateX(-50%) scale(1); z-index:3;}
.live-hero-card.right{right:0; top:52px; transform:rotate(9deg) scale(.92); filter:brightness(.84); z-index:1;}
.live-hero-label{
  position:absolute;
  left:50%;
  bottom:22px;
  transform:translateX(-50%);
  padding:8px 14px;
  border-radius:999px;
  background:rgba(0,0,0,.62);
  backdrop-filter:blur(8px);
  border:1px solid rgba(255,255,255,.12);
  color:#fff;
  font-size:.82rem;
  font-weight:700;
  white-space:nowrap;
  z-index:4;
}
.live-hero-card iframe{pointer-events:none;}

.interactive-example-tabs{
  display:flex;
  justify-content:center;
  flex-wrap:wrap;
  gap:12px;
  margin:12px auto 22px;
}
.interactive-example-tabs button{
  border:1px solid rgba(255,255,255,.18);
  background:rgba(255,255,255,.04);
  color:#fff;
  border-radius:999px;
  padding:12px 18px;
  font-weight:800;
  cursor:pointer;
  transition:all .25s ease;
}
.interactive-example-tabs button:hover,
.interactive-example-tabs button.active{
  background:linear-gradient(90deg,#ef1117,#ff4c64);
  border-color:transparent;
  box-shadow:0 12px 30px rgba(239,17,23,.28);
}
.live-examples-stage{
  position:relative;
  max-width:1100px;
  min-height:780px;
  margin:0 auto;
}
.live-example-card{height:700px; cursor:pointer;}
.live-example-card[data-state="left"]{left:0; top:56px; transform:rotate(-8deg) scale(.92); filter:brightness(.78); z-index:1;}
.live-example-card[data-state="center"]{left:50%; top:0; transform:translateX(-50%) scale(1); filter:brightness(1); z-index:3;}
.live-example-card[data-state="right"]{right:0; top:56px; transform:rotate(8deg) scale(.92); filter:brightness(.78); z-index:1;}
.live-example-card.is-active .live-example-frame{box-shadow:0 32px 90px rgba(0,0,0,.52), 0 0 0 1px rgba(255,255,255,.08);}
.live-example-card .live-example-screen iframe{pointer-events:none;}
.live-example-card.is-active .live-example-screen iframe{pointer-events:auto;}
.live-example-meta{
  position:absolute;
  left:50%;
  top:18px;
  transform:translateX(-50%);
  z-index:4;
  width:calc(100% - 72px);
  display:flex;
  align-items:center;
  justify-content:space-between;
  gap:12px;
  pointer-events:none;
}
.live-example-chip{
  background:rgba(0,0,0,.62);
  border:1px solid rgba(255,255,255,.12);
  border-radius:999px;
  color:#fff;
  padding:8px 14px;
  font-size:.8rem;
  font-weight:800;
  white-space:nowrap;
}
.live-example-hint{
  color:#fff;
  font-size:.72rem;
  font-weight:700;
  opacity:.82;
  text-align:right;
  line-height:1.2;
  text-shadow:0 2px 12px rgba(0,0,0,.7);
}
.example-disclaimer{
  margin-top:26px;
}
body.embedded-preview{
  background:transparent;
}
body.embedded-preview .gift-pro-page{
  padding:0;
}
body.embedded-preview .gift-pro-page,
body.embedded-preview #publishedGift{
  min-height:auto;
}
body.embedded-preview .gift-cover,
body.embedded-preview .present-site-footer,
body.embedded-preview .share-final,
body.embedded-preview .hearts-layer{
  display:none !important;
}
body.embedded-preview .published-event,
body.embedded-preview .published-elegant,
body.embedded-preview .published-movie,
body.embedded-preview .published-birthday{
  margin:0;
  box-shadow:none;
}
body.embedded-preview .published-movie .movie-fullscreen-player{
  position:fixed;
}
@media (max-width: 1100px){
  .live-examples-stage{max-width:980px; min-height:735px;}
  .live-example-card{width:310px;height:650px;}
}
@media (max-width: 980px){
  .live-hero-stack{height:auto; display:grid; gap:18px;}
  .live-example-card .live-example-screen iframe{pointer-events:auto;}
  .live-hero-card{position:relative; width:min(100%, 320px); height:520px; margin:0 auto; left:auto !important; right:auto !important; top:auto !important; transform:none !important; filter:none !important;}
  .live-examples-stage{display:grid; grid-template-columns:1fr; gap:22px; min-height:auto;}
  .live-example-card{position:relative; width:min(100%, 340px); height:650px; margin:0 auto; left:auto !important; right:auto !important; top:auto !important; transform:none !important; filter:none !important;}
  .live-example-meta{width:calc(100% - 62px);}
}
@media (max-width: 620px){
  .live-hero-card{height:500px; width:min(100%, 300px);}
  .live-example-card{height:610px; width:min(100%, 320px);}
  .live-example-chip{font-size:.74rem; padding:7px 12px;}
  .live-example-hint{font-size:.66rem;}
}



/* ===== Delux: música e cantor com animação de loop igual aos outros players ===== */
.phone-delux .delux-music-card .music-card-copy.player-track-marquee,
.published-delux .delux-music-card .music-card-copy.player-track-marquee,
.elegant-screen .delux-music-card .music-card-copy.player-track-marquee,
.published-elegant .delux-music-card .music-card-copy.player-track-marquee{
  min-width:0!important;
  width:100%!important;
  overflow:hidden!important;
  display:flex!important;
  flex-direction:column!important;
  justify-content:center!important;
  align-items:flex-start!important;
  gap:3px!important;
}

.phone-delux .delux-music-card .player-marquee-line,
.published-delux .delux-music-card .player-marquee-line,
.elegant-screen .delux-music-card .player-marquee-line,
.published-elegant .delux-music-card .player-marquee-line{
  display:flex!important;
  width:max-content!important;
  min-width:100%!important;
  gap:30px!important;
  white-space:nowrap!important;
  animation:mimoqrPlayerMarquee 10s linear infinite!important;
  will-change:transform!important;
}

.phone-delux .delux-music-card .player-marquee-line span,
.published-delux .delux-music-card .player-marquee-line span,
.elegant-screen .delux-music-card .player-marquee-line span,
.published-elegant .delux-music-card .player-marquee-line span{
  display:inline-block!important;
  white-space:nowrap!important;
}

.phone-delux .delux-music-card .player-track-marquee strong,
.published-delux .delux-music-card .player-track-marquee strong,
.elegant-screen .delux-music-card .player-track-marquee strong,
.published-elegant .delux-music-card .player-track-marquee strong{
  color:#2b1d10!important;
  font-size:.86rem!important;
  line-height:1.08!important;
  font-weight:950!important;
  overflow:visible!important;
  max-width:none!important;
  text-align:left!important;
}

.phone-delux .delux-music-card .player-track-marquee small,
.published-delux .delux-music-card .player-track-marquee small,
.elegant-screen .delux-music-card .player-track-marquee small,
.published-elegant .delux-music-card .player-track-marquee small{
  color:#8a6a3e!important;
  font-size:.68rem!important;
  line-height:1.08!important;
  font-weight:850!important;
  opacity:1!important;
  overflow:visible!important;
  max-width:none!important;
  text-align:left!important;
}



/* ===== Correção Delux: cantor não aparece duplicado no loop ===== */
/* Mantém o efeito de loop, mas impede que as duas cópias do texto fiquem visíveis juntas. */
.phone-delux .delux-music-card .player-marquee-line span,
.published-delux .delux-music-card .player-marquee-line span,
.elegant-screen .delux-music-card .player-marquee-line span,
.published-elegant .delux-music-card .player-marquee-line span{
  min-width:100%!important;
  max-width:100%!important;
  overflow:hidden!important;
  text-overflow:clip!important;
}

.phone-delux .delux-music-card .player-marquee-line,
.published-delux .delux-music-card .player-marquee-line,
.elegant-screen .delux-music-card .player-marquee-line,
.published-elegant .delux-music-card .player-marquee-line{
  gap:70px!important;
}



/* ===== Exemplos de Páginas: prints reais por categoria ===== */
.static-example-tabs{
  margin-bottom:28px!important;
}

.static-example-stage{
  position:relative!important;
  width:min(100%, 760px)!important;
  min-height:760px!important;
  margin:0 auto!important;
  display:flex!important;
  align-items:center!important;
  justify-content:center!important;
  padding:8px 74px 26px!important;
}

.static-example-phone{
  position:relative!important;
  width:min(100%, 430px)!important;
  margin:0!important;
  display:flex!important;
  flex-direction:column!important;
  align-items:center!important;
  gap:14px!important;
  transform:translateZ(0)!important;
}

.static-example-img{
  width:100%!important;
  height:auto!important;
  display:block!important;
  border-radius:34px!important;
  filter:drop-shadow(0 34px 68px rgba(0,0,0,.45))!important;
  background:#050505!important;
  user-select:none!important;
  -webkit-user-drag:none!important;
}

.static-example-phone figcaption{
  display:inline-flex!important;
  align-items:center!important;
  justify-content:center!important;
  padding:10px 18px!important;
  border-radius:999px!important;
  border:1px solid rgba(255,255,255,.14)!important;
  background:rgba(255,255,255,.06)!important;
  color:#fff!important;
  font-weight:950!important;
  font-size:.9rem!important;
  box-shadow:0 18px 36px rgba(0,0,0,.26)!important;
}

.static-example-arrow{
  position:absolute!important;
  top:50%!important;
  transform:translateY(-50%)!important;
  width:52px!important;
  height:52px!important;
  border-radius:999px!important;
  border:1px solid rgba(255,255,255,.18)!important;
  background:linear-gradient(135deg,#ef1117,#ff4660)!important;
  color:#fff!important;
  font-size:2rem!important;
  font-weight:950!important;
  line-height:1!important;
  cursor:pointer!important;
  box-shadow:0 18px 42px rgba(239,17,23,.28)!important;
  z-index:3!important;
}

.static-example-arrow.left{left:8px!important;}
.static-example-arrow.right{right:8px!important;}

.static-example-arrow:hover{
  transform:translateY(-50%) scale(1.06)!important;
}

.static-example-tabs button{
  cursor:pointer!important;
}

@media (max-width:760px){
  .static-example-stage{
    width:100%!important;
    min-height:auto!important;
    padding:4px 44px 18px!important;
  }
  .static-example-phone{
    width:min(100%, 340px)!important;
  }
  .static-example-img{
    border-radius:28px!important;
  }
  .static-example-arrow{
    width:40px!important;
    height:40px!important;
    font-size:1.55rem!important;
  }
  .static-example-arrow.left{left:0!important;}
  .static-example-arrow.right{right:0!important;}
}

@media (max-width:420px){
  .static-example-stage{
    padding-left:34px!important;
    padding-right:34px!important;
  }
  .static-example-phone{
    width:min(100%, 306px)!important;
  }
}







/* ===== Hero da home: sem retângulo em volta + rotação automática ===== */
.hero-print-stack{
  height:640px!important;
  isolation:isolate!important;
  overflow:visible!important;
  perspective:1200px!important;
}

.hero-print-card{
  position:absolute!important;
  width:300px!important;
  height:560px!important;
  background:transparent!important;
  border:0!important;
  box-shadow:none!important;
  overflow:visible!important;
  transition:
    left .75s ease,
    right .75s ease,
    top .75s ease,
    transform .75s ease,
    filter .75s ease,
    opacity .75s ease,
    z-index .75s ease!important;
  will-change:transform, filter, opacity!important;
  isolation:isolate!important;
}

.hero-print-card .hero-print-img{
  width:100%!important;
  height:100%!important;
  display:block!important;
  object-fit:contain!important;
  border-radius:0!important;
  background:transparent!important;
  box-shadow:none!important;
  filter:drop-shadow(0 24px 44px rgba(0,0,0,.36))!important;
  user-select:none!important;
  -webkit-user-drag:none!important;
  opacity:1!important;
}

.hero-print-card .live-hero-label{
  bottom:24px!important;
  z-index:6!important;
  background:rgba(0,0,0,.78)!important;
  border:1px solid rgba(255,255,255,.16)!important;
  box-shadow:0 16px 36px rgba(0,0,0,.34)!important;
}

.hero-print-card[data-hero-position="left"]{
  left:8px!important;
  right:auto!important;
  top:86px!important;
  transform:rotate(-10deg) scale(.80)!important;
  filter:none!important;
  opacity:1!important;
  z-index:1!important;
}

.hero-print-card[data-hero-position="center"]{
  left:50%!important;
  right:auto!important;
  top:10px!important;
  transform:translateX(-50%) rotate(0deg) scale(.96)!important;
  filter:none!important;
  opacity:1!important;
  z-index:3!important;
}

.hero-print-card[data-hero-position="right"]{
  left:auto!important;
  right:8px!important;
  top:86px!important;
  transform:rotate(10deg) scale(.80)!important;
  filter:none!important;
  opacity:1!important;
  z-index:1!important;
}

@media (max-width:980px){
  .hero-print-stack{
    height:auto!important;
    display:grid!important;
    gap:18px!important;
  }
  .hero-print-card,
  .hero-print-card[data-hero-position]{
    position:relative!important;
    width:min(100%, 330px)!important;
    height:560px!important;
    margin:0 auto!important;
    left:auto!important;
    right:auto!important;
    top:auto!important;
    transform:none!important;
    filter:none!important;
    opacity:1!important;
    z-index:auto!important;
  }
}

@media (max-width:620px){
  .hero-print-card,
  .hero-print-card[data-hero-position]{
    width:min(100%, 305px)!important;
    height:520px!important;
  }
}



/* ===== Correção definitiva hero: sem partes vazadas ===== */
.hero-print-card,
.hero-print-card[data-hero-position],
.hero-print-card .hero-print-img{
  opacity:1!important;
  filter:none!important;
  mix-blend-mode:normal!important;
}

.hero-print-card .hero-print-img{
  object-fit:contain!important;
  background:transparent!important;
}

.hero-print-card[data-hero-position="left"]{
  left:-4px!important;
  top:88px!important;
  transform:rotate(-9deg) scale(.80)!important;
  z-index:1!important;
}

.hero-print-card[data-hero-position="center"]{
  top:8px!important;
  transform:translateX(-50%) scale(.94)!important;
  z-index:4!important;
}

.hero-print-card[data-hero-position="right"]{
  right:-4px!important;
  top:88px!important;
  transform:rotate(9deg) scale(.80)!important;
  z-index:1!important;
}



/* ===== Checkout/Pagamento igual ao print ===== */
.checkout-pro-body{
  background:#110000!important;
  color:#fff!important;
  min-height:100vh!important;
}

.checkout-pro-shell{
  min-height:100vh!important;
  display:block!important;
  max-width:1080px!important;
  margin:0 auto!important;
  padding:46px 18px 38px!important;
}

.checkout-pro-preview{
  display:none!important;
}

.payment-like-print{
  max-width:none!important;
  width:100%!important;
}

.payment-progress{
  display:flex!important;
  align-items:center!important;
  gap:18px!important;
  margin:0 0 20px!important;
  overflow-x:auto!important;
  padding:0 0 10px!important;
}

.payment-progress span{
  width:34px!important;
  height:34px!important;
  min-width:34px!important;
  border-radius:999px!important;
  border:3px solid #ef1117!important;
  background:transparent!important;
  position:relative!important;
  display:inline-flex!important;
  align-items:center!important;
  justify-content:center!important;
}

.payment-progress span.done::after{
  content:"✓"!important;
  color:#ef1117!important;
  font-size:1.05rem!important;
  font-weight:1000!important;
}

.payment-progress span.active::after{
  content:""!important;
  width:0!important;
  height:0!important;
}

.payment-progress i{
  height:4px!important;
  width:92px!important;
  min-width:55px!important;
  border-radius:999px!important;
  background:#e8e6e6!important;
  display:block!important;
  opacity:.9!important;
}

.payment-like-print h1{
  font-size:2.15rem!important;
  line-height:1.1!important;
  margin:0 0 16px!important;
  letter-spacing:-.03em!important;
}

.checkout-main-line{
  font-size:1.15rem!important;
  line-height:1.45!important;
  font-weight:850!important;
  margin:0!important;
}

.payment-like-print strong{
  color:#ef1117!important;
}

.checkout-addon{
  min-height:1.25em!important;
  margin:8px 0 0!important;
  color:#ffb4b8!important;
  font-weight:900!important;
}

.payment-like-print hr{
  border:0!important;
  border-top:1px solid rgba(255,255,255,.75)!important;
  margin:18px 0 20px!important;
}

.payment-like-print h3{
  font-size:1.24rem!important;
  margin:0 0 14px!important;
  font-weight:950!important;
}

.pro-payment-tabs{
  width:480px!important;
  max-width:100%!important;
  display:grid!important;
  grid-template-columns:1fr 1fr!important;
  background:#1b2735!important;
  border-radius:10px!important;
  padding:5px!important;
  gap:4px!important;
  margin:0 0 18px!important;
}

.pro-payment-tabs button{
  height:42px!important;
  border:0!important;
  border-radius:8px!important;
  color:#fff!important;
  background:transparent!important;
  font-size:.98rem!important;
  font-weight:950!important;
  cursor:pointer!important;
}

.pro-payment-tabs button.active{
  background:#e5090f!important;
  box-shadow:inset 0 0 0 1px rgba(255,255,255,.05), 0 8px 18px rgba(0,0,0,.18)!important;
}

.payment-view[hidden],
.card-payment-panel[hidden]{
  display:none!important;
}

.payment-view-pix.active{
  display:block!important;
}

.pro-pix-box{
  text-align:center!important;
  max-width:980px!important;
  margin:0 auto!important;
}

.pro-pix-box .timer{
  background:#2a2a2a!important;
  color:#fff!important;
  border-radius:7px 7px 0 0!important;
  padding:9px 13px!important;
  display:inline-block!important;
  font-weight:900!important;
  margin-top:14px!important;
}

.realistic-qr{
  width:206px!important;
  height:206px!important;
  margin:0 auto 18px!important;
  background-color:#fff!important;
  border:12px solid #fff!important;
  box-shadow:none!important;
}

.pro-pix-box p{
  color:#fff!important;
  font-size:1.02rem!important;
  line-height:1.45!important;
  max-width:900px!important;
  margin:16px auto!important;
  font-weight:700!important;
}

.pro-pix-box textarea{
  display:block!important;
  width:100%!important;
  max-width:980px!important;
  height:72px!important;
  resize:none!important;
  border-radius:8px!important;
  border:1px solid rgba(255,255,255,.22)!important;
  background:#2a2a2a!important;
  color:#fff!important;
  padding:14px!important;
  font-size:1rem!important;
  font-weight:850!important;
  line-height:1.35!important;
  margin:0 auto 22px!important;
}

.copy-pix-button{
  min-width:270px!important;
  height:62px!important;
  border-radius:12px!important;
}

.payment-view-card.active{
  display:block!important;
}

.card-wallet-options{
  display:grid!important;
  grid-template-columns:1fr 1fr!important;
  gap:14px!important;
  margin:0 0 14px!important;
}

.wallet-option{
  min-height:78px!important;
  border-radius:8px!important;
  border:1px solid rgba(255,255,255,.18)!important;
  background:#282828!important;
  color:#fff!important;
  padding:16px 18px!important;
  text-align:left!important;
  cursor:pointer!important;
  font-weight:950!important;
  display:flex!important;
  flex-direction:column!important;
  align-items:flex-start!important;
  justify-content:center!important;
  gap:6px!important;
}

.wallet-option.active{
  background:#fa237c!important;
  border-color:#fa237c!important;
  box-shadow:0 10px 24px rgba(250,35,124,.18)!important;
}

.wallet-icon{
  color:#d7d7d7!important;
  font-size:1.15rem!important;
  line-height:1!important;
}

.gpay-badge{
  display:inline-flex!important;
  align-items:center!important;
  justify-content:center!important;
  border-radius:5px!important;
  padding:2px 6px!important;
  background:#fff!important;
  color:#444!important;
  font-size:.66rem!important;
  line-height:1!important;
  font-weight:1000!important;
}

.card-fields-grid{
  display:grid!important;
  grid-template-columns:2fr 1fr 1fr!important;
  gap:16px!important;
  margin-top:8px!important;
}

.card-field{
  display:block!important;
  color:#fff!important;
  font-weight:850!important;
  font-size:1rem!important;
}

.card-field span{
  display:block!important;
  margin:0 0 8px!important;
  color:#fff!important;
}

.card-input-wrap{
  position:relative!important;
}

.card-field input{
  width:100%!important;
  height:58px!important;
  border-radius:8px!important;
  border:1px solid rgba(255,255,255,.24)!important;
  background:#292929!important;
  color:#fff!important;
  padding:0 16px!important;
  font-size:1.05rem!important;
  outline:none!important;
}

.card-field input::placeholder{
  color:#9c9c9c!important;
}

.card-brands,
.cvc-icon{
  position:absolute!important;
  right:12px!important;
  top:50%!important;
  transform:translateY(-50%)!important;
  color:#cfcfcf!important;
  font-style:normal!important;
  font-weight:950!important;
  pointer-events:none!important;
  font-size:.78rem!important;
}

.card-brands{
  color:#fff!important;
  background:linear-gradient(90deg,#0057b8 0 50%,#ff9c00 50%)!important;
  padding:3px 7px!important;
  border-radius:4px!important;
}

.secure-next-step{
  min-height:86px!important;
  border-radius:8px!important;
  border:1px solid rgba(255,255,255,.18)!important;
  background:#1f1f1f!important;
  display:flex!important;
  align-items:center!important;
  gap:18px!important;
  color:#bfbfbf!important;
  padding:18px 24px!important;
  margin-top:16px!important;
}

.secure-next-step span{
  font-size:2.1rem!important;
  opacity:.75!important;
}

.secure-next-step p{
  margin:0!important;
  color:#bfbfbf!important;
  font-weight:750!important;
}

.stripe-safe{
  margin:20px 0 0!important;
  color:#fff!important;
  font-weight:950!important;
  font-size:.96rem!important;
}

.payment-actions{
  display:flex!important;
  justify-content:space-between!important;
  align-items:center!important;
  gap:20px!important;
  margin-top:28px!important;
}

.payment-actions .btn{
  min-width:160px!important;
  height:62px!important;
  border-radius:10px!important;
  font-size:1rem!important;
}

.payment-actions #simulatePayment{
  margin-left:auto!important;
  min-width:190px!important;
}

@media(max-width:760px){
  .checkout-pro-shell{
    padding:32px 12px 30px!important;
  }
  .payment-progress{
    gap:10px!important;
  }
  .payment-progress i{
    width:48px!important;
    min-width:34px!important;
  }
  .payment-progress span{
    width:30px!important;
    height:30px!important;
    min-width:30px!important;
  }
  .card-wallet-options,
  .card-fields-grid{
    grid-template-columns:1fr!important;
  }
  .payment-actions{
    flex-direction:row!important;
  }
  .payment-actions .btn{
    min-width:0!important;
    flex:1!important;
  }
}



/* ===== Pagamento: ícones bonitos + cartão funcional + liberação só após confirmação ===== */
.pro-payment-tabs button{
  display:flex!important;
  align-items:center!important;
  justify-content:center!important;
  gap:9px!important;
}

.pay-icon{
  width:19px!important;
  height:19px!important;
  flex:none!important;
  position:relative!important;
  display:inline-block!important;
}

.pix-icon{
  transform:rotate(45deg)!important;
}

.pix-icon::before,
.pix-icon::after{
  content:""!important;
  position:absolute!important;
  inset:2px!important;
  border-radius:5px!important;
  background:linear-gradient(135deg,#fff,#e9ffff)!important;
}

.pix-icon::after{
  inset:6px!important;
  background:#1b2735!important;
}

.pro-payment-tabs button.active .pix-icon::after{
  background:#e5090f!important;
}

.card-icon{
  width:22px!important;
  height:16px!important;
  border:2px solid currentColor!important;
  border-radius:4px!important;
}

.card-icon::before{
  content:""!important;
  position:absolute!important;
  left:2px!important;
  right:2px!important;
  top:4px!important;
  height:2px!important;
  background:currentColor!important;
  border-radius:999px!important;
}

.card-icon.white{
  color:#fff!important;
}

.card-mini-icon{
  width:24px!important;
  height:18px!important;
  border:2px solid #d7d7d7!important;
  border-radius:5px!important;
  position:relative!important;
  display:inline-block!important;
}

.card-mini-icon::before{
  content:""!important;
  position:absolute!important;
  left:3px!important;
  right:3px!important;
  top:5px!important;
  height:2px!important;
  background:#d7d7d7!important;
}

.wallet-option small{
  color:rgba(255,255,255,.78)!important;
  font-size:.82rem!important;
  font-weight:850!important;
}

.wallet-option.active small{
  color:#fff!important;
}

.card-submit-button{
  margin-top:16px!important;
  min-width:240px!important;
  height:56px!important;
  border-radius:10px!important;
}

.card-submit-button:disabled{
  opacity:.72!important;
  cursor:wait!important;
  transform:none!important;
}

.card-form-error{
  min-height:20px!important;
  margin:12px 0 0!important;
  color:#ff8fa3!important;
  font-weight:900!important;
}

.payment-pending-box,
.payment-confirmed-box{
  border-radius:10px!important;
  border:1px solid rgba(255,255,255,.16)!important;
  background:#1f1f1f!important;
  padding:18px 22px!important;
  margin-top:22px!important;
}

.payment-pending-box strong,
.payment-confirmed-box strong{
  display:block!important;
  color:#fff!important;
  font-size:1.05rem!important;
  margin-bottom:6px!important;
}

.payment-pending-box p,
.payment-confirmed-box p{
  margin:0!important;
  color:#d3d3d3!important;
  font-weight:800!important;
  line-height:1.45!important;
}

.payment-confirmed-box{
  border-color:rgba(43,220,132,.42)!important;
  background:linear-gradient(180deg,rgba(43,220,132,.12),rgba(255,255,255,.05))!important;
}

.payment-confirmed-box strong{
  color:#2bdc84!important;
}

.payment-confirmed-box.hidden{
  display:none!important;
}

.released-page-row{
  display:grid!important;
  grid-template-columns:160px 1fr!important;
  gap:18px!important;
  align-items:center!important;
  margin-top:18px!important;
}

.released-page-qr{
  width:150px!important;
  height:150px!important;
  background-color:#fff!important;
  border:10px solid #fff!important;
  border-radius:8px!important;
  background-image:
    linear-gradient(90deg,#000 8px,transparent 8px),
    linear-gradient(#000 8px,transparent 8px),
    linear-gradient(90deg,transparent 14px,#000 14px 24px,transparent 24px),
    linear-gradient(transparent 14px,#000 14px 24px,transparent 24px)!important;
  background-size:28px 28px,28px 28px,41px 41px,41px 41px!important;
  box-shadow:0 0 0 1px rgba(0,0,0,.4)!important;
  position:relative!important;
}

.released-page-qr span{
  position:absolute!important;
  width:32px!important;
  height:32px!important;
  border:7px solid #000!important;
  background:#fff!important;
}

.released-page-qr span:nth-child(1){left:7px!important;top:7px!important;}
.released-page-qr span:nth-child(2){right:7px!important;top:7px!important;}
.released-page-qr span:nth-child(3){left:7px!important;bottom:7px!important;}

.released-page-info label{
  display:block!important;
  color:#fff!important;
  font-weight:900!important;
  margin-bottom:8px!important;
}

.released-page-info input{
  width:100%!important;
  height:48px!important;
  border-radius:8px!important;
  border:1px solid rgba(255,255,255,.18)!important;
  background:#2a2a2a!important;
  color:#fff!important;
  padding:0 12px!important;
  font-weight:800!important;
}

.released-page-actions{
  display:flex!important;
  gap:12px!important;
  flex-wrap:wrap!important;
  margin-top:12px!important;
}

.released-page-actions .btn{
  min-height:48px!important;
  border-radius:9px!important;
}

.payment-actions{
  justify-content:flex-start!important;
}

.payment-actions #simulatePayment{
  display:none!important;
}

@media(max-width:680px){
  .released-page-row{
    grid-template-columns:1fr!important;
    justify-items:center!important;
  }
  .released-page-info{
    width:100%!important;
  }
}



/* ===== Correção Pix real + botão Cartão funcionando ===== */
.pix-real-icon{
  width:22px!important;
  height:22px!important;
  display:inline-block!important;
  flex:none!important;
  fill:#fff!important;
}

.pro-payment-tabs button{
  position:relative!important;
  z-index:5!important;
  pointer-events:auto!important;
}

.payment-view-card.active,
.payment-view-pix.active{
  display:block!important;
}

.payment-view-card:not(.active),
.payment-view-pix:not(.active){
  display:none!important;
}

.qr-demo-note{
  display:block!important;
  margin:-6px auto 14px!important;
  color:#bfbfbf!important;
  font-size:.78rem!important;
  font-weight:800!important;
  text-align:center!important;
}

.wallet-option,
.card-submit-button,
.gpay-submit-button{
  pointer-events:auto!important;
}

.card-fields-grid input{
  pointer-events:auto!important;
}



/* ===== Correção final: Cartão abre layout + Pix PNG real branco ===== */
.pix-png-icon{
  width:22px!important;
  height:22px!important;
  object-fit:contain!important;
  display:inline-block!important;
  flex:none!important;
}

.pix-real-icon,
.pix-icon{
  display:none!important;
}

.payment-view-card,
.payment-view-pix{
  width:100%!important;
}

.payment-view-card.active,
.payment-view-pix.active{
  display:block!important;
}

.payment-view-card:not(.active),
.payment-view-pix:not(.active){
  display:none!important;
}

#paymentCardTab,
#paymentPixTab,
[data-payment-method]{
  cursor:pointer!important;
  pointer-events:auto!important;
  user-select:none!important;
}

.card-payment-panel.active{
  display:block!important;
}

.card-payment-panel:not(.active){
  display:none!important;
}


/* ===== Logos reais do checkout: Visa, Mastercard e Google Pay ===== */
.gpay-badge{display:none!important;}
.gpay-logo-wrap{
  display:inline-flex!important;
  align-items:center!important;
  justify-content:center!important;
  background:#fff!important;
  border-radius:8px!important;
  padding:3px 8px!important;
  line-height:1!important;
}
.gpay-logo{
  display:block!important;
  width:auto!important;
  height:18px!important;
}
.wallet-option .gpay-logo-wrap{
  margin-bottom:2px!important;
}
.card-brands{
  right:10px!important;
  display:flex!important;
  align-items:center!important;
  gap:6px!important;
  background:transparent!important;
  padding:0!important;
  border-radius:0!important;
  color:transparent!important;
}
.card-brand-img{
  display:block!important;
  width:auto!important;
  height:18px!important;
  background:#fff!important;
  border-radius:4px!important;
  padding:2px 6px!important;
  box-shadow:0 2px 10px rgba(0,0,0,.18)!important;
}
.card-brand-img.mastercard{
  height:18px!important;
}
@media (max-width: 560px){
  .card-brand-img{height:16px!important;padding:2px 5px!important;}
  .gpay-logo{height:16px!important;}
}


/* logos escolhidas pelo usuário para Visa e Mastercard */
.card-brands{
  gap:8px!important;
}
.card-brand-img{
  background:transparent!important;
  box-shadow:none!important;
  border-radius:6px!important;
  padding:0!important;
  object-fit:contain!important;
}
.card-brand-img.visa{
  height:20px!important;
}
.card-brand-img.mastercard{
  height:20px!important;
}
@media (max-width:560px){
  .card-brand-img.visa,.card-brand-img.mastercard{height:18px!important;}
}



/* ===== Ajuste fino final: logos Visa/Mastercard/Google Pay e checkout alinhado ===== */
.payment-like-print{
  max-width:980px!important;
  margin:0 auto!important;
}

.card-wallet-options{
  align-items:stretch!important;
}

.wallet-option{
  min-height:82px!important;
  padding:14px 18px!important;
  gap:5px!important;
}

.wallet-card-head{
  width:100%!important;
  display:flex!important;
  align-items:center!important;
  justify-content:space-between!important;
  gap:12px!important;
  margin-bottom:2px!important;
}

.wallet-card-logos{
  display:inline-flex!important;
  align-items:center!important;
  gap:7px!important;
}

.wallet-card-logos img{
  display:block!important;
  height:16px!important;
  width:auto!important;
  object-fit:contain!important;
  background:transparent!important;
  border-radius:4px!important;
}

.gpay-logo-wrap{
  min-height:28px!important;
  padding:4px 9px!important;
  border-radius:7px!important;
  background:#fff!important;
  box-shadow:0 4px 14px rgba(0,0,0,.18)!important;
}

.gpay-logo{
  height:20px!important;
  width:auto!important;
  object-fit:contain!important;
}

.card-number-input{
  padding-right:142px!important;
}

.card-brands{
  right:12px!important;
  gap:8px!important;
  height:32px!important;
  max-width:132px!important;
}

.card-brand-img{
  display:block!important;
  width:auto!important;
  max-width:none!important;
  object-fit:contain!important;
  background:transparent!important;
  box-shadow:none!important;
  border-radius:0!important;
  padding:0!important;
}

.card-brand-img.visa{
  height:22px!important;
  width:auto!important;
}

.card-brand-img.mastercard{
  height:24px!important;
  width:auto!important;
}

.card-field input{
  height:58px!important;
}

.card-fields-grid{
  grid-template-columns:minmax(320px,2fr) minmax(150px,1fr) minmax(150px,1fr)!important;
}

.card-submit-button{
  display:inline-flex!important;
  align-items:center!important;
  justify-content:center!important;
  gap:10px!important;
}

.pro-payment-tabs{
  max-width:480px!important;
}

.pro-payment-tabs button{
  gap:10px!important;
}

.pix-png-icon{
  width:23px!important;
  height:23px!important;
}

@media (max-width:760px){
  .payment-like-print{
    max-width:100%!important;
  }
  .card-fields-grid{
    grid-template-columns:1fr!important;
  }
  .card-number-input{
    padding-right:136px!important;
  }
  .card-brands{
    right:10px!important;
    max-width:128px!important;
  }
  .card-brand-img.visa{
    height:20px!important;
  }
  .card-brand-img.mastercard{
    height:22px!important;
  }
}

@media (max-width:420px){
  .card-number-input{
    padding-right:122px!important;
    font-size:.95rem!important;
  }
  .card-brands{
    gap:5px!important;
    max-width:116px!important;
  }
  .card-brand-img.visa{
    height:18px!important;
  }
  .card-brand-img.mastercard{
    height:20px!important;
  }
  .wallet-card-logos img{
    height:14px!important;
  }
  .gpay-logo{
    height:18px!important;
  }
}


/* ===== Checkout final com preview lateral + liberação de link/QR após pagamento ===== */
.checkout-payment-layout{
  display:grid!important;
  grid-template-columns:minmax(0,1fr) 380px!important;
  align-items:start!important;
  gap:64px!important;
  max-width:1500px!important;
  margin:0 auto!important;
  padding:46px 32px 52px!important;
}

.checkout-pro-panel.payment-like-print{
  max-width:none!important;
  width:100%!important;
}

.checkout-payment-preview{
  display:block!important;
}

.checkout-preview-stick{
  position:sticky!important;
  top:36px!important;
  display:flex!important;
  justify-content:center!important;
}

.checkout-payment-preview .pro-phone{
  width:min(100%,360px)!important;
  margin:0 auto!important;
}

.pro-pix-box{
  max-width:760px!important;
  margin:0 0 0 0!important;
}

.payment-view-card .card-fields-grid{
  max-width:860px!important;
}

.payment-actions{
  justify-content:flex-start!important;
}

.payment-confirmed-box strong{
  font-size:1.12rem!important;
}

.payment-confirmed-box p{
  max-width:860px!important;
}

.released-page-row{
  grid-template-columns:190px 1fr!important;
  align-items:center!important;
}

.released-page-qr{
  width:180px!important;
  height:180px!important;
  display:flex!important;
  align-items:center!important;
  justify-content:center!important;
  padding:8px!important;
  background:#fff!important;
  border-radius:12px!important;
  overflow:hidden!important;
  box-shadow:0 0 0 1px rgba(0,0,0,.28)!important;
  background-image:none!important;
}

.released-page-qr img{
  display:block!important;
  width:100%!important;
  height:100%!important;
  object-fit:contain!important;
}

.released-page-qr span{
  display:none!important;
}

.released-page-info label{
  font-size:.98rem!important;
}

.released-page-info input{
  font-size:.94rem!important;
}

.card-submit-button{
  min-width:200px!important;
}

.qr-demo-note{
  display:block!important;
  color:#cfcfcf!important;
  font-size:.84rem!important;
  font-weight:700!important;
  margin:0 auto 12px!important;
}

@media (max-width: 1180px){
  .checkout-payment-layout{
    grid-template-columns:1fr!important;
    gap:28px!important;
  }
  .checkout-payment-preview{
    order:-1!important;
  }
  .checkout-preview-stick{
    position:relative!important;
    top:auto!important;
  }
}

@media (max-width: 760px){
  .checkout-payment-layout{
    padding:28px 12px 36px!important;
  }
  .checkout-payment-preview .pro-phone{
    width:min(100%,330px)!important;
    height:auto!important;
  }
  .released-page-row{
    grid-template-columns:1fr!important;
    justify-items:center!important;
  }
}


/* ===== Ajuste fino: Pix mais próximo do print + área premium pós-pagamento ===== */
.payment-like-print h3{
  margin:0 0 16px!important;
  font-size:1.02rem!important;
  font-weight:900!important;
}

.pro-payment-tabs{
  max-width:420px!important;
  margin-bottom:20px!important;
  background:#18263a!important;
  border-radius:10px!important;
  padding:0!important;
  box-shadow:inset 0 0 0 1px rgba(255,255,255,.05)!important;
}

.pro-payment-tabs button{
  min-height:46px!important;
  font-size:1rem!important;
  font-weight:900!important;
  border-radius:9px!important;
}

.pro-payment-tabs button.active{
  background:#ef0b10!important;
  box-shadow:0 10px 24px rgba(239,11,16,.22)!important;
}

.pro-pix-box{
  max-width:760px!important;
  padding-top:6px!important;
}

.pro-pix-box .timer{
  background:#343434!important;
  border-radius:8px 8px 0 0!important;
  padding:8px 14px!important;
  font-size:.98rem!important;
  letter-spacing:-.01em!important;
  box-shadow:0 6px 18px rgba(0,0,0,.18)!important;
}

.realistic-qr{
  width:200px!important;
  height:200px!important;
  border:12px solid #fff!important;
  border-radius:0!important;
  box-shadow:0 10px 30px rgba(0,0,0,.16)!important;
}

.qr-demo-note{
  max-width:420px!important;
  text-align:center!important;
}

.pro-pix-box p{
  max-width:760px!important;
  font-size:1rem!important;
}

.pro-pix-box textarea{
  max-width:740px!important;
  min-height:66px!important;
  border-radius:10px!important;
  font-size:.98rem!important;
  background:#2b2b2b!important;
  box-shadow:inset 0 0 0 1px rgba(255,255,255,.04)!important;
}

.copy-pix-button{
  min-width:210px!important;
  height:56px!important;
  border-radius:12px!important;
  padding:0 22px!important;
  font-size:1rem!important;
  font-weight:900!important;
  box-shadow:0 12px 28px rgba(229,9,15,.2)!important;
}

.payment-pending-box{
  border-radius:14px!important;
  background:linear-gradient(180deg,rgba(255,255,255,.06),rgba(255,255,255,.03))!important;
  border:1px solid rgba(255,255,255,.12)!important;
}

.payment-confirmed-box{
  position:relative!important;
  overflow:hidden!important;
  margin-top:26px!important;
  padding:24px 24px 22px!important;
  border-radius:22px!important;
  border:1px solid rgba(67, 226, 137, .3)!important;
  background:
    radial-gradient(circle at top right, rgba(43,220,132,.18), transparent 34%),
    linear-gradient(180deg, rgba(25,52,37,.96) 0%, rgba(17,25,19,.98) 100%)!important;
  box-shadow:0 22px 60px rgba(0,0,0,.28)!important;
}

.payment-confirmed-box::before{
  content:"✓ Pagamento confirmado"!important;
  display:inline-flex!important;
  align-items:center!important;
  justify-content:center!important;
  gap:8px!important;
  min-height:34px!important;
  padding:0 14px!important;
  border-radius:999px!important;
  background:rgba(43,220,132,.14)!important;
  color:#82f1af!important;
  font-size:.86rem!important;
  font-weight:900!important;
  letter-spacing:.02em!important;
  margin-bottom:14px!important;
  box-shadow:inset 0 0 0 1px rgba(129,241,174,.22)!important;
}

.payment-confirmed-box strong{
  font-size:1.28rem!important;
  color:#fff!important;
  margin-bottom:8px!important;
}

.payment-confirmed-box p{
  color:#d8f6e1!important;
  max-width:860px!important;
  margin-bottom:18px!important;
}

.released-page-row{
  grid-template-columns:210px minmax(0,1fr)!important;
  gap:20px!important;
  align-items:stretch!important;
}

.released-page-qr{
  width:210px!important;
  height:210px!important;
  border-radius:18px!important;
  border:10px solid #fff!important;
  padding:10px!important;
  box-shadow:0 12px 34px rgba(0,0,0,.22)!important;
}

.released-page-info{
  display:flex!important;
  flex-direction:column!important;
  justify-content:center!important;
  min-width:0!important;
  padding:16px 16px 14px!important;
  border-radius:18px!important;
  background:rgba(255,255,255,.06)!important;
  box-shadow:inset 0 0 0 1px rgba(255,255,255,.08)!important;
  backdrop-filter:blur(8px)!important;
}

.released-page-info label{
  color:#f4fff7!important;
  font-size:.96rem!important;
  margin-bottom:10px!important;
}

.released-page-info input{
  height:52px!important;
  border-radius:12px!important;
  background:#ffffff!important;
  color:#121212!important;
  border:1px solid rgba(255,255,255,.16)!important;
  font-weight:900!important;
}

.released-page-actions{
  margin-top:14px!important;
}

.released-page-actions .btn{
  min-height:50px!important;
  border-radius:12px!important;
  padding:0 18px!important;
  font-weight:900!important;
}

.released-page-actions a.btn{
  background:#181818!important;
  box-shadow:inset 0 0 0 1px rgba(255,255,255,.12)!important;
}

.released-page-actions a.btn:hover{
  transform:translateY(-1px)!important;
}

@media (max-width:760px){
  .pro-payment-tabs{
    max-width:none!important;
  }
  .pro-pix-box{
    max-width:none!important;
  }
  .payment-confirmed-box{
    padding:18px 16px!important;
    border-radius:18px!important;
  }
  .released-page-row{
    grid-template-columns:1fr!important;
    gap:16px!important;
  }
  .released-page-qr{
    width:190px!important;
    height:190px!important;
    margin:0 auto!important;
  }
  .released-page-info{
    padding:14px!important;
  }
  .released-page-actions .btn{
    width:100%!important;
    justify-content:center!important;
  }
}

/* === MimoQR refinements: success, edit mode and existing-page modal === */
.payment-confirmed-box{
  margin-top:28px!important;
  padding:28px 24px!important;
  border-radius:22px!important;
  background:linear-gradient(180deg,rgba(40,6,8,.96),rgba(24,4,5,.98))!important;
  border:1px solid rgba(255,255,255,.11)!important;
  box-shadow:0 28px 60px rgba(0,0,0,.28)!important;
  text-align:center!important;
}
.payment-confirmed-box h2{
  margin:8px 0 6px!important;
  font-size:2rem!important;
  line-height:1.05!important;
}
.payment-confirmed-box .payment-confirmed-lead,
.payment-confirmed-box .released-expiry,
.payment-confirmed-box .released-download-note,
.payment-confirmed-box .released-order-code,
.payment-confirmed-box .released-support-line,
.post-payment-edit-callout p{
  color:#f3e8e8!important;
}
.payment-confirmed-check{
  width:76px;
  height:76px;
  margin:0 auto 14px;
  border-radius:50%;
  display:grid;
  place-items:center;
  font-size:2.4rem;
  font-weight:1000;
  color:#fff;
  background:radial-gradient(circle at 30% 30%, #59d76b, #26a83b 68%);
  box-shadow:0 0 0 6px rgba(255,255,255,.94),0 18px 34px rgba(38,168,59,.34);
}
.released-link-wrap{
  max-width:560px;
  margin:18px auto 0;
  text-align:left;
}
.released-link-wrap label{
  display:block;
  margin-bottom:8px;
  font-weight:900;
}
.released-link-field{
  display:flex;
  align-items:center;
  overflow:hidden;
  border-radius:14px;
  border:2px solid rgba(239,17,23,.8);
  background:rgba(255,255,255,.04);
}
.released-link-field input{
  flex:1;
  min-width:0;
  border:0;
  padding:14px 16px;
  font-size:1rem;
  font-weight:800;
  color:#fff;
  background:transparent;
}
.released-copy-icon{
  min-width:56px;
  border:0;
  align-self:stretch;
  background:linear-gradient(135deg,var(--red),var(--red-2));
  color:#fff;
  font-size:1.1rem;
  cursor:pointer;
}
.released-page-qr-box{
  display:flex;
  justify-content:center;
  margin-top:18px;
}
.released-page-qr{
  width:190px!important;
  height:190px!important;
  padding:10px;
  border-radius:16px!important;
  border:0!important;
  background:#fff!important;
  display:grid!important;
  place-items:center!important;
}
.released-page-qr img{
  width:100%;
  height:100%;
  display:block;
  border-radius:8px;
}
.released-expiry{
  margin:14px 0 8px!important;
  font-weight:900!important;
}
.released-download-note{
  max-width:520px;
  margin:0 auto 18px!important;
  padding:14px 16px;
  border-radius:14px;
  background:rgba(255,255,255,.09);
  color:#f6f0f0!important;
  font-weight:700;
}
.released-cta-grid{
  display:grid;
  grid-template-columns:repeat(2,minmax(0,1fr));
  gap:12px;
  max-width:760px;
  margin:0 auto 14px;
}
.released-cta-grid .btn,
.post-payment-edit-callout .btn{
  min-height:56px;
  font-size:1rem;
  font-weight:900;
}
.released-order-code{
  margin:8px 0 12px!important;
  font-weight:900!important;
}
.released-support-line{
  margin:0 0 20px!important;
  font-weight:800!important;
}
.released-support-line a{color:#ff7f87!important}
.post-payment-edit-callout{
  margin-top:20px;
  padding-top:22px;
  border-top:1px solid rgba(255,255,255,.14);
}
.post-payment-edit-callout p{
  margin:0 0 14px!important;
  font-weight:900!important;
}

.edit-page-banner{
  margin-bottom:18px;
  padding:16px 18px;
  border-radius:18px;
  border:2px solid rgba(255,255,255,.7);
  background:rgba(255,255,255,.08);
  box-shadow:0 10px 20px rgba(0,0,0,.18);
}
.edit-page-banner strong,
.edit-page-banner p{display:block}
.edit-page-banner strong{font-size:1rem;color:#fff;margin-bottom:6px}
.edit-page-banner p{margin:0;color:#efefef;font-weight:700}
body.edit-page-mode .creator-panel{padding-bottom:110px}
.edit-save-dock{
  position:fixed;
  left:0;
  right:0;
  bottom:0;
  z-index:60;
  padding:16px 22px calc(16px + env(safe-area-inset-bottom));
  background:linear-gradient(180deg,rgba(239,17,23,.95),rgba(232,20,26,.98));
  box-shadow:0 -16px 28px rgba(0,0,0,.22);
  display:flex;
  justify-content:center;
}
.edit-save-dock .btn{
  min-width:260px;
  min-height:52px;
  background:#fff;
  color:#c80c13;
  box-shadow:none;
}
body.edit-page-mode .wizard-actions.pro-nav-actions{padding-bottom:22px}

.existing-page-card{
  max-width:380px;
  text-align:center;
}
.existing-page-icon{
  width:54px;
  height:54px;
  margin:0 auto 14px;
  border-radius:50%;
  display:grid;
  place-items:center;
  font-weight:1000;
  font-size:1.45rem;
  color:#ffcb46;
  background:rgba(255,203,70,.18);
  box-shadow:0 0 0 10px rgba(255,203,70,.08);
}
.existing-page-card .btn{min-height:52px}
.existing-page-card .btn + .btn{margin-top:12px}

.gift-cover{
  background:linear-gradient(180deg,#f94e58 0%, #e16a2e 52%, #cf9218 100%)!important;
}
.gift-cover-card{
  background:transparent!important;
  box-shadow:none!important;
  border:0!important;
}
.gift-cover-card p:first-child{
  font-size:2rem;
  font-weight:1000;
  margin-bottom:22px;
}
.gift-cover-card .btn{
  background:#fff!important;
  color:#d11b3d!important;
}

@media (max-width: 900px){
  .released-cta-grid{grid-template-columns:1fr}
}
.gift-cover-emoji{font-size:5rem;line-height:1;margin:6px 0 18px}
.gift-cover-card h1{margin:0 0 24px;font-size:1.2rem;color:#fff;font-weight:800}



/* ===== Responsividade universal iOS/Android/Tablet: sem corte e sem rolagem horizontal ===== */
html,
body{
  width:100%!important;
  max-width:100%!important;
  overflow-x:hidden!important;
  -webkit-text-size-adjust:100%!important;
  text-size-adjust:100%!important;
}

body{
  overscroll-behavior-x:none!important;
  touch-action:pan-y!important;
}

*,
*::before,
*::after{
  box-sizing:border-box!important;
}

img,
svg,
video,
canvas,
iframe{
  max-width:100%!important;
}

input,
textarea,
select,
button{
  max-width:100%!important;
  font-size:16px!important; /* evita zoom automático no iOS */
}

.btn,
a.btn,
button.btn{
  max-width:100%!important;
  white-space:normal!important;
  text-align:center!important;
}

body,
.site-wrap,
.hero,
.section-pad,
.creator-pro-shell,
.checkout-pro-shell,
.checkout-payment-layout,
.gift-pro-page{
  inline-size:100%!important;
  max-inline-size:100%!important;
}

:root{
  --mimo-mobile-gutter:clamp(14px,4vw,24px);
  --mimo-mobile-radius:clamp(18px,5vw,30px);
}

/* Tablets e telas médias */
@media (max-width:1180px){
  .site-header,
  .site-header.site-header-home,
  .site-header.header-like-print,
  .site-header.qr-scroll-header{
    width:calc(100% - 24px)!important;
    max-width:980px!important;
    left:12px!important;
    right:12px!important;
    transform:none!important;
  }

  .hero{
    min-height:auto!important;
    grid-template-columns:1fr!important;
    gap:34px!important;
    padding:132px var(--mimo-mobile-gutter) 54px!important;
    overflow:hidden!important;
  }

  .hero-content,
  .hero-copy,
  .hero-text{
    max-width:100%!important;
  }

  .hero h1{
    max-width:100%!important;
  }

  .hero-visual,
  .phone-stack,
  .live-hero-stack,
  .hero-print-stack{
    width:100%!important;
    max-width:100%!important;
    min-height:auto!important;
    height:auto!important;
    overflow:visible!important;
  }

  .hero-print-stack{
    display:grid!important;
    grid-template-columns:repeat(3,minmax(0,1fr))!important;
    gap:12px!important;
    align-items:end!important;
    justify-items:center!important;
    padding:8px 0 18px!important;
  }

  .hero-print-card,
  .hero-print-card[data-hero-position]{
    position:relative!important;
    left:auto!important;
    right:auto!important;
    top:auto!important;
    width:min(100%,260px)!important;
    height:auto!important;
    aspect-ratio:300/560!important;
    margin:0!important;
    transform:none!important;
    opacity:1!important;
    filter:none!important;
  }

  .hero-print-card[data-hero-position="center"]{
    transform:scale(1.04)!important;
    z-index:3!important;
  }

  .hero-print-card[data-hero-position="left"],
  .hero-print-card[data-hero-position="right"]{
    transform:scale(.92)!important;
    z-index:1!important;
  }

  .how-grid,
  .plans-grid,
  .footer-reference-grid,
  .footer-symmetric-grid{
    grid-template-columns:1fr!important;
    width:100%!important;
    max-width:100%!important;
  }

  .plans-grid{
    gap:18px!important;
  }

  .checkout-pro-shell,
  .checkout-payment-layout,
  .creator-pro-shell{
    grid-template-columns:1fr!important;
    gap:34px!important;
    padding:42px var(--mimo-mobile-gutter) 52px!important;
    min-height:auto!important;
    overflow:hidden!important;
  }

  .checkout-pro-panel,
  .creator-panel,
  .payment-like-print{
    width:100%!important;
    max-width:100%!important;
    min-width:0!important;
  }

  .checkout-payment-preview,
  .phone-live{
    width:100%!important;
    position:relative!important;
    top:auto!important;
    display:flex!important;
    justify-content:center!important;
    order:-1!important;
  }

  .checkout-preview-stick,
  .phone-live{
    position:relative!important;
    top:auto!important;
  }

  .pro-phone,
  .checkout-payment-preview .pro-phone{
    width:min(100%,360px)!important;
    height:auto!important;
    max-height:none!important;
    aspect-ratio:330/650!important;
  }

  .pro-screen{
    height:100%!important;
  }

  .pro-form-grid,
  .card-fields-grid,
  .final-fields{
    grid-template-columns:1fr!important;
    max-width:100%!important;
  }

  .pro-plan-grid{
    grid-template-columns:repeat(2,minmax(0,1fr))!important;
  }

  .pro-progress,
  .payment-progress{
    width:100%!important;
    overflow-x:auto!important;
    scrollbar-width:none!important;
    -webkit-overflow-scrolling:touch!important;
    padding-bottom:8px!important;
  }

  .pro-progress::-webkit-scrollbar,
  .payment-progress::-webkit-scrollbar{
    display:none!important;
  }
}

/* Celulares grandes e tablets pequenos */
@media (max-width:760px){
  .site-header,
  .site-header.site-header-home,
  .site-header.header-like-print,
  .site-header.qr-scroll-header{
    width:calc(100% - 18px)!important;
    max-width:430px!important;
    min-height:auto!important;
    height:auto!important;
    padding:10px 12px!important;
    flex-direction:column!important;
    align-items:center!important;
    justify-content:center!important;
    gap:9px!important;
    border-radius:24px!important;
  }

  .site-header .brand,
  .site-header.site-header-home .brand{
    width:100%!important;
    justify-content:center!important;
    font-size:1rem!important;
  }

  .site-header .desktop-nav,
  .site-header.site-header-home .desktop-nav{
    display:flex!important;
    width:100%!important;
    justify-content:center!important;
    gap:8px!important;
    flex-wrap:wrap!important;
    font-size:.78rem!important;
  }

  .site-header .desktop-nav a,
  .site-header.site-header-home .desktop-nav a{
    padding:6px 8px!important;
    border-radius:999px!important;
    background:rgba(255,255,255,.05)!important;
    white-space:nowrap!important;
  }

  .header-cta{
    display:none!important;
  }

  .hero{
    padding-top:142px!important;
    padding-bottom:38px!important;
    text-align:center!important;
  }

  .hero h1{
    font-size:clamp(2.45rem,14vw,4.15rem)!important;
    line-height:.92!important;
    letter-spacing:-.07em!important;
    margin-left:auto!important;
    margin-right:auto!important;
  }

  .hero-subtitle{
    font-size:1rem!important;
    margin-left:auto!important;
    margin-right:auto!important;
  }

  .hero-actions,
  .trust-row{
    justify-content:center!important;
  }

  .hero-actions .btn{
    width:100%!important;
  }

  .metric-grid{
    grid-template-columns:1fr!important;
    max-width:360px!important;
    margin-left:auto!important;
    margin-right:auto!important;
  }

  .hero-print-stack{
    display:flex!important;
    gap:10px!important;
    justify-content:center!important;
    align-items:center!important;
    padding:6px 0 10px!important;
  }

  .hero-print-card,
  .hero-print-card[data-hero-position]{
    width:30vw!important;
    max-width:116px!important;
    min-width:84px!important;
    aspect-ratio:300/560!important;
  }

  .hero-print-card[data-hero-position="center"]{
    transform:scale(1.18)!important;
  }

  .hero-print-card .live-hero-label{
    display:none!important;
  }

  .section-pad{
    padding:60px var(--mimo-mobile-gutter)!important;
  }

  .section-title{
    margin-bottom:32px!important;
  }

  .section-title h2{
    font-size:clamp(2rem,11vw,3.2rem)!important;
  }

  .plans-grid{
    grid-template-columns:1fr!important;
  }

  .plan-card{
    padding:28px 20px!important;
    border-radius:22px!important;
    min-width:0!important;
  }

  .plan-card h3{
    max-width:calc(100% - 72px)!important;
    font-size:1.7rem!important;
  }

  .plan-icon{
    right:22px!important;
    top:24px!important;
    font-size:2.35rem!important;
  }

  .price{
    font-size:2rem!important;
  }

  .feature-list li,
  .plan-card li{
    font-size:.95rem!important;
    line-height:1.35!important;
  }

  .plan-card .btn{
    width:100%!important;
  }

  .interactive-example-tabs,
  .static-example-tabs,
  .example-tabs{
    display:flex!important;
    overflow-x:auto!important;
    justify-content:flex-start!important;
    gap:8px!important;
    padding:0 2px 8px!important;
    scrollbar-width:none!important;
  }

  .interactive-example-tabs::-webkit-scrollbar,
  .static-example-tabs::-webkit-scrollbar,
  .example-tabs::-webkit-scrollbar{
    display:none!important;
  }

  .interactive-example-tabs button,
  .static-example-tabs button,
  .example-tabs button,
  .tab{
    flex:0 0 auto!important;
    padding:12px 16px!important;
    font-size:.88rem!important;
    white-space:nowrap!important;
  }

  .static-example-stage{
    width:100%!important;
    min-height:auto!important;
    padding:0 36px 12px!important;
  }

  .static-example-phone{
    width:min(100%,300px)!important;
  }

  .static-example-img{
    border-radius:24px!important;
  }

  .static-example-arrow{
    width:38px!important;
    height:38px!important;
    font-size:1.45rem!important;
  }

  .creator-pro-shell,
  .checkout-pro-shell,
  .checkout-payment-layout{
    padding:24px var(--mimo-mobile-gutter) 34px!important;
    gap:22px!important;
  }

  .creator-panel{
    order:1!important;
  }

  .phone-live,
  .checkout-payment-preview{
    order:2!important;
    margin-top:12px!important;
  }

  .pro-phone,
  .checkout-payment-preview .pro-phone{
    width:min(100%,310px)!important;
    max-width:310px!important;
  }

  /* No celular real, a prévia vira compacta para não empurrar/cortar o formulário */
  .creator-pro-body .phone-live{
    display:none!important;
  }

  .checkout-pro-body .checkout-payment-preview{
    display:none!important;
  }

  .pro-step h1,
  .payment-like-print h1{
    font-size:1.7rem!important;
  }

  .pro-step p,
  .checkout-main-line{
    font-size:.98rem!important;
  }

  .pro-plan-grid,
  .pro-form-grid,
  .card-wallet-options,
  .card-fields-grid,
  .released-cta-grid{
    grid-template-columns:1fr!important;
  }

  .pro-plan-card{
    min-height:146px!important;
    padding:22px!important;
  }

  .pro-plan-card strong{
    font-size:1.35rem!important;
  }

  .pro-nav-actions,
  .payment-actions,
  .checkout-actions,
  .wizard-actions{
    display:grid!important;
    grid-template-columns:1fr 1fr!important;
    gap:12px!important;
    width:100%!important;
  }

  .pro-nav-actions .btn,
  .payment-actions .btn,
  .checkout-actions .btn,
  .wizard-actions .btn{
    width:100%!important;
    min-width:0!important;
  }

  .payment-tabs,
  .pro-payment-tabs{
    width:100%!important;
    max-width:100%!important;
  }

  .pro-pix-box{
    width:100%!important;
    max-width:100%!important;
    margin:0 auto!important;
  }

  .realistic-qr{
    width:min(58vw,206px)!important;
    height:min(58vw,206px)!important;
  }

  .pro-pix-box textarea{
    width:100%!important;
    max-width:100%!important;
    height:86px!important;
    font-size:.83rem!important;
    word-break:break-all!important;
  }

  .copy-pix-button{
    width:100%!important;
    min-width:0!important;
  }

  .released-link-field{
    width:100%!important;
  }

  .released-page-qr{
    width:min(62vw,190px)!important;
    height:min(62vw,190px)!important;
  }

  .released-page-info input,
  .released-link-field input{
    font-size:.86rem!important;
  }

  .modal-card,
  .draft-card-print,
  .existing-page-card{
    width:calc(100% - 28px)!important;
    max-width:390px!important;
    border-radius:22px!important;
    padding:26px 20px!important;
  }

  .cookie-bar{
    left:10px!important;
    right:10px!important;
    bottom:10px!important;
    width:auto!important;
    max-width:calc(100% - 20px)!important;
  }

  .whatsapp-float{
    right:12px!important;
    bottom:82px!important;
  }

  .footer-reference-grid,
  .footer-symmetric-grid{
    gap:22px!important;
  }

  .footer-reference-col{
    min-width:0!important;
  }
}

/* Celulares pequenos */
@media (max-width:480px){
  .hero{
    padding-top:150px!important;
  }

  .hero h1{
    font-size:clamp(2.1rem,13vw,3.25rem)!important;
  }

  .hero-print-card,
  .hero-print-card[data-hero-position]{
    width:29vw!important;
    max-width:100px!important;
    min-width:78px!important;
  }

  .plan-card{
    padding:24px 16px!important;
  }

  .feature-list li,
  .plan-card li{
    display:flex!important;
    align-items:flex-start!important;
    gap:8px!important;
  }

  .feat-icon{
    flex:0 0 auto!important;
  }

  .pro-progress,
  .payment-progress{
    gap:8px!important;
    margin-bottom:20px!important;
  }

  .pro-progress span,
  .payment-progress span{
    width:26px!important;
    height:26px!important;
    min-width:26px!important;
    border-width:2px!important;
  }

  .pro-progress i,
  .payment-progress i{
    width:34px!important;
    min-width:24px!important;
    height:3px!important;
  }

  .pro-step h1,
  .payment-like-print h1{
    font-size:1.45rem!important;
  }

  .pro-step textarea{
    min-height:160px!important;
  }

  .calendar-widget{
    width:100%!important;
  }

  .calendar-week,
  .calendar-days{
    gap:5px!important;
  }

  .calendar-days button{
    height:32px!important;
    font-size:.88rem!important;
  }

  .pro-nav-actions,
  .payment-actions,
  .checkout-actions,
  .wizard-actions{
    grid-template-columns:1fr!important;
  }

  .card-number-input{
    padding-right:112px!important;
  }

  .card-brands{
    max-width:106px!important;
    gap:4px!important;
  }

  .card-brand-img.visa{
    height:16px!important;
  }

  .card-brand-img.mastercard{
    height:18px!important;
  }

  .released-cta-grid .btn,
  .post-payment-edit-callout .btn{
    min-height:50px!important;
    font-size:.92rem!important;
  }

  .edit-save-dock{
    padding:12px 12px calc(12px + env(safe-area-inset-bottom))!important;
  }

  .edit-save-dock .btn{
    min-width:0!important;
    width:100%!important;
  }
}

/* iPhone com notch / Android gesture bar */
@supports (height:100dvh){
  .creator-pro-body,
  .checkout-pro-body,
  .gift-pro-body{
    min-height:100dvh!important;
  }

  .gift-cover{
    min-height:100dvh!important;
  }
}

/* Oculta barras visuais internas em dispositivos touch, mantendo rolagem quando o conteúdo for maior */
@media (hover:none) and (pointer:coarse){
  .pro-screen,
  .elegant-screen,
  .birthday-screen,
  .event-scroll-content,
  .movie-poster-scroll,
  .published-event .event-scroll-content,
  .published-movie .movie-poster-scroll,
  .published-birthday .birthday-screen,
  .published-elegant.elegant-screen{
    scrollbar-width:none!important;
    -ms-overflow-style:none!important;
  }

  .pro-screen::-webkit-scrollbar,
  .elegant-screen::-webkit-scrollbar,
  .birthday-screen::-webkit-scrollbar,
  .event-scroll-content::-webkit-scrollbar,
  .movie-poster-scroll::-webkit-scrollbar,
  .published-event .event-scroll-content::-webkit-scrollbar,
  .published-movie .movie-poster-scroll::-webkit-scrollbar,
  .published-birthday .birthday-screen::-webkit-scrollbar,
  .published-elegant.elegant-screen::-webkit-scrollbar{
    width:0!important;
    height:0!important;
    display:none!important;
  }
}


/* ===== Ajustes finos mobile v2: logo centralizada + preview sempre visível + fotos melhoradas ===== */
@media (max-width:760px){
  .footer-symmetric .footer-heart-qr,
  .footer-logo-official,
  .footer-logo-link{
    display:flex!important;
    justify-content:center!important;
    align-items:center!important;
    text-align:center!important;
    margin-left:auto!important;
    margin-right:auto!important;
    padding-left:0!important;
  }

  .footer-symmetric .footer-heart-qr{
    margin:0 auto 28px!important;
  }

  .footer-logo-official img{
    margin:0 auto!important;
  }

  .footer-symmetric .footer-reference-col,
  .footer-symmetric .footer-reference-col h3,
  .footer-symmetric .footer-reference-col p,
  .footer-symmetric .footer-reference-col strong,
  .footer-symmetric .footer-reference-contact a,
  .footer-symmetric .footer-reference-payments h3{
    text-align:left!important;
  }

  .footer-symmetric .payment-brand-row{
    justify-content:flex-start!important;
  }

  /* prévia do celular volta a aparecer no mobile */
  .creator-pro-shell,
  .checkout-payment-layout,
  .checkout-pro-shell{
    padding-bottom:40px!important;
  }

  .creator-pro-body .phone-live,
  .checkout-pro-body .checkout-payment-preview{
    display:flex!important;
    width:100%!important;
    justify-content:center!important;
    align-items:flex-start!important;
    position:relative!important;
    top:auto!important;
    margin:18px auto 8px!important;
    order:2!important;
  }

  .creator-pro-body .phone-live .pro-phone,
  .checkout-pro-body .checkout-payment-preview .pro-phone{
    width:min(82vw, 320px)!important;
    max-width:320px!important;
    height:auto!important;
    aspect-ratio:330/650!important;
    margin:0 auto!important;
  }

  .checkout-pro-body .checkout-preview-stick,
  .creator-pro-body .phone-live{
    position:relative!important;
    top:auto!important;
  }

  .upload-button{
    width:min(100%, 320px)!important;
    max-width:100%!important;
    margin:10px 0 20px!important;
    padding:16px 18px!important;
  }

  .photo-strip{
    display:grid!important;
    grid-template-columns:repeat(3, minmax(0, 1fr))!important;
    gap:12px!important;
    width:100%!important;
    max-width:100%!important;
    margin-top:6px!important;
  }

  .photo-strip div{
    min-width:0!important;
  }

  .photo-strip img{
    width:100%!important;
    height:102px!important;
    border-radius:12px!important;
  }

  .photo-strip button{
    right:6px!important;
    top:6px!important;
  }
}

@media (max-width:480px){
  .photo-strip{
    grid-template-columns:repeat(2, minmax(0, 1fr))!important;
  }

  .photo-strip img{
    height:118px!important;
  }

  .creator-pro-body .phone-live .pro-phone,
  .checkout-pro-body .checkout-payment-preview .pro-phone{
    width:min(88vw, 300px)!important;
    max-width:300px!important;
  }
}

/* landscape em celular/tablet pequeno: mantém a prévia visível e compacta */
@media (max-width:980px) and (orientation:landscape){
  .creator-pro-body .phone-live,
  .checkout-pro-body .checkout-payment-preview{
    display:flex!important;
    justify-content:center!important;
    margin-top:20px!important;
    order:2!important;
    width:100%!important;
  }

  .creator-pro-body .phone-live .pro-phone,
  .checkout-pro-body .checkout-payment-preview .pro-phone{
    width:min(56vw, 290px)!important;
    max-width:290px!important;
  }

  .footer-symmetric .footer-heart-qr,
  .footer-logo-official,
  .footer-logo-link{
    justify-content:center!important;
    text-align:center!important;
    margin-left:auto!important;
    margin-right:auto!important;
  }
}



/* ===== Passada final: iPhone Safari, Android Chrome e Tablet ===== */
html{
  min-height:100%;
  background:#090000!important;
}

body{
  min-height:calc(var(--mimo-vh, 1vh) * 100)!important;
  min-height:100dvh!important;
  background:#090000!important;
}

body.is-ios{
  -webkit-font-smoothing:antialiased!important;
}

@supports (-webkit-touch-callout:none){
  input,
  textarea,
  select,
  button{
    font-size:16px!important;
  }
}

/* iPhone/Safari: respeita notch e barra inferior */
@supports (padding:max(0px)){
  .site-header.site-header-home,
  .site-header.header-like-print,
  .site-header.qr-scroll-header{
    top:max(12px, env(safe-area-inset-top))!important;
  }

  .hero{
    padding-top:calc(126px + env(safe-area-inset-top))!important;
  }

  .creator-pro-shell,
  .checkout-payment-layout,
  .checkout-pro-shell{
    padding-top:calc(28px + env(safe-area-inset-top))!important;
    padding-bottom:calc(46px + env(safe-area-inset-bottom))!important;
  }

  .whatsapp-float{
    bottom:calc(80px + env(safe-area-inset-bottom))!important;
  }

  .edit-save-dock{
    padding-bottom:calc(14px + env(safe-area-inset-bottom))!important;
  }
}

/* Footer: logo sempre centralizada no mobile/tablet */
@media (max-width:1024px){
  .footer-symmetric .footer-heart-qr.footer-logo-official.footer-logo-link,
  .footer-symmetric .footer-logo-official.footer-logo-link,
  .footer-logo-official.footer-logo-link{
    width:100%!important;
    max-width:100%!important;
    display:flex!important;
    align-items:center!important;
    justify-content:center!important;
    margin:0 auto 30px!important;
    padding:0!important;
    text-align:center!important;
  }

  .footer-symmetric .footer-heart-qr.footer-logo-official.footer-logo-link img,
  .footer-logo-official.footer-logo-link img{
    display:block!important;
    margin:0 auto!important;
  }
}

/* Preview sempre disponível em celular/tablet, inclusive paisagem */
@media (max-width:1180px){
  .creator-pro-shell,
  .checkout-payment-layout,
  .checkout-pro-shell{
    display:grid!important;
    grid-template-columns:1fr!important;
    align-items:start!important;
  }

  .creator-pro-body .phone-live,
  .checkout-pro-body .checkout-payment-preview{
    display:flex!important;
    width:100%!important;
    max-width:100%!important;
    order:2!important;
    position:relative!important;
    top:auto!important;
    justify-content:center!important;
    align-items:flex-start!important;
    margin:22px auto 4px!important;
    visibility:visible!important;
    opacity:1!important;
  }

  .creator-pro-body .phone-live .pro-phone,
  .checkout-pro-body .checkout-payment-preview .pro-phone{
    width:min(76vw, 340px)!important;
    max-width:340px!important;
    min-width:250px!important;
    height:auto!important;
    aspect-ratio:330/650!important;
    transform:none!important;
  }
}

/* Celular retrato */
@media (max-width:760px) and (orientation:portrait){
  .creator-pro-body .phone-live .pro-phone,
  .checkout-pro-body .checkout-payment-preview .pro-phone{
    width:min(88vw, 318px)!important;
    max-width:318px!important;
    min-width:250px!important;
  }

  .creator-pro-body .phone-live,
  .checkout-pro-body .checkout-payment-preview{
    margin-top:20px!important;
  }
}

/* Celular paisagem: preview compacto, sem sumir */
@media (max-width:980px) and (orientation:landscape), (max-height:560px) and (orientation:landscape){
  .creator-pro-shell,
  .checkout-payment-layout,
  .checkout-pro-shell{
    padding-left:18px!important;
    padding-right:18px!important;
    gap:18px!important;
  }

  .creator-panel,
  .checkout-pro-panel{
    width:100%!important;
    max-width:100%!important;
  }

  .creator-pro-body .phone-live,
  .checkout-pro-body .checkout-payment-preview{
    display:flex!important;
    order:2!important;
    width:100%!important;
    justify-content:center!important;
    margin:16px auto 0!important;
  }

  .creator-pro-body .phone-live .pro-phone,
  .checkout-pro-body .checkout-payment-preview .pro-phone{
    width:min(44vw, 250px)!important;
    max-width:250px!important;
    min-width:190px!important;
    height:auto!important;
    aspect-ratio:330/650!important;
  }

  .pro-progress,
  .payment-progress{
    gap:10px!important;
  }

  .pro-progress i,
  .payment-progress i{
    width:52px!important;
    min-width:34px!important;
  }
}

/* Tablet retrato e paisagem */
@media (min-width:761px) and (max-width:1180px){
  .site-header,
  .site-header.site-header-home,
  .site-header.header-like-print,
  .site-header.qr-scroll-header{
    width:calc(100% - 32px)!important;
    left:16px!important;
    right:16px!important;
    transform:none!important;
  }

  .creator-pro-shell,
  .checkout-payment-layout,
  .checkout-pro-shell{
    padding-left:clamp(28px,5vw,54px)!important;
    padding-right:clamp(28px,5vw,54px)!important;
  }

  .pro-plan-grid,
  .plans-grid{
    grid-template-columns:repeat(2,minmax(0,1fr))!important;
  }

  .photo-strip{
    display:grid!important;
    grid-template-columns:repeat(5,minmax(0,1fr))!important;
    gap:12px!important;
  }

  .photo-strip img{
    width:100%!important;
    height:clamp(92px,12vw,140px)!important;
    object-fit:cover!important;
  }
}

/* Fotos no celular: não estoura, não empurra lateralmente */
@media (max-width:760px){
  .photo-strip{
    display:grid!important;
    grid-template-columns:repeat(3,minmax(0,1fr))!important;
    gap:10px!important;
    width:100%!important;
    max-width:100%!important;
    overflow:visible!important;
  }

  .photo-strip div{
    min-width:0!important;
    width:100%!important;
  }

  .photo-strip img{
    width:100%!important;
    height:clamp(92px,27vw,124px)!important;
    object-fit:cover!important;
    border-radius:12px!important;
  }

  .photo-strip button{
    right:4px!important;
    top:4px!important;
    width:24px!important;
    height:24px!important;
    line-height:1!important;
  }

  .upload-button{
    width:min(100%,330px)!important;
  }
}

@media (max-width:420px){
  .photo-strip{
    grid-template-columns:repeat(2,minmax(0,1fr))!important;
  }

  .photo-strip img{
    height:clamp(110px,39vw,145px)!important;
  }
}

/* Evita corte horizontal causado por animações e cards em browsers móveis */
@media (max-width:1180px){
  .testimonial-track,
  .marquee-left-to-right,
  .marquee-right-to-left,
  .static-example-stage,
  .interactive-example-stage,
  .hero-print-stack,
  .phone-stack,
  .live-hero-stack{
    max-width:100vw!important;
    overflow:hidden!important;
  }

  .plan-card,
  .pro-plan-card,
  .modal-card,
  .payment-confirmed-box,
  .payment-pending-box,
  .summary-box,
  .no-refund-box{
    max-width:100%!important;
    min-width:0!important;
  }
}



/* ===== Correção final: preview do celular visível em modo retrato ===== */
@media (max-width:760px) and (orientation:portrait){
  .creator-pro-shell,
  .checkout-payment-layout,
  .checkout-pro-shell{
    display:grid!important;
    grid-template-columns:1fr!important;
    gap:20px!important;
    align-items:start!important;
  }

  .creator-panel,
  .checkout-pro-panel{
    order:1!important;
  }

  .creator-pro-body .phone-live,
  .checkout-pro-body .checkout-payment-preview{
    display:flex!important;
    visibility:visible!important;
    opacity:1!important;
    position:relative!important;
    inset:auto!important;
    width:100%!important;
    max-width:100%!important;
    height:auto!important;
    min-height:0!important;
    justify-content:center!important;
    align-items:flex-start!important;
    order:2!important;
    margin:18px auto 0!important;
    pointer-events:auto!important;
    transform:none!important;
  }

  .creator-pro-body .phone-live .pro-phone,
  .checkout-pro-body .checkout-payment-preview .pro-phone,
  #proPhone,
  #checkoutPhone{
    display:block!important;
    visibility:visible!important;
    opacity:1!important;
    width:min(86vw, 310px)!important;
    max-width:310px!important;
    min-width:238px!important;
    height:auto!important;
    min-height:470px!important;
    aspect-ratio:330/650!important;
    margin:0 auto!important;
    transform:none!important;
  }

  .creator-pro-body .phone-live .pro-screen,
  .checkout-pro-body .checkout-payment-preview .pro-screen,
  #phoneScreen,
  #checkoutScreen{
    display:block!important;
    visibility:visible!important;
    opacity:1!important;
    height:100%!important;
    min-height:430px!important;
  }
}

/* iPhone retrato com tela baixa: preview um pouco menor para não cortar */
@media (max-width:430px) and (orientation:portrait){
  .creator-pro-body .phone-live .pro-phone,
  .checkout-pro-body .checkout-payment-preview .pro-phone,
  #proPhone,
  #checkoutPhone{
    width:min(84vw, 290px)!important;
    max-width:290px!important;
    min-height:440px!important;
  }

  .creator-pro-body .phone-live .pro-screen,
  .checkout-pro-body .checkout-payment-preview .pro-screen,
  #phoneScreen,
  #checkoutScreen{
    min-height:405px!important;
  }
}



/* ===== Ajuste final: preview do pagamento com o mesmo tamanho dos outros ===== */
.checkout-pro-body{
  --mimo-preview-desktop-w: clamp(360px, 26vw, 410px);
  --mimo-preview-desktop-h: clamp(760px, 60vw, 860px);
  --mimo-preview-tablet-w: min(94vw, 410px);
  --mimo-preview-tablet-h: min(88vh, 860px);
  --mimo-preview-mobile-w: min(95vw, 380px);
  --mimo-preview-mobile-h: min(84vh, 780px);
  --mimo-preview-portrait-w: min(86vw, 310px);
  --mimo-preview-portrait-h: auto;
  --mimo-preview-portrait-min-h: 470px;
  --mimo-preview-iphone-w: min(84vw, 290px);
  --mimo-preview-iphone-min-h: 440px;
}

.checkout-pro-body .checkout-payment-preview,
.checkout-pro-body .checkout-preview-stick{
  width:100%!important;
  justify-content:center!important;
  align-items:flex-start!important;
}

.checkout-pro-body .checkout-payment-preview .pro-phone,
.checkout-pro-body #checkoutPhone{
  width:var(--mimo-preview-desktop-w)!important;
  height:var(--mimo-preview-desktop-h)!important;
  max-width:410px!important;
  margin:0 auto!important;
}

@media (max-width:1100px){
  .checkout-pro-body .checkout-payment-preview .pro-phone,
  .checkout-pro-body #checkoutPhone{
    width:var(--mimo-preview-tablet-w)!important;
    height:var(--mimo-preview-tablet-h)!important;
    max-width:410px!important;
  }
}

@media (max-width:560px){
  .checkout-pro-body .checkout-payment-preview .pro-phone,
  .checkout-pro-body #checkoutPhone{
    width:var(--mimo-preview-mobile-w)!important;
    height:var(--mimo-preview-mobile-h)!important;
    max-width:380px!important;
  }
}

@media (max-width:760px) and (orientation:portrait){
  .checkout-pro-body .checkout-payment-preview{
    order:2!important;
  }

  .checkout-pro-body .checkout-payment-preview .pro-phone,
  .checkout-pro-body #checkoutPhone{
    width:var(--mimo-preview-portrait-w)!important;
    height:var(--mimo-preview-portrait-h)!important;
    max-width:310px!important;
    min-height:var(--mimo-preview-portrait-min-h)!important;
    aspect-ratio:330/650!important;
  }

  .checkout-pro-body .checkout-payment-preview .pro-screen,
  .checkout-pro-body #checkoutScreen{
    min-height:430px!important;
    height:100%!important;
  }
}

@media (max-width:430px) and (orientation:portrait){
  .checkout-pro-body .checkout-payment-preview .pro-phone,
  .checkout-pro-body #checkoutPhone{
    width:var(--mimo-preview-iphone-w)!important;
    max-width:290px!important;
    min-height:var(--mimo-preview-iphone-min-h)!important;
  }

  .checkout-pro-body .checkout-payment-preview .pro-screen,
  .checkout-pro-body #checkoutScreen{
    min-height:405px!important;
  }
}



/* ===== Revisão final mobile: sem sobreposição + fotos + preview limpo ===== */
body.creator-pro-body .site-footer,
body.checkout-pro-body .site-footer,
body.creator-pro-body .whatsapp-float,
body.checkout-pro-body .whatsapp-float{
  display:none!important;
}

@media (max-width: 760px){
  body.creator-pro-body .creator-pro-shell,
  body.checkout-pro-body .checkout-payment-layout,
  body.checkout-pro-body .checkout-pro-shell{
    display:flex!important;
    flex-direction:column!important;
    align-items:stretch!important;
    gap:22px!important;
    overflow:visible!important;
    padding-left:18px!important;
    padding-right:18px!important;
    padding-bottom:calc(34px + env(safe-area-inset-bottom, 0px))!important;
  }

  body.creator-pro-body .creator-panel,
  body.checkout-pro-body .checkout-pro-panel{
    order:1!important;
    position:relative!important;
    z-index:3!important;
    width:100%!important;
    max-width:100%!important;
  }

  body.creator-pro-body .phone-live,
  body.checkout-pro-body .checkout-payment-preview{
    order:2!important;
    position:relative!important;
    top:auto!important;
    inset:auto!important;
    display:flex!important;
    justify-content:center!important;
    align-items:flex-start!important;
    width:100%!important;
    max-width:100%!important;
    height:auto!important;
    min-height:0!important;
    margin:14px auto 0!important;
    padding:0!important;
    z-index:1!important;
    transform:none!important;
    pointer-events:auto!important;
  }

  body.creator-pro-body .phone-live .pro-phone,
  body.checkout-pro-body .checkout-payment-preview .pro-phone,
  body.creator-pro-body #proPhone,
  body.checkout-pro-body #checkoutPhone{
    display:block!important;
    width:min(82vw, 300px)!important;
    max-width:300px!important;
    min-width:240px!important;
    height:auto!important;
    min-height:0!important;
    aspect-ratio:330/650!important;
    max-height:none!important;
    margin:0 auto!important;
    transform:none!important;
  }

  body.creator-pro-body .phone-live .pro-screen,
  body.checkout-pro-body .checkout-payment-preview .pro-screen,
  body.creator-pro-body #phoneScreen,
  body.checkout-pro-body #checkoutScreen{
    height:100%!important;
    min-height:0!important;
    max-height:none!important;
  }

  body.creator-pro-body .pro-progress,
  body.checkout-pro-body .payment-progress{
    position:relative!important;
    z-index:4!important;
  }

  body.creator-pro-body .pro-step.active,
  body.checkout-pro-body .payment-like-print{
    position:relative!important;
    z-index:4!important;
  }

  .photo-strip,
  #uploadPreview{
    display:grid!important;
    grid-template-columns:repeat(3,minmax(0,1fr))!important;
    gap:10px!important;
    width:100%!important;
    max-width:100%!important;
    overflow:visible!important;
    margin-top:16px!important;
  }

  .photo-strip div,
  #uploadPreview div{
    width:100%!important;
    min-width:0!important;
    position:relative!important;
  }

  .photo-strip img,
  #uploadPreview img{
    width:100%!important;
    height:clamp(92px, 27vw, 126px)!important;
    object-fit:cover!important;
    border-radius:12px!important;
    display:block!important;
  }

  .photo-strip button,
  #uploadPreview button{
    width:24px!important;
    height:24px!important;
    right:4px!important;
    top:4px!important;
    z-index:2!important;
  }
}

@media (max-width: 430px){
  .photo-strip,
  #uploadPreview{
    grid-template-columns:repeat(2,minmax(0,1fr))!important;
  }

  .photo-strip img,
  #uploadPreview img{
    height:clamp(110px, 38vw, 145px)!important;
  }

  body.creator-pro-body .phone-live .pro-phone,
  body.checkout-pro-body .checkout-payment-preview .pro-phone,
  body.creator-pro-body #proPhone,
  body.checkout-pro-body #checkoutPhone{
    width:min(84vw, 286px)!important;
    max-width:286px!important;
  }
}

/* Landscape mobile: sem sobrepor formulário */
@media (max-width: 980px) and (orientation: landscape){
  body.creator-pro-body .creator-pro-shell,
  body.checkout-pro-body .checkout-payment-layout,
  body.checkout-pro-body .checkout-pro-shell{
    display:flex!important;
    flex-direction:column!important;
  }

  body.creator-pro-body .phone-live,
  body.checkout-pro-body .checkout-payment-preview{
    order:2!important;
    margin-top:16px!important;
  }

  body.creator-pro-body .phone-live .pro-phone,
  body.checkout-pro-body .checkout-payment-preview .pro-phone,
  body.creator-pro-body #proPhone,
  body.checkout-pro-body #checkoutPhone{
    width:min(48vw, 250px)!important;
    max-width:250px!important;
    min-width:190px!important;
  }
}


/* ===== Ajustes finais após revisão dos prints amarelos ===== */
html{scroll-padding-top:110px;}
body{overflow-x:hidden!important;}
#como-funciona,
#produtos,
#avaliacoes,
#faq{scroll-margin-top:110px!important;}
#como-funciona:target,
#produtos:target,
#avaliacoes:target,
#faq:target{scroll-margin-top:110px!important;}

/* Header fixo não pode cobrir o início das seções no celular */
@media (max-width:760px){
  .site-header,
  .site-header.site-header-home,
  .site-header.header-like-print,
  .site-header.qr-scroll-header{
    top:12px!important;
    height:auto!important;
    min-height:58px!important;
    padding:10px 16px!important;
  }

  #como-funciona,
  #produtos,
  #avaliacoes,
  #faq{
    scroll-margin-top:98px!important;
  }

  #como-funciona .section-title,
  #produtos .section-title,
  #avaliacoes .section-title,
  #faq .section-title{
    padding-top:22px!important;
  }
}

/* Cards de preço: badge sempre do tamanho do texto */
.plan-card{
  display:flex!important;
  flex-direction:column!important;
}
.plan-card .badge,
.plan-card .new-badge{
  display:inline-flex!important;
  align-items:center!important;
  justify-content:center!important;
  width:-moz-fit-content!important;
  width:fit-content!important;
  max-width:100%!important;
  align-self:flex-start!important;
  white-space:nowrap!important;
  flex:0 0 auto!important;
}

/* Depoimentos mobile: mostrar card inteiro e permitir arrastar */
@media (max-width:760px){
  .testimonial-marquee{
    overflow:hidden!important;
  }

  .testimonial-row,
  .testimonial-track{
    display:grid!important;
    grid-auto-flow:column!important;
    grid-auto-columns:minmax(82vw, 82vw)!important;
    gap:14px!important;
    overflow-x:auto!important;
    overflow-y:hidden!important;
    padding:0 18px 8px!important;
    margin:0 -18px!important;
    scroll-snap-type:x mandatory!important;
    -webkit-overflow-scrolling:touch!important;
    animation:none!important;
    transform:none!important;
  }

  .testimonial-row article,
  .testimonial-track article{
    min-width:0!important;
    width:100%!important;
    max-width:100%!important;
    scroll-snap-align:center!important;
    margin:0!important;
  }
}

/* Preview do create/checkout: tudo precisa ficar DENTRO do mockup */
.creator-pro-body .phone-live .pro-phone,
.checkout-pro-body .checkout-payment-preview .pro-phone,
#proPhone,
#checkoutPhone,
.creator-pro-body .phone-live .pro-screen,
.checkout-pro-body .checkout-payment-preview .pro-screen,
#phoneScreen,
#checkoutScreen{
  overflow:hidden!important;
}

/* Evento no preview mobile: reduzir conteúdo e garantir player inteiro visível */
@media (max-width:760px){
  .creator-pro-body .phone-live .pro-phone,
  .checkout-pro-body .checkout-payment-preview .pro-phone,
  #proPhone,
  #checkoutPhone{
    width:min(82vw, 276px)!important;
    max-width:276px!important;
    min-width:230px!important;
    min-height:540px!important;
    aspect-ratio:330/650!important;
    margin:0 auto 10px!important;
  }

  .creator-pro-body .phone-live,
  .checkout-pro-body .checkout-payment-preview{
    margin-top:12px!important;
    margin-bottom:12px!important;
  }

  .creator-pro-body .phone-live .event-screen,
  .checkout-pro-body .checkout-payment-preview .event-screen,
  .creator-pro-body .phone-live .event-screen-has-fixed-player,
  .checkout-pro-body .checkout-payment-preview .event-screen-has-fixed-player{
    padding:26px 12px 86px!important;
  }

  .creator-pro-body .phone-live .event-scroll-content,
  .checkout-pro-body .checkout-payment-preview .event-scroll-content{
    padding-bottom:84px!important;
  }

  .creator-pro-body .phone-live .event-screen h2,
  .checkout-pro-body .checkout-payment-preview .event-screen h2,
  .creator-pro-body .phone-live .event-counter-label,
  .checkout-pro-body .checkout-payment-preview .event-counter-label{
    font-size:clamp(2.1rem, 8.4vw, 2.7rem)!important;
    line-height:1.02!important;
    margin:10px 0 12px!important;
  }

  .creator-pro-body .phone-live .event-message,
  .checkout-pro-body .checkout-payment-preview .event-message{
    font-size:.92rem!important;
    line-height:1.32!important;
    max-width:228px!important;
    margin:0 auto 16px!important;
  }

  .creator-pro-body .phone-live .event-count-grid,
  .checkout-pro-body .checkout-payment-preview .event-count-grid{
    gap:10px!important;
  }

  .creator-pro-body .phone-live .event-count-card,
  .checkout-pro-body .checkout-payment-preview .event-count-card{
    border-radius:14px!important;
    padding:12px 8px!important;
  }

  .creator-pro-body .phone-live .event-count-card b,
  .checkout-pro-body .checkout-payment-preview .event-count-card b{
    font-size:2rem!important;
    line-height:1!important;
  }

  .creator-pro-body .phone-live .event-count-card span,
  .checkout-pro-body .checkout-payment-preview .event-count-card span{
    font-size:.82rem!important;
  }

  .creator-pro-body .phone-live .event-screen > .phone-fixed-player,
  .checkout-pro-body .checkout-payment-preview .event-screen > .phone-fixed-player,
  .creator-pro-body .phone-live .event-player.phone-fixed-player,
  .checkout-pro-body .checkout-payment-preview .event-player.phone-fixed-player{
    left:8px!important;
    right:8px!important;
    bottom:8px!important;
    padding:8px 10px!important;
    min-height:58px!important;
    transform:scale(.94)!important;
    transform-origin:bottom center!important;
  }

  .creator-pro-body .phone-live .phone-fixed-player .music-player-thumb,
  .checkout-pro-body .checkout-payment-preview .phone-fixed-player .music-player-thumb,
  .creator-pro-body .phone-live .movie-player .music-player-thumb,
  .checkout-pro-body .checkout-payment-preview .movie-player .music-player-thumb{
    width:42px!important;
    height:42px!important;
    min-width:42px!important;
  }

  .creator-pro-body .phone-live .player-track-text strong,
  .checkout-pro-body .checkout-payment-preview .player-track-text strong{
    font-size:.76rem!important;
    line-height:1.05!important;
  }

  .creator-pro-body .phone-live .player-track-text small,
  .checkout-pro-body .checkout-payment-preview .player-track-text small{
    font-size:.64rem!important;
  }
}

@media (max-width:430px){
  .creator-pro-body .phone-live .pro-phone,
  .checkout-pro-body .checkout-payment-preview .pro-phone,
  #proPhone,
  #checkoutPhone{
    width:min(80vw, 262px)!important;
    max-width:262px!important;
    min-height:520px!important;
  }
}



/* ===== Passada pixel-perfect mobile: iPhone Safari, Android Chrome, 360/390/430px ===== */
html{
  scroll-behavior:smooth!important;
  scroll-padding-top:var(--mimo-anchor-offset, 118px)!important;
}

body{
  overflow-x:hidden!important;
  max-width:100vw!important;
}

body.mobile-ui-lock{
  overflow-x:hidden!important;
}

@supports (height:100dvh){
  body,
  .creator-pro-body,
  .checkout-pro-body,
  .gift-pro-body{
    min-height:100dvh!important;
  }
}

/* Home mobile: header não cobre conteúdo e âncoras param no lugar certo */
@media (max-width:760px){
  html{
    --mimo-anchor-offset:112px;
  }

  body:not(.creator-pro-body):not(.checkout-pro-body) .site-header.site-header-home,
  body:not(.creator-pro-body):not(.checkout-pro-body) .site-header.header-like-print,
  body:not(.creator-pro-body):not(.checkout-pro-body) .site-header.qr-scroll-header{
    top:calc(10px + env(safe-area-inset-top, 0px))!important;
    width:calc(100% - 22px)!important;
    max-width:420px!important;
    left:11px!important;
    right:11px!important;
    transform:none!important;
    padding:10px 12px!important;
    border-radius:24px!important;
    z-index:80!important;
  }

  #como-funciona,
  #produtos,
  #avaliacoes,
  #faq{
    scroll-margin-top:112px!important;
    padding-top:72px!important;
    margin-top:-42px!important;
  }

  .pricing-title,
  .testimonials .section-title,
  .faq .section-title,
  .how .section-title{
    padding-top:4px!important;
  }

  .pricing-main-title,
  .testimonials h2,
  .faq h2{
    position:relative!important;
    z-index:1!important;
  }

  .hero{
    padding-top:calc(150px + env(safe-area-inset-top, 0px))!important;
  }
}

/* Home 360px: textos e cards sem cortar */
@media (max-width:380px){
  body:not(.creator-pro-body):not(.checkout-pro-body) .site-header.site-header-home,
  body:not(.creator-pro-body):not(.checkout-pro-body) .site-header.header-like-print,
  body:not(.creator-pro-body):not(.checkout-pro-body) .site-header.qr-scroll-header{
    width:calc(100% - 18px)!important;
    left:9px!important;
    right:9px!important;
    padding:9px 10px!important;
  }

  .site-header .desktop-nav,
  .site-header.site-header-home .desktop-nav{
    gap:6px!important;
  }

  .site-header .desktop-nav a,
  .site-header.site-header-home .desktop-nav a{
    padding:6px 7px!important;
    font-size:.74rem!important;
  }

  .hero h1{
    font-size:clamp(2.25rem, 12.8vw, 3.05rem)!important;
  }

  .section-title h2,
  .pricing-main-title{
    font-size:clamp(2.15rem, 11vw, 3.05rem)!important;
    line-height:.96!important;
  }

  .plan-card h3{
    font-size:1.62rem!important;
  }

  .price{
    font-size:2.05rem!important;
  }
}

/* Planos: badge pagamento único sempre alinhado e compacto em 360/390/430 */
@media (max-width:760px){
  .plan-card .badge{
    min-height:36px!important;
    padding:8px 13px!important;
    line-height:1!important;
    margin-top:2px!important;
    margin-bottom:26px!important;
    font-size:.82rem!important;
  }

  .plan-card .price{
    margin-bottom:12px!important;
  }

  .plan-card ul.feature-list{
    margin-top:0!important;
  }
}

/* Depoimentos: nada fica pela metade no mobile */
@media (max-width:760px){
  .testimonial-marquee{
    width:100%!important;
    max-width:100%!important;
    overflow:hidden!important;
  }

  .testimonial-row,
  .testimonial-track{
    width:100%!important;
    max-width:100%!important;
    display:flex!important;
    gap:14px!important;
    overflow-x:auto!important;
    overflow-y:hidden!important;
    padding:0 18px 14px!important;
    margin:0!important;
    scroll-snap-type:x mandatory!important;
    animation:none!important;
    transform:none!important;
    -webkit-overflow-scrolling:touch!important;
    scrollbar-width:none!important;
  }

  .testimonial-row::-webkit-scrollbar,
  .testimonial-track::-webkit-scrollbar{
    display:none!important;
  }

  .testimonial-row article,
  .testimonial-track article{
    flex:0 0 calc(100vw - 54px)!important;
    width:calc(100vw - 54px)!important;
    min-width:calc(100vw - 54px)!important;
    max-width:calc(100vw - 54px)!important;
    scroll-snap-align:center!important;
    padding:28px 22px!important;
    min-height:230px!important;
  }
}

/* Create e checkout: sem sobreposição, preview só depois do formulário, tamanho calibrado */
@media (max-width:760px){
  body.creator-pro-body .creator-pro-shell,
  body.checkout-pro-body .checkout-payment-layout,
  body.checkout-pro-body .checkout-pro-shell{
    display:flex!important;
    flex-direction:column!important;
    align-items:stretch!important;
    gap:18px!important;
    padding:calc(18px + env(safe-area-inset-top, 0px)) 18px calc(40px + env(safe-area-inset-bottom, 0px))!important;
    overflow:visible!important;
  }

  body.creator-pro-body .creator-panel,
  body.checkout-pro-body .checkout-pro-panel{
    order:1!important;
    z-index:3!important;
    position:relative!important;
    width:100%!important;
  }

  body.creator-pro-body .phone-live,
  body.checkout-pro-body .checkout-payment-preview{
    order:2!important;
    z-index:1!important;
    position:relative!important;
    display:flex!important;
    visibility:visible!important;
    opacity:1!important;
    width:100%!important;
    height:auto!important;
    margin:10px auto 0!important;
    padding:0!important;
    justify-content:center!important;
    align-items:flex-start!important;
    pointer-events:auto!important;
    transform:none!important;
  }

  body.creator-pro-body .phone-live .pro-phone,
  body.checkout-pro-body .checkout-payment-preview .pro-phone,
  body.creator-pro-body #proPhone,
  body.checkout-pro-body #checkoutPhone{
    width:min(78vw, 274px)!important;
    max-width:274px!important;
    min-width:230px!important;
    height:auto!important;
    min-height:532px!important;
    aspect-ratio:330/650!important;
    margin:0 auto!important;
    transform:none!important;
    overflow:hidden!important;
  }

  body.creator-pro-body .phone-live .pro-screen,
  body.checkout-pro-body .checkout-payment-preview .pro-screen,
  body.creator-pro-body #phoneScreen,
  body.checkout-pro-body #checkoutScreen{
    overflow:hidden!important;
    height:100%!important;
  }

  body.creator-pro-body .site-footer,
  body.checkout-pro-body .site-footer,
  body.creator-pro-body .whatsapp-float,
  body.checkout-pro-body .whatsapp-float{
    display:none!important;
  }

  .pro-step.active,
  .payment-like-print{
    margin-bottom:0!important;
  }

  .pro-progress,
  .payment-progress{
    margin-bottom:22px!important;
  }

  .pro-nav-actions,
  .payment-actions,
  .checkout-actions,
  .wizard-actions{
    margin-top:28px!important;
  }
}

/* 390/430px: preview levemente maior, mas sem invadir formulário */
@media (min-width:381px) and (max-width:430px){
  body.creator-pro-body .phone-live .pro-phone,
  body.checkout-pro-body .checkout-payment-preview .pro-phone,
  body.creator-pro-body #proPhone,
  body.checkout-pro-body #checkoutPhone{
    width:min(80vw, 286px)!important;
    max-width:286px!important;
    min-height:548px!important;
  }
}

/* 360px: preview menor para não encostar no texto/botões */
@media (max-width:380px){
  body.creator-pro-body .phone-live .pro-phone,
  body.checkout-pro-body .checkout-payment-preview .pro-phone,
  body.creator-pro-body #proPhone,
  body.checkout-pro-body #checkoutPhone{
    width:min(76vw, 258px)!important;
    max-width:258px!important;
    min-height:510px!important;
  }
}

/* Player dentro do mockup: nunca sai para fora */
@media (max-width:760px){
  .creator-pro-body .phone-live .event-screen,
  .checkout-pro-body .checkout-payment-preview .event-screen,
  .creator-pro-body .phone-live .event-screen-has-fixed-player,
  .checkout-pro-body .checkout-payment-preview .event-screen-has-fixed-player{
    padding-bottom:88px!important;
  }

  .creator-pro-body .phone-live .event-scroll-content,
  .checkout-pro-body .checkout-payment-preview .event-scroll-content{
    padding-bottom:94px!important;
  }

  .creator-pro-body .phone-live .event-screen > .phone-fixed-player,
  .checkout-pro-body .checkout-payment-preview .event-screen > .phone-fixed-player,
  .creator-pro-body .phone-live .event-player.phone-fixed-player,
  .checkout-pro-body .checkout-payment-preview .event-player.phone-fixed-player,
  .creator-pro-body .phone-live .movie-player.phone-fixed-player,
  .checkout-pro-body .checkout-payment-preview .movie-player.phone-fixed-player{
    left:10px!important;
    right:10px!important;
    bottom:10px!important;
    width:auto!important;
    max-width:calc(100% - 20px)!important;
    min-height:56px!important;
    transform:none!important;
    border-radius:18px!important;
  }
}

/* Fotos selecionadas: visual limpo em 360/390/430 */
@media (max-width:760px){
  .photo-strip,
  #uploadPreview{
    display:grid!important;
    grid-template-columns:repeat(3,minmax(0,1fr))!important;
    gap:10px!important;
    margin-top:16px!important;
  }

  .photo-strip img,
  #uploadPreview img{
    height:clamp(88px, 26vw, 116px)!important;
    object-fit:cover!important;
  }
}

@media (max-width:430px){
  .photo-strip,
  #uploadPreview{
    grid-template-columns:repeat(2,minmax(0,1fr))!important;
  }

  .photo-strip img,
  #uploadPreview img{
    height:clamp(110px, 38vw, 140px)!important;
  }
}

/* Android Chrome/Safari: barras internas escondidas no preview sem quebrar a rolagem real */
@media (hover:none) and (pointer:coarse){
  .pro-screen,
  .event-scroll-content,
  .movie-poster-scroll,
  .birthday-scroll-content,
  .birthday-screen,
  .elegant-screen{
    scrollbar-width:none!important;
    -ms-overflow-style:none!important;
  }

  .pro-screen::-webkit-scrollbar,
  .event-scroll-content::-webkit-scrollbar,
  .movie-poster-scroll::-webkit-scrollbar,
  .birthday-scroll-content::-webkit-scrollbar,
  .birthday-screen::-webkit-scrollbar,
  .elegant-screen::-webkit-scrollbar{
    display:none!important;
    width:0!important;
    height:0!important;
  }
}


/* ===== Hotfix mobile específico: cards, etapas e superview ===== */
@media (max-width: 760px){
  /* 1) Cards da home: separar preço do selo "Pagamento único" */
  .plans-grid{
    grid-template-columns:1fr!important;
  }
  .plan-card{
    padding:28px 22px 24px!important;
  }
  .plan-card .old-price{
    margin:0 0 6px!important;
  }
  .plan-card .price{
    display:flex!important;
    flex-direction:column!important;
    align-items:flex-start!important;
    gap:8px!important;
    line-height:1!important;
    margin:10px 0 0!important;
  }
  .plan-card .price small{
    margin:0!important;
    line-height:1.1!important;
  }
  .plan-card .badge,
  .plan-card .new-badge{
    position:static!important;
    top:auto!important;
    right:auto!important;
    left:auto!important;
    bottom:auto!important;
    display:inline-flex!important;
    align-items:center!important;
    width:auto!important;
    max-width:100%!important;
    margin:16px 0 26px!important;
    padding:9px 16px!important;
    line-height:1.1!important;
    transform:none!important;
    white-space:nowrap!important;
    vertical-align:top!important;
  }

  /* 2) Editor/checkout mobile: mais separação entre superview e etapas */
  .creator-pro-shell,
  .checkout-pro-shell,
  .checkout-payment-layout{
    gap:24px!important;
  }
  .phone-live,
  .checkout-payment-preview{
    display:grid!important;
    justify-content:center!important;
    width:100%!important;
    margin:0 auto 28px!important;
  }
  .phone-live{
    order:-1!important;
  }
  .phone-live .pro-phone,
  .checkout-payment-preview .pro-phone{
    width:min(100%, 320px)!important;
    height:640px!important;
    margin:0 auto!important;
  }
  .creator-panel,
  .checkout-pro-panel{
    position:relative!important;
    z-index:2!important;
    margin-top:0!important;
  }
  .pro-progress,
  .payment-progress{
    position:relative!important;
    z-index:6!important;
    display:flex!important;
    align-items:center!important;
    flex-wrap:nowrap!important;
    justify-content:flex-start!important;
    gap:8px!important;
    width:100%!important;
    max-width:100%!important;
    margin:0 0 26px!important;
    padding:0 0 2px!important;
    overflow-x:auto!important;
    overflow-y:hidden!important;
    white-space:nowrap!important;
    scrollbar-width:none!important;
    -webkit-overflow-scrolling:touch!important;
  }
  .pro-progress::-webkit-scrollbar,
  .payment-progress::-webkit-scrollbar{
    display:none!important;
  }
  .pro-progress span,
  .payment-progress span{
    width:24px!important;
    height:24px!important;
    min-width:24px!important;
    flex:0 0 24px!important;
    border-width:2px!important;
  }
  .pro-progress i,
  .payment-progress i{
    width:34px!important;
    min-width:34px!important;
    flex:0 0 34px!important;
    height:3px!important;
  }

  /* 3) Superview do celular: manter proporção do PC e player dentro da tela */
  .pro-phone,
  .pro-screen{
    overflow:hidden!important;
  }
  .event-screen-has-fixed-player{
    display:flex!important;
    flex-direction:column!important;
    min-height:100%!important;
    height:100%!important;
    padding:14px!important;
    overflow:hidden!important;
  }
  .event-screen-has-fixed-player .event-scroll-content{
    flex:1 1 auto!important;
    min-height:0!important;
    overflow-y:auto!important;
    overflow-x:hidden!important;
    padding:0 0 92px!important;
  }
  .event-screen-has-fixed-player .phone-fixed-player,
  .event-screen-has-fixed-player .event-player.phone-fixed-player,
  .event-screen-has-fixed-player .movie-player.phone-fixed-player{
    position:absolute!important;
    left:14px!important;
    right:14px!important;
    bottom:12px!important;
    width:auto!important;
    max-width:none!important;
    margin:0!important;
    z-index:25!important;
  }
  .event-screen-has-fixed-player .event-photo{
    height:220px!important;
    margin-bottom:10px!important;
  }
  .event-screen-has-fixed-player h2{
    font-size:2.6rem!important;
    line-height:.95!important;
    margin:0 0 10px!important;
  }
  .event-screen-has-fixed-player .event-message{
    max-width:260px!important;
    font-size:.94rem!important;
    line-height:1.32!important;
    margin:0 auto 16px!important;
  }
  .event-screen-has-fixed-player .event-counter-label{
    font-size:2.12rem!important;
    margin-bottom:10px!important;
  }
  .event-screen-has-fixed-player .event-count-grid{
    gap:12px!important;
  }
  .event-screen-has-fixed-player .event-count-card{
    min-height:82px!important;
  }
}

@media (max-width: 420px){
  .phone-live .pro-phone,
  .checkout-payment-preview .pro-phone{
    width:min(100%, 300px)!important;
    height:600px!important;
  }
  .event-screen-has-fixed-player .event-photo{
    height:204px!important;
  }
  .event-screen-has-fixed-player h2{
    font-size:2.38rem!important;
  }
}



/* ===== Restauração das cores originais de fundo da HOME ===== */
/* Mantém as correções mobile, mas devolve o visual vinho/preto da home mostrado nos prints. */
html{
  background:#050000!important;
}

body:not(.creator-pro-body):not(.checkout-pro-body):not(.gift-pro-body){
  background:
    radial-gradient(circle at 68% 8%, rgba(152,24,28,.28), transparent 34%),
    linear-gradient(180deg,#120505 0%,#080000 42%,#050000 100%)!important;
  color:var(--text)!important;
}

body:not(.creator-pro-body):not(.checkout-pro-body):not(.gift-pro-body) .hero,
body:not(.creator-pro-body):not(.checkout-pro-body):not(.gift-pro-body) .hero-reference{
  background:transparent!important;
}

body:not(.creator-pro-body):not(.checkout-pro-body):not(.gift-pro-body) .how,
body:not(.creator-pro-body):not(.checkout-pro-body):not(.gift-pro-body) #como-funciona{
  background:
    radial-gradient(circle at 50% 0%, rgba(90,9,12,.22), transparent 38%),
    linear-gradient(180deg,#090000 0%,#120101 100%)!important;
}

body:not(.creator-pro-body):not(.checkout-pro-body):not(.gift-pro-body) .pricing,
body:not(.creator-pro-body):not(.checkout-pro-body):not(.gift-pro-body) #produtos{
  background:
    radial-gradient(circle at 50% 12%, rgba(120,18,22,.18), transparent 42%),
    linear-gradient(180deg,#0b0000 0%,#120101 36%,#070000 100%)!important;
}

body:not(.creator-pro-body):not(.checkout-pro-body):not(.gift-pro-body) .examples,
body:not(.creator-pro-body):not(.checkout-pro-body):not(.gift-pro-body) #exemplos{
  background:
    radial-gradient(circle at 50% 12%, rgba(90,9,12,.18), transparent 42%),
    linear-gradient(180deg,#080000 0%,#0b0000 100%)!important;
}

body:not(.creator-pro-body):not(.checkout-pro-body):not(.gift-pro-body) .testimonials,
body:not(.creator-pro-body):not(.checkout-pro-body):not(.gift-pro-body) #avaliacoes{
  background:
    radial-gradient(circle at 50% 12%, rgba(120,18,22,.16), transparent 44%),
    linear-gradient(180deg,#100101 0%,#050000 100%)!important;
}

body:not(.creator-pro-body):not(.checkout-pro-body):not(.gift-pro-body) .faq,
body:not(.creator-pro-body):not(.checkout-pro-body):not(.gift-pro-body) #faq{
  background:
    radial-gradient(circle at 50% 0%, rgba(80,8,10,.14), transparent 42%),
    linear-gradient(180deg,#080000 0%,#050000 100%)!important;
}

body:not(.creator-pro-body):not(.checkout-pro-body):not(.gift-pro-body) .footer-reference-clean,
body:not(.creator-pro-body):not(.checkout-pro-body):not(.gift-pro-body) .site-footer{
  background:#000!important;
}

/* Não alterar os fundos específicos de criação, checkout e página publicada */
body.creator-pro-body,
body.checkout-pro-body,
body.gift-pro-body{
  background:inherit;
}



/* ===== FABLE FIX: restaura cores e corrige somente mobile ===== */

/* Cores originais da HOME: vinho/preto, sem preto chapado nas seções */
html{
  background:#050000!important;
}

body:not(.creator-pro-body):not(.checkout-pro-body):not(.gift-pro-body){
  background:
    radial-gradient(circle at 68% 8%, rgba(152,24,28,.28), transparent 34%),
    linear-gradient(180deg,#120505 0%,#080000 42%,#050000 100%)!important;
  color:var(--text)!important;
}

body:not(.creator-pro-body):not(.checkout-pro-body):not(.gift-pro-body) .hero,
body:not(.creator-pro-body):not(.checkout-pro-body):not(.gift-pro-body) .hero-reference{
  background:transparent!important;
}

body:not(.creator-pro-body):not(.checkout-pro-body):not(.gift-pro-body) .how,
body:not(.creator-pro-body):not(.checkout-pro-body):not(.gift-pro-body) #como-funciona{
  background:
    radial-gradient(circle at 50% 0%, rgba(90,9,12,.22), transparent 38%),
    linear-gradient(180deg,#090000 0%,#120101 100%)!important;
}

body:not(.creator-pro-body):not(.checkout-pro-body):not(.gift-pro-body) .pricing,
body:not(.creator-pro-body):not(.checkout-pro-body):not(.gift-pro-body) #produtos{
  background:
    radial-gradient(circle at 50% 12%, rgba(120,18,22,.18), transparent 42%),
    linear-gradient(180deg,#0b0000 0%,#120101 36%,#070000 100%)!important;
}

body:not(.creator-pro-body):not(.checkout-pro-body):not(.gift-pro-body) .examples,
body:not(.creator-pro-body):not(.checkout-pro-body):not(.gift-pro-body) #exemplos{
  background:
    radial-gradient(circle at 50% 12%, rgba(90,9,12,.18), transparent 42%),
    linear-gradient(180deg,#080000 0%,#0b0000 100%)!important;
}

body:not(.creator-pro-body):not(.checkout-pro-body):not(.gift-pro-body) .testimonials,
body:not(.creator-pro-body):not(.checkout-pro-body):not(.gift-pro-body) #avaliacoes{
  background:
    radial-gradient(circle at 50% 12%, rgba(120,18,22,.16), transparent 44%),
    linear-gradient(180deg,#100101 0%,#050000 100%)!important;
}

body:not(.creator-pro-body):not(.checkout-pro-body):not(.gift-pro-body) .faq,
body:not(.creator-pro-body):not(.checkout-pro-body):not(.gift-pro-body) #faq{
  background:
    radial-gradient(circle at 50% 0%, rgba(80,8,10,.14), transparent 42%),
    linear-gradient(180deg,#080000 0%,#050000 100%)!important;
}

body:not(.creator-pro-body):not(.checkout-pro-body):not(.gift-pro-body) .footer-reference-clean,
body:not(.creator-pro-body):not(.checkout-pro-body):not(.gift-pro-body) .site-footer{
  background:#000!important;
}

/* Mobile: o selo "Pagamento único" não pode encostar/sobrepor o preço */
@media (max-width:760px){
  body:not(.creator-pro-body):not(.checkout-pro-body):not(.gift-pro-body) #produtos .plan-card{
    padding-top:28px!important;
  }

  body:not(.creator-pro-body):not(.checkout-pro-body):not(.gift-pro-body) #produtos .plan-card .old-price{
    display:block!important;
    margin:0 0 8px!important;
    line-height:1.1!important;
  }

  body:not(.creator-pro-body):not(.checkout-pro-body):not(.gift-pro-body) #produtos .plan-card .price{
    display:block!important;
    margin:0!important;
    padding:0!important;
    line-height:.98!important;
    min-height:0!important;
    position:relative!important;
    z-index:2!important;
  }

  body:not(.creator-pro-body):not(.checkout-pro-body):not(.gift-pro-body) #produtos .plan-card .price small{
    display:block!important;
    margin:0 0 8px!important;
    line-height:1.1!important;
  }

  body:not(.creator-pro-body):not(.checkout-pro-body):not(.gift-pro-body) #produtos .plan-card .price + .badge,
  body:not(.creator-pro-body):not(.checkout-pro-body):not(.gift-pro-body) #produtos .plan-card .price + .new-badge{
    position:relative!important;
    top:auto!important;
    left:auto!important;
    right:auto!important;
    bottom:auto!important;
    transform:none!important;
    display:inline-flex!important;
    width:auto!important;
    max-width:100%!important;
    clear:both!important;
    margin:30px 0 34px!important;
    padding:9px 16px!important;
    align-items:center!important;
    justify-content:center!important;
    line-height:1.05!important;
    white-space:nowrap!important;
    z-index:1!important;
  }
}

/* Mobile/tablet: as bolinhas ficam dentro da área do formulário e não por cima do superview */
@media (max-width:760px){
  body.creator-pro-body .creator-pro-shell,
  body.checkout-pro-body .checkout-payment-layout,
  body.checkout-pro-body .checkout-pro-shell{
    display:flex!important;
    flex-direction:column!important;
    align-items:stretch!important;
    gap:24px!important;
    overflow:visible!important;
  }

  body.creator-pro-body .creator-panel,
  body.checkout-pro-body .checkout-pro-panel{
    order:1!important;
    position:relative!important;
    z-index:5!important;
    width:100%!important;
    max-width:100%!important;
    overflow:visible!important;
  }

  body.creator-pro-body .phone-live,
  body.checkout-pro-body .checkout-payment-preview{
    order:2!important;
    display:flex!important;
    width:100%!important;
    max-width:100%!important;
    height:auto!important;
    justify-content:center!important;
    align-items:flex-start!important;
    position:relative!important;
    inset:auto!important;
    margin:28px auto 0!important;
    padding:0!important;
    z-index:1!important;
    transform:none!important;
  }

  body.creator-pro-body .pro-progress,
  body.checkout-pro-body .payment-progress{
    position:relative!important;
    z-index:8!important;
    display:flex!important;
    flex-wrap:nowrap!important;
    align-items:center!important;
    justify-content:flex-start!important;
    gap:7px!important;
    width:100%!important;
    max-width:100%!important;
    overflow-x:auto!important;
    overflow-y:hidden!important;
    white-space:nowrap!important;
    margin:0 0 28px!important;
    padding:0 0 10px!important;
    scrollbar-width:none!important;
    -webkit-overflow-scrolling:touch!important;
  }

  body.creator-pro-body .pro-progress::-webkit-scrollbar,
  body.checkout-pro-body .payment-progress::-webkit-scrollbar{
    display:none!important;
  }

  body.creator-pro-body .pro-progress span,
  body.checkout-pro-body .payment-progress span{
    width:24px!important;
    height:24px!important;
    min-width:24px!important;
    flex:0 0 24px!important;
  }

  body.creator-pro-body .pro-progress i,
  body.checkout-pro-body .payment-progress i{
    width:36px!important;
    min-width:36px!important;
    flex:0 0 36px!important;
  }
}

/* Mobile: superview no mesmo padrão visual do PC, só redimensionado */
@media (max-width:760px){
  body.creator-pro-body .phone-live .pro-phone,
  body.checkout-pro-body .checkout-payment-preview .pro-phone,
  body.creator-pro-body #proPhone,
  body.checkout-pro-body #checkoutPhone{
    width:min(88vw,330px)!important;
    max-width:330px!important;
    min-width:260px!important;
    height:auto!important;
    min-height:auto!important;
    aspect-ratio:330/650!important;
    margin:0 auto!important;
    overflow:hidden!important;
    transform:none!important;
  }

  body.creator-pro-body .phone-live .pro-screen,
  body.checkout-pro-body .checkout-payment-preview .pro-screen,
  body.creator-pro-body #phoneScreen,
  body.checkout-pro-body #checkoutScreen{
    height:100%!important;
    overflow:hidden!important;
  }

  body.creator-pro-body .phone-live .event-screen,
  body.checkout-pro-body .checkout-payment-preview .event-screen{
    padding:14px 14px 94px!important;
    overflow:auto!important;
  }

  body.creator-pro-body .phone-live .event-photo,
  body.checkout-pro-body .checkout-payment-preview .event-photo{
    height:236px!important;
  }

  body.creator-pro-body .phone-live .event-screen h2,
  body.checkout-pro-body .checkout-payment-preview .event-screen h2{
    font-size:3.15rem!important;
    line-height:.95!important;
    margin:0 0 12px!important;
  }

  body.creator-pro-body .phone-live .event-message,
  body.checkout-pro-body .checkout-payment-preview .event-message{
    font-size:1rem!important;
    line-height:1.34!important;
    max-width:286px!important;
    margin:0 auto 18px!important;
  }

  body.creator-pro-body .phone-live .event-counter-label,
  body.checkout-pro-body .checkout-payment-preview .event-counter-label{
    font-size:2.45rem!important;
    line-height:1!important;
    margin-top:2px!important;
    margin-bottom:12px!important;
  }

  body.creator-pro-body .phone-live .event-count-grid,
  body.checkout-pro-body .checkout-payment-preview .event-count-grid{
    gap:18px 16px!important;
    margin:0 auto 10px!important;
  }

  body.creator-pro-body .phone-live .event-count-card,
  body.checkout-pro-body .checkout-payment-preview .event-count-card{
    min-height:94px!important;
    padding:10px 8px!important;
    border-radius:14px!important;
  }

  body.creator-pro-body .phone-live .event-count-card b,
  body.checkout-pro-body .checkout-payment-preview .event-count-card b{
    font-size:1.05rem!important;
  }
}

/* Player: trava a lateral da música dentro do mockup */
.phone-fixed-player,
.event-player.phone-fixed-player,
.movie-player.phone-fixed-player,
.fixed-music-player{
  max-width:calc(100% - 28px)!important;
  left:14px!important;
  right:14px!important;
  bottom:12px!important;
  width:auto!important;
  overflow:hidden!important;
  box-sizing:border-box!important;
}

.phone-fixed-player .player-track,
.phone-fixed-player .player-track-text,
.event-player .player-track,
.event-player .player-track-text,
.movie-player .player-track,
.movie-player .player-track-text,
.fixed-music-player .player-track,
.fixed-music-player .player-track-text{
  min-width:0!important;
  overflow:hidden!important;
}

.phone-fixed-player strong,
.event-player strong,
.movie-player strong,
.fixed-music-player strong,
.phone-fixed-player small,
.event-player small,
.movie-player small,
.fixed-music-player small{
  max-width:100%!important;
  overflow:hidden!important;
  text-overflow:ellipsis!important;
  white-space:nowrap!important;
}



/* ===== Correção final: depoimentos com movimento + superview acima das etapas no mobile ===== */

/* Depoimentos: volta o efeito de passar para o lado mostrando o próximo card */
@keyframes mimoqrTestimonialsAutoSlide{
  0%{ transform:translate3d(0,0,0); }
  100%{ transform:translate3d(-50%,0,0); }
}

.testimonial-marquee{
  overflow:hidden!important;
  width:100%!important;
  max-width:100vw!important;
}

.testimonial-row.marquee-left-to-right,
.testimonial-track.marquee-left-to-right{
  display:flex!important;
  flex-wrap:nowrap!important;
  width:max-content!important;
  max-width:none!important;
  gap:22px!important;
  overflow:visible!important;
  margin:0!important;
  padding:0!important;
  animation:mimoqrTestimonialsAutoSlide 34s linear infinite!important;
  transform:translate3d(0,0,0);
  will-change:transform;
}

.testimonial-row.marquee-left-to-right:hover,
.testimonial-track.marquee-left-to-right:hover{
  animation-play-state:paused!important;
}

.testimonial-row.marquee-left-to-right article,
.testimonial-track.marquee-left-to-right article{
  flex:0 0 390px!important;
  width:390px!important;
  min-width:390px!important;
  max-width:390px!important;
  scroll-snap-align:none!important;
}

@media (max-width:760px){
  .testimonial-marquee{
    overflow:hidden!important;
    width:100%!important;
    max-width:100vw!important;
    margin-left:0!important;
    margin-right:0!important;
  }

  .testimonial-row.marquee-left-to-right,
  .testimonial-track.marquee-left-to-right{
    display:flex!important;
    flex-wrap:nowrap!important;
    width:max-content!important;
    max-width:none!important;
    gap:14px!important;
    overflow:visible!important;
    overflow-x:visible!important;
    margin:0!important;
    padding:0!important;
    scroll-snap-type:none!important;
    animation:mimoqrTestimonialsAutoSlide 28s linear infinite!important;
    transform:translate3d(0,0,0);
  }

  .testimonial-row.marquee-left-to-right article,
  .testimonial-track.marquee-left-to-right article{
    flex:0 0 calc(82vw)!important;
    width:calc(82vw)!important;
    min-width:calc(82vw)!important;
    max-width:calc(82vw)!important;
    padding:26px 22px!important;
    min-height:220px!important;
  }
}

/* Mobile: superview/preview fica acima das etapas e com folga para não sobrepor bolinhas */
@media (max-width:760px){
  body.creator-pro-body .creator-pro-shell,
  body.checkout-pro-body .checkout-payment-layout,
  body.checkout-pro-body .checkout-pro-shell{
    display:flex!important;
    flex-direction:column!important;
    align-items:stretch!important;
    gap:0!important;
  }

  body.creator-pro-body .phone-live,
  body.checkout-pro-body .checkout-payment-preview{
    order:1!important;
    position:relative!important;
    inset:auto!important;
    z-index:1!important;
    display:flex!important;
    width:100%!important;
    max-width:100%!important;
    justify-content:center!important;
    align-items:flex-start!important;
    margin:-8px auto 54px!important;
    padding:0!important;
    transform:none!important;
  }

  body.creator-pro-body .creator-panel,
  body.checkout-pro-body .checkout-pro-panel{
    order:2!important;
    position:relative!important;
    z-index:3!important;
    width:100%!important;
    max-width:100%!important;
    margin:0!important;
    overflow:visible!important;
  }

  body.creator-pro-body .pro-progress,
  body.checkout-pro-body .payment-progress{
    position:relative!important;
    z-index:4!important;
    display:flex!important;
    flex-wrap:nowrap!important;
    width:100%!important;
    max-width:100%!important;
    overflow-x:auto!important;
    overflow-y:hidden!important;
    margin:0 0 28px!important;
    padding:0 0 10px!important;
    white-space:nowrap!important;
    scrollbar-width:none!important;
    -webkit-overflow-scrolling:touch!important;
    transform:none!important;
  }

  body.creator-pro-body .pro-progress::-webkit-scrollbar,
  body.checkout-pro-body .payment-progress::-webkit-scrollbar{
    display:none!important;
  }

  body.creator-pro-body .phone-live .pro-phone,
  body.checkout-pro-body .checkout-payment-preview .pro-phone,
  body.creator-pro-body #proPhone,
  body.checkout-pro-body #checkoutPhone{
    width:min(86vw,320px)!important;
    max-width:320px!important;
    min-width:250px!important;
    height:auto!important;
    aspect-ratio:330/650!important;
    margin:0 auto!important;
    transform:none!important;
  }
}

@media (max-width:380px){
  body.creator-pro-body .phone-live,
  body.checkout-pro-body .checkout-payment-preview{
    margin:-10px auto 58px!important;
  }

  body.creator-pro-body .phone-live .pro-phone,
  body.checkout-pro-body .checkout-payment-preview .pro-phone,
  body.creator-pro-body #proPhone,
  body.checkout-pro-body #checkoutPhone{
    width:min(84vw,292px)!important;
    max-width:292px!important;
    min-width:238px!important;
  }
}



/* ===== Correção real: depoimentos arrastáveis/automáticos + superview mais acima ===== */

/* Depoimentos: faixa rolável e visível, com movimento por JS e fallback por CSS */
.testimonial-marquee{
  width:100%!important;
  max-width:100vw!important;
  overflow-x:auto!important;
  overflow-y:hidden!important;
  -webkit-overflow-scrolling:touch!important;
  scrollbar-width:none!important;
  touch-action:pan-x!important;
  cursor:grab!important;
}

.testimonial-marquee:active{
  cursor:grabbing!important;
}

.testimonial-marquee::-webkit-scrollbar{
  display:none!important;
}

.testimonial-row,
.testimonial-track,
.testimonial-row.marquee-left-to-right,
.testimonial-track.marquee-left-to-right{
  display:flex!important;
  flex-wrap:nowrap!important;
  gap:22px!important;
  width:max-content!important;
  max-width:none!important;
  min-width:max-content!important;
  overflow:visible!important;
  overflow-x:visible!important;
  margin:0!important;
  padding:0 28px!important;
  transform:none!important;
  animation:none!important;
  will-change:auto!important;
}

.testimonial-row article,
.testimonial-track article,
.testimonial-row.marquee-left-to-right article,
.testimonial-track.marquee-left-to-right article{
  flex:0 0 390px!important;
  width:390px!important;
  min-width:390px!important;
  max-width:390px!important;
}

@media (max-width:760px){
  .testimonial-marquee{
    overflow-x:auto!important;
    overflow-y:hidden!important;
    max-width:100vw!important;
    margin-left:0!important;
    margin-right:0!important;
    padding:0!important;
    scroll-snap-type:x proximity!important;
  }

  .testimonial-row,
  .testimonial-track,
  .testimonial-row.marquee-left-to-right,
  .testimonial-track.marquee-left-to-right{
    gap:14px!important;
    padding:0 18px 10px!important;
  }

  .testimonial-row article,
  .testimonial-track article,
  .testimonial-row.marquee-left-to-right article,
  .testimonial-track.marquee-left-to-right article{
    flex:0 0 calc(84vw)!important;
    width:calc(84vw)!important;
    min-width:calc(84vw)!important;
    max-width:calc(84vw)!important;
    scroll-snap-align:center!important;
  }
}

/* Superview: deixar bem acima das etapas no mobile, sem encostar nas bolinhas */
@media (max-width:760px){
  body.creator-pro-body .creator-pro-shell,
  body.checkout-pro-body .checkout-payment-layout,
  body.checkout-pro-body .checkout-pro-shell{
    display:flex!important;
    flex-direction:column!important;
    gap:0!important;
  }

  body.creator-pro-body .phone-live,
  body.checkout-pro-body .checkout-payment-preview{
    order:1!important;
    position:relative!important;
    z-index:1!important;
    margin:-28px auto 112px!important;
    padding:0!important;
    transform:none!important;
  }

  body.creator-pro-body .creator-panel,
  body.checkout-pro-body .checkout-pro-panel{
    order:2!important;
    position:relative!important;
    z-index:3!important;
    margin-top:0!important;
    padding-top:0!important;
  }

  body.creator-pro-body .pro-progress,
  body.checkout-pro-body .payment-progress{
    position:relative!important;
    z-index:4!important;
    margin-top:0!important;
    margin-bottom:30px!important;
    transform:none!important;
  }

  body.creator-pro-body .phone-live .pro-phone,
  body.checkout-pro-body .checkout-payment-preview .pro-phone,
  body.creator-pro-body #proPhone,
  body.checkout-pro-body #checkoutPhone{
    width:min(84vw, 310px)!important;
    max-width:310px!important;
  }
}

@media (max-width:380px){
  body.creator-pro-body .phone-live,
  body.checkout-pro-body .checkout-payment-preview{
    margin:-30px auto 124px!important;
  }

  body.creator-pro-body .phone-live .pro-phone,
  body.checkout-pro-body .checkout-payment-preview .pro-phone,
  body.creator-pro-body #proPhone,
  body.checkout-pro-body #checkoutPhone{
    width:min(82vw, 286px)!important;
    max-width:286px!important;
  }
}


/* ===== Depoimentos: movimento da esquerda para direita ===== */
.testimonial-marquee{
  direction:ltr!important;
}
.testimonial-row,
.testimonial-track{
  direction:ltr!important;
}



/* ===== Ajuste cirúrgico: volta design antigo do preview e só adiciona borda inferior preta ===== */

/* Botões dos Exemplos de Páginas centralizados no mobile, sem mexer no preview */
@media (max-width:760px){
  #exemplos .interactive-example-tabs.static-example-tabs,
  #exemplos .interactive-example-tabs,
  #exemplos .static-example-tabs{
    display:grid!important;
    grid-template-columns:repeat(2, minmax(132px, 1fr))!important;
    justify-content:center!important;
    justify-items:stretch!important;
    align-items:center!important;
    gap:10px!important;
    width:min(100%, 352px)!important;
    max-width:352px!important;
    margin:0 auto 26px!important;
    padding:0!important;
    overflow:visible!important;
    overflow-x:visible!important;
    text-align:center!important;
  }

  #exemplos .interactive-example-tabs.static-example-tabs button,
  #exemplos .interactive-example-tabs button,
  #exemplos .static-example-tabs button{
    width:100%!important;
    min-width:0!important;
    max-width:100%!important;
    flex:none!important;
    justify-content:center!important;
    text-align:center!important;
    white-space:normal!important;
    line-height:1.15!important;
    padding:12px 10px!important;
    font-size:.84rem!important;
  }
}

@media (max-width:380px){
  #exemplos .interactive-example-tabs.static-example-tabs,
  #exemplos .interactive-example-tabs,
  #exemplos .static-example-tabs{
    width:min(100%, 328px)!important;
    grid-template-columns:repeat(2, minmax(118px, 1fr))!important;
    gap:8px!important;
  }

  #exemplos .interactive-example-tabs.static-example-tabs button,
  #exemplos .interactive-example-tabs button,
  #exemplos .static-example-tabs button{
    font-size:.78rem!important;
    padding:11px 8px!important;
  }
}

/* Só cria a borda/queixo preto inferior do celular, sem alterar o design interno antigo */
.creator-pro-body .phone-live .pro-phone,
.checkout-pro-body .checkout-payment-preview .pro-phone,
.creator-pro-body #proPhone,
.checkout-pro-body #checkoutPhone{
  position:relative!important;
  overflow:hidden!important;
}

/* Máscara visual na parte inferior: aparece como a borda preta do celular sem empurrar/mudar a página */
.creator-pro-body .phone-live .pro-phone::after,
.checkout-pro-body .checkout-payment-preview .pro-phone::after,
.creator-pro-body #proPhone::after,
.checkout-pro-body #checkoutPhone::after{
  content:""!important;
  position:absolute!important;
  left:0!important;
  right:0!important;
  bottom:0!important;
  height:24px!important;
  background:#070707!important;
  border-bottom-left-radius:36px!important;
  border-bottom-right-radius:36px!important;
  pointer-events:none!important;
  z-index:60!important;
}

/* Barrinha discreta do aparelho dentro da borda preta */
.creator-pro-body .phone-live .pro-phone::before,
.checkout-pro-body .checkout-payment-preview .pro-phone::before,
.creator-pro-body #proPhone::before,
.checkout-pro-body #checkoutPhone::before{
  content:""!important;
  position:absolute!important;
  left:50%!important;
  bottom:9px!important;
  width:54px!important;
  height:4px!important;
  transform:translateX(-50%)!important;
  border-radius:999px!important;
  background:rgba(255,255,255,.10)!important;
  pointer-events:none!important;
  z-index:61!important;
}

@media (max-width:760px){
  .creator-pro-body .phone-live .pro-phone::after,
  .checkout-pro-body .checkout-payment-preview .pro-phone::after,
  .creator-pro-body #proPhone::after,
  .checkout-pro-body #checkoutPhone::after{
    height:26px!important;
  }

  .creator-pro-body .phone-live .pro-phone::before,
  .checkout-pro-body .checkout-payment-preview .pro-phone::before,
  .creator-pro-body #proPhone::before,
  .checkout-pro-body #checkoutPhone::before{
    bottom:10px!important;
  }
}



/* ===== Ajuste pedido: borda arredondada da mídia de música ===== */
.phone-fixed-player,
.movie-player.phone-fixed-player,
.event-player.phone-fixed-player,
.birthday-player.phone-fixed-player,
.fixed-music-player{
  border-radius:18px!important;
  overflow:hidden!important;
}

.event-player{
  border-radius:18px!important;
  overflow:hidden!important;
}

.delux-music-card,
.music-card.delux-music-card,
.phone-delux .music-card{
  border-radius:14px!important;
  overflow:hidden!important;
}

/* Garante que imagem e botão respeitem a borda arredondada do card */
.phone-fixed-player .music-player-thumb,
.movie-player.phone-fixed-player .music-player-thumb,
.event-player.phone-fixed-player .music-player-thumb,
.birthday-player.phone-fixed-player .music-player-thumb,
.delux-music-card .music-player-thumb,
.delux-music-card .music-card-media{
  overflow:hidden!important;
  border-radius:8px!important;
}



/* ===== Ajuste mobile/tablet: bordas do preview sem mudar o design ===== */
/* Foco nos prints enviados: Delux, Aniversário, Poster e Evento Especial no preview do celular. */
@media (max-width:1100px){
  body.creator-pro-body .phone-live .pro-phone,
  body.checkout-pro-body .checkout-payment-preview .pro-phone,
  body.creator-pro-body #proPhone,
  body.checkout-pro-body #checkoutPhone{
    background:#070707!important;
    overflow:hidden!important;
  }

  /* Desliga as máscaras antigas que cobriam conteúdo/player. */
  body.creator-pro-body .phone-live .pro-phone::before,
  body.creator-pro-body .phone-live .pro-phone::after,
  body.checkout-pro-body .checkout-payment-preview .pro-phone::before,
  body.checkout-pro-body .checkout-payment-preview .pro-phone::after,
  body.creator-pro-body #proPhone::before,
  body.creator-pro-body #proPhone::after,
  body.checkout-pro-body #checkoutPhone::before,
  body.checkout-pro-body #checkoutPhone::after{
    content:none!important;
    display:none!important;
  }

  /* Cria o "queixo" preto real do aparelho: a tela interna fica um pouco menor,
     mostrando a borda preta de baixo sem empurrar ou redesenhar o preview. */
  body.creator-pro-body .phone-live .pro-screen,
  body.checkout-pro-body .checkout-payment-preview .pro-screen,
  body.creator-pro-body #phoneScreen,
  body.checkout-pro-body #checkoutScreen{
    height:calc(100% - 28px)!important;
    max-height:calc(100% - 28px)!important;
    margin-bottom:28px!important;
    border-radius:36px!important;
    overflow:hidden!important;
    position:relative!important;
  }

  body.creator-pro-body .phone-live .pro-phone .phone-home,
  body.checkout-pro-body .checkout-payment-preview .pro-phone .phone-home{
    bottom:10px!important;
    z-index:40!important;
  }
}

/* Celular: mantém o preview com o design antigo, só ajusta áreas que estavam sendo cortadas. */
@media (max-width:760px){
  body.creator-pro-body .phone-live,
  body.checkout-pro-body .checkout-payment-preview{
    margin:-28px auto 118px!important;
  }

  body.creator-pro-body .phone-live .pro-screen,
  body.checkout-pro-body .checkout-payment-preview .pro-screen,
  body.creator-pro-body #phoneScreen,
  body.checkout-pro-body #checkoutScreen{
    height:calc(100% - 30px)!important;
    max-height:calc(100% - 30px)!important;
    margin-bottom:30px!important;
  }

  /* Delux: evita os cantos claros na parte de baixo e dá respiro no final. */
  body.creator-pro-body .phone-delux .elegant-screen,
  body.checkout-pro-body .phone-delux .elegant-screen{
    height:100%!important;
    max-height:100%!important;
    overflow-y:auto!important;
    overflow-x:hidden!important;
    padding-bottom:84px!important;
    scroll-padding-bottom:84px!important;
    border-bottom-left-radius:36px!important;
    border-bottom-right-radius:36px!important;
  }

  body.creator-pro-body .phone-delux .elegant-screen::after,
  body.checkout-pro-body .phone-delux .elegant-screen::after{
    content:""!important;
    display:block!important;
    height:42px!important;
    min-height:42px!important;
  }

  /* Aniversário: conteúdo não passa por baixo do notch e player não fica cortado. */
  body.creator-pro-body .phone-aniversario .birthday-screen,
  body.checkout-pro-body .phone-aniversario .birthday-screen{
    height:100%!important;
    max-height:100%!important;
    overflow:hidden!important;
    padding-bottom:0!important;
  }

  body.creator-pro-body .phone-aniversario .birthday-scroll-content,
  body.checkout-pro-body .phone-aniversario .birthday-scroll-content{
    height:100%!important;
    overflow-y:auto!important;
    overflow-x:hidden!important;
    padding-top:48px!important;
    padding-bottom:116px!important;
    scroll-padding-top:48px!important;
    scroll-padding-bottom:116px!important;
  }

  body.creator-pro-body .phone-aniversario .birthday-screen > .phone-fixed-player,
  body.checkout-pro-body .phone-aniversario .birthday-screen > .phone-fixed-player,
  body.creator-pro-body .phone-aniversario .birthday-player.phone-fixed-player,
  body.checkout-pro-body .phone-aniversario .birthday-player.phone-fixed-player{
    bottom:0!important;
    left:0!important;
    right:0!important;
    width:100%!important;
    max-width:100%!important;
    border-radius:0 0 30px 30px!important;
    z-index:80!important;
  }

  /* Poster de Filme: cenas/thumbs e fullscreen respeitam topo e borda inferior. */
  body.creator-pro-body .phone-filme .movie-poster-scroll,
  body.checkout-pro-body .phone-filme .movie-poster-scroll{
    height:100%!important;
    max-height:100%!important;
    overflow-y:auto!important;
    overflow-x:hidden!important;
    padding-top:26px!important;
    padding-bottom:118px!important;
    scroll-padding-bottom:118px!important;
  }

  body.creator-pro-body .phone-filme .movie-poster-screen,
  body.checkout-pro-body .phone-filme .movie-poster-screen{
    height:100%!important;
    max-height:100%!important;
    overflow:hidden!important;
  }

  body.creator-pro-body .phone-filme .movie-fullscreen-player,
  body.checkout-pro-body .phone-filme .movie-fullscreen-player{
    inset:0!important;
    border-radius:36px!important;
    overflow:hidden!important;
  }

  body.creator-pro-body .phone-filme .movie-fullscreen-scene,
  body.checkout-pro-body .phone-filme .movie-fullscreen-scene{
    inset:0!important;
    display:grid!important;
    place-items:center!important;
    padding:52px 0 44px!important;
    box-sizing:border-box!important;
  }

  body.creator-pro-body .phone-filme .movie-fullscreen-img,
  body.checkout-pro-body .phone-filme .movie-fullscreen-img{
    max-height:calc(100% - 96px)!important;
    max-width:100%!important;
    object-fit:contain!important;
  }

  body.creator-pro-body .phone-filme .movie-fullscreen-close,
  body.checkout-pro-body .phone-filme .movie-fullscreen-close{
    top:14px!important;
    right:14px!important;
    z-index:40!important;
  }

  /* Evento Especial: setas do placeholder/fotos ficam dentro da área da foto. */
  body.creator-pro-body .phone-evento .event-photo-wrap,
  body.checkout-pro-body .phone-evento .event-photo-wrap{
    position:relative!important;
    overflow:hidden!important;
  }

  body.creator-pro-body .phone-evento .event-photo-nav.prev,
  body.checkout-pro-body .phone-evento .event-photo-nav.prev{
    left:14px!important;
    right:auto!important;
  }

  body.creator-pro-body .phone-evento .event-photo-nav.next,
  body.checkout-pro-body .phone-evento .event-photo-nav.next{
    right:14px!important;
    left:auto!important;
  }

  body.creator-pro-body .phone-evento .event-scroll-content,
  body.checkout-pro-body .phone-evento .event-scroll-content{
    padding-bottom:116px!important;
    scroll-padding-bottom:116px!important;
  }
}

@media (max-width:380px){
  body.creator-pro-body .phone-live,
  body.checkout-pro-body .checkout-payment-preview{
    margin:-30px auto 126px!important;
  }

  body.creator-pro-body .phone-live .pro-screen,
  body.checkout-pro-body .checkout-payment-preview .pro-screen,
  body.creator-pro-body #phoneScreen,
  body.checkout-pro-body #checkoutScreen{
    height:calc(100% - 32px)!important;
    max-height:calc(100% - 32px)!important;
    margin-bottom:32px!important;
  }
}



/* ===== Correção mobile/tablet dos prints 17:59-18:34 ===== */
/* Não altera o design do PC. Ajusta apenas preview, notch, player e bolinhas em celular/tablet. */
@media (max-width:1100px){
  /* Etapas: cabem na tela e não ficam cortadas na lateral */
  body.creator-pro-body .pro-progress,
  body.checkout-pro-body .payment-progress{
    display:flex!important;
    flex-wrap:nowrap!important;
    align-items:center!important;
    justify-content:center!important;
    width:100%!important;
    max-width:100%!important;
    overflow:hidden!important;
    gap:6px!important;
    margin:0 0 28px!important;
    padding:0 4px 8px!important;
    box-sizing:border-box!important;
  }

  body.creator-pro-body .pro-progress span,
  body.checkout-pro-body .payment-progress span{
    width:24px!important;
    height:24px!important;
    min-width:24px!important;
    flex:0 0 24px!important;
  }

  body.creator-pro-body .pro-progress i,
  body.checkout-pro-body .payment-progress i{
    width:34px!important;
    min-width:22px!important;
    max-width:34px!important;
    flex:0 1 34px!important;
  }

  /* O mockup continua com o design antigo, mas a tela interna respeita notch e borda inferior */
  body.creator-pro-body .phone-live .pro-phone,
  body.checkout-pro-body .checkout-payment-preview .pro-phone,
  body.creator-pro-body #proPhone,
  body.checkout-pro-body #checkoutPhone{
    overflow:hidden!important;
    background:#070707!important;
  }

  body.creator-pro-body .phone-live .pro-screen,
  body.checkout-pro-body .checkout-payment-preview .pro-screen,
  body.creator-pro-body #phoneScreen,
  body.checkout-pro-body #checkoutScreen{
    overflow:hidden!important;
    border-radius:36px!important;
  }

  /* Delux: conteúdo não entra embaixo do notch e não deixa cantos claros no rodapé */
  body.creator-pro-body .phone-delux .elegant-screen,
  body.checkout-pro-body .phone-delux .elegant-screen{
    height:100%!important;
    max-height:100%!important;
    overflow-y:auto!important;
    overflow-x:hidden!important;
    padding-top:64px!important;
    padding-bottom:110px!important;
    scroll-padding-top:64px!important;
    scroll-padding-bottom:110px!important;
    border-radius:36px!important;
    box-sizing:border-box!important;
  }

  body.creator-pro-body .phone-delux .elegant-screen::after,
  body.checkout-pro-body .phone-delux .elegant-screen::after{
    content:""!important;
    display:block!important;
    height:70px!important;
    min-height:70px!important;
  }

  /* Aniversário: o título não fica cortado pelo notch e o player sobe para dentro da tela */
  body.creator-pro-body .phone-aniversario .birthday-screen,
  body.checkout-pro-body .phone-aniversario .birthday-screen{
    height:100%!important;
    max-height:100%!important;
    overflow:hidden!important;
    border-radius:36px!important;
  }

  body.creator-pro-body .phone-aniversario .birthday-scroll-content,
  body.checkout-pro-body .phone-aniversario .birthday-scroll-content{
    height:100%!important;
    max-height:100%!important;
    overflow-y:auto!important;
    overflow-x:hidden!important;
    padding-top:78px!important;
    padding-bottom:150px!important;
    scroll-padding-top:78px!important;
    scroll-padding-bottom:150px!important;
    box-sizing:border-box!important;
  }

  body.creator-pro-body .phone-aniversario .birthday-screen > .phone-fixed-player,
  body.checkout-pro-body .phone-aniversario .birthday-screen > .phone-fixed-player,
  body.creator-pro-body .phone-aniversario .birthday-player.phone-fixed-player,
  body.checkout-pro-body .phone-aniversario .birthday-player.phone-fixed-player{
    left:14px!important;
    right:14px!important;
    bottom:22px!important;
    width:auto!important;
    max-width:calc(100% - 28px)!important;
    min-height:62px!important;
    border-radius:18px!important;
    overflow:hidden!important;
    z-index:90!important;
  }

  /* Evento Especial: player não cobre/corta a mensagem e fica clicável dentro do celular */
  body.creator-pro-body .phone-evento .event-screen,
  body.checkout-pro-body .phone-evento .event-screen{
    height:100%!important;
    max-height:100%!important;
    overflow:hidden!important;
    border-radius:36px!important;
  }

  body.creator-pro-body .phone-evento .event-scroll-content,
  body.checkout-pro-body .phone-evento .event-scroll-content{
    height:100%!important;
    overflow-y:auto!important;
    overflow-x:hidden!important;
    padding-bottom:160px!important;
    scroll-padding-bottom:160px!important;
    box-sizing:border-box!important;
  }

  body.creator-pro-body .phone-evento .event-screen > .phone-fixed-player,
  body.checkout-pro-body .phone-evento .event-screen > .phone-fixed-player,
  body.creator-pro-body .phone-evento .event-player.phone-fixed-player,
  body.checkout-pro-body .phone-evento .event-player.phone-fixed-player{
    left:14px!important;
    right:14px!important;
    bottom:22px!important;
    width:auto!important;
    max-width:calc(100% - 28px)!important;
    min-height:62px!important;
    border-radius:18px!important;
    overflow:hidden!important;
    z-index:90!important;
  }

  /* Evento Especial: setas ficam dentro da moldura da foto/placeholder */
  body.creator-pro-body .phone-evento .event-photo-wrap,
  body.checkout-pro-body .phone-evento .event-photo-wrap{
    position:relative!important;
    overflow:hidden!important;
  }

  body.creator-pro-body .phone-evento .event-photo-nav.prev,
  body.checkout-pro-body .phone-evento .event-photo-nav.prev{
    left:18px!important;
    right:auto!important;
  }

  body.creator-pro-body .phone-evento .event-photo-nav.next,
  body.checkout-pro-body .phone-evento .event-photo-nav.next{
    right:18px!important;
    left:auto!important;
  }

  /* Poster: player e cenas não ficam escondidos/cortados na borda inferior */
  body.creator-pro-body .phone-filme .movie-poster-screen,
  body.checkout-pro-body .phone-filme .movie-poster-screen{
    height:100%!important;
    max-height:100%!important;
    overflow:hidden!important;
    border-radius:36px!important;
  }

  body.creator-pro-body .phone-filme .movie-poster-scroll,
  body.checkout-pro-body .phone-filme .movie-poster-scroll{
    height:100%!important;
    max-height:100%!important;
    overflow-y:auto!important;
    overflow-x:hidden!important;
    padding-top:52px!important;
    padding-bottom:170px!important;
    scroll-padding-top:52px!important;
    scroll-padding-bottom:170px!important;
    box-sizing:border-box!important;
  }

  body.creator-pro-body .phone-filme .movie-player.phone-fixed-player,
  body.checkout-pro-body .phone-filme .movie-player.phone-fixed-player,
  body.creator-pro-body .phone-filme .phone-fixed-player,
  body.checkout-pro-body .phone-filme .phone-fixed-player{
    left:14px!important;
    right:14px!important;
    bottom:22px!important;
    width:auto!important;
    max-width:calc(100% - 28px)!important;
    min-height:62px!important;
    border-radius:18px!important;
    overflow:hidden!important;
    z-index:90!important;
  }

  /* Fullscreen do Poster: imagem não entra no notch e não estoura a borda inferior */
  body.creator-pro-body .phone-filme .movie-fullscreen-player,
  body.checkout-pro-body .phone-filme .movie-fullscreen-player{
    inset:0!important;
    border-radius:36px!important;
    overflow:hidden!important;
    background:#000!important;
  }

  body.creator-pro-body .phone-filme .movie-fullscreen-scene,
  body.checkout-pro-body .phone-filme .movie-fullscreen-scene{
    inset:0!important;
    padding:70px 0 62px!important;
    box-sizing:border-box!important;
    display:grid!important;
    place-items:center!important;
  }

  body.creator-pro-body .phone-filme .movie-fullscreen-img,
  body.checkout-pro-body .phone-filme .movie-fullscreen-img{
    max-width:100%!important;
    max-height:calc(100% - 132px)!important;
    object-fit:contain!important;
  }

  body.creator-pro-body .phone-filme .movie-fullscreen-close,
  body.checkout-pro-body .phone-filme .movie-fullscreen-close{
    top:20px!important;
    right:18px!important;
    z-index:100!important;
  }
}

@media (max-width:390px){
  body.creator-pro-body .pro-progress,
  body.checkout-pro-body .payment-progress{
    gap:5px!important;
    padding-left:2px!important;
    padding-right:2px!important;
  }

  body.creator-pro-body .pro-progress span,
  body.checkout-pro-body .payment-progress span{
    width:22px!important;
    height:22px!important;
    min-width:22px!important;
    flex-basis:22px!important;
  }

  body.creator-pro-body .pro-progress i,
  body.checkout-pro-body .payment-progress i{
    width:28px!important;
    max-width:28px!important;
    flex-basis:28px!important;
  }

  body.creator-pro-body .phone-aniversario .birthday-scroll-content,
  body.checkout-pro-body .phone-aniversario .birthday-scroll-content{
    padding-top:84px!important;
  }

  body.creator-pro-body .phone-delux .elegant-screen,
  body.checkout-pro-body .phone-delux .elegant-screen{
    padding-top:70px!important;
  }
}



/* ===== Correção final das bordas marcadas: Evento Especial e Delux ===== */
/* Mobile/tablet apenas: remove faixa vermelha extra e cria borda preta inferior real no Delux. */
@media (max-width:1100px){
  /* Delux: o fundo interno ocupa 100%, sem deixar faixa vermelha na lateral,
     e o mockup mostra a borda preta inferior. */
  body.creator-pro-body .phone-live .pro-phone:has(.phone-delux),
  body.checkout-pro-body .checkout-payment-preview .pro-phone:has(.phone-delux),
  body.creator-pro-body #proPhone:has(.phone-delux),
  body.checkout-pro-body #checkoutPhone:has(.phone-delux){
    background:#070707!important;
    overflow:hidden!important;
  }

  body.creator-pro-body .phone-live .pro-phone:has(.phone-delux) .pro-screen,
  body.checkout-pro-body .checkout-payment-preview .pro-phone:has(.phone-delux) .pro-screen,
  body.creator-pro-body #proPhone:has(.phone-delux) #phoneScreen,
  body.checkout-pro-body #checkoutPhone:has(.phone-delux) #checkoutScreen{
    height:calc(100% - 34px)!important;
    max-height:calc(100% - 34px)!important;
    margin-bottom:34px!important;
    background:#f8f0e4!important;
    border-radius:36px!important;
    overflow:hidden!important;
  }

  body.creator-pro-body .phone-delux,
  body.checkout-pro-body .phone-delux{
    background:#f8f0e4!important;
    width:100%!important;
    height:100%!important;
    overflow:hidden!important;
    border-radius:58px!important;
  }

  body.creator-pro-body .phone-delux .elegant-screen,
  body.checkout-pro-body .phone-delux .elegant-screen{
    width:100%!important;
    max-width:100%!important;
    margin:0!important;
    left:auto!important;
    right:auto!important;
    background:#f8f0e4!important;
    border-radius:36px!important;
    box-shadow:none!important;
    outline:0!important;
    border:0!important;
  }

  /* Remove qualquer faixa/linha vermelha herdada por trás do Delux */
  body.creator-pro-body .phone-live .pro-screen:has(.phone-delux),
  body.checkout-pro-body .checkout-payment-preview .pro-screen:has(.phone-delux){
    background:#f8f0e4!important;
  }

  /* Evento Especial: remove a borda/faixa vermelha diferente nas laterais.
     Mantém o vermelho padrão uniforme do modelo. */
  body.creator-pro-body .phone-evento,
  body.checkout-pro-body .phone-evento,
  body.creator-pro-body .phone-evento .event-screen,
  body.checkout-pro-body .phone-evento .event-screen,
  body.creator-pro-body .phone-evento .event-scroll-content,
  body.checkout-pro-body .phone-evento .event-scroll-content{
    background:#c91618!important;
    background-image:none!important;
    box-shadow:none!important;
    outline:0!important;
  }

  body.creator-pro-body .phone-live .pro-screen:has(.phone-evento),
  body.checkout-pro-body .checkout-payment-preview .pro-screen:has(.phone-evento){
    background:#c91618!important;
    border-radius:36px!important;
    overflow:hidden!important;
  }

  body.creator-pro-body .phone-evento .event-screen,
  body.checkout-pro-body .phone-evento .event-screen{
    width:100%!important;
    max-width:100%!important;
    margin:0!important;
    border-radius:36px!important;
    overflow:hidden!important;
  }

  body.creator-pro-body .phone-evento .event-scroll-content,
  body.checkout-pro-body .phone-evento .event-scroll-content{
    border-radius:36px!important;
  }
}

/* Ajuste específico para celular menor */
@media (max-width:760px){
  body.creator-pro-body .phone-live .pro-phone:has(.phone-delux) .pro-screen,
  body.checkout-pro-body .checkout-payment-preview .pro-phone:has(.phone-delux) .pro-screen,
  body.creator-pro-body #proPhone:has(.phone-delux) #phoneScreen,
  body.checkout-pro-body #checkoutPhone:has(.phone-delux) #checkoutScreen{
    height:calc(100% - 38px)!important;
    max-height:calc(100% - 38px)!important;
    margin-bottom:38px!important;
  }
}



/* ===== Tela separada: pagamento aprovado / link + QR Code ===== */
.success-pro-body{
  min-height:100vh;
  background:
    radial-gradient(circle at 50% 0%, rgba(139,20,25,.28), transparent 38%),
    linear-gradient(180deg,#160303 0%,#070000 100%)!important;
  color:#fff;
}

.success-release-page{
  min-height:100vh;
  display:grid;
  place-items:center;
  padding:44px 18px;
}

.success-release-card{
  width:min(100%,720px);
  text-align:center;
  background:rgba(20,12,12,.92);
  border:1px solid rgba(255,255,255,.12);
  border-radius:28px;
  padding:34px 26px;
  box-shadow:0 30px 100px rgba(0,0,0,.45);
}

.success-release-check{
  width:78px;
  height:78px;
  margin:0 auto 16px;
  display:grid;
  place-items:center;
  border-radius:999px;
  background:#1fb940;
  color:#fff;
  font-size:2.6rem;
  font-weight:900;
  box-shadow:0 0 0 8px rgba(31,185,64,.14);
}

.success-release-warning{
  background:#d99b10;
  box-shadow:0 0 0 8px rgba(217,155,16,.14);
}

.success-release-card h1{
  margin:0;
  font-size:clamp(2rem,4vw,3rem);
  line-height:1;
}

.success-release-lead{
  color:rgba(255,255,255,.78);
  margin:10px auto 22px;
  max-width:560px;
  font-weight:700;
}

.success-link-wrap{
  margin:18px auto;
  max-width:560px;
  text-align:left;
}

.success-link-wrap label{
  display:block;
  margin:0 0 8px;
  font-weight:900;
  color:#fff;
}

.success-link-field{
  display:flex;
  gap:0;
  border:2px solid #ef151d;
  border-radius:12px;
  overflow:hidden;
  background:#090909;
}

.success-link-field input{
  flex:1;
  min-width:0;
  background:#090909;
  color:#fff;
  border:0;
  padding:14px 14px;
  font-weight:800;
  font-size:1rem;
}

.success-link-field button{
  width:54px;
  border:0;
  background:#ef151d;
  color:#fff;
  font-size:1.15rem;
  cursor:pointer;
}

.success-qr-box{
  width:max-content;
  max-width:100%;
  margin:18px auto 12px;
  background:#fff;
  padding:12px;
  border-radius:10px;
}

.success-qr img{
  display:block;
  width:260px;
  height:260px;
  max-width:70vw;
  max-height:70vw;
}

.success-expiry,
.success-order,
.success-edit-note,
.success-support{
  margin:10px auto;
  color:rgba(255,255,255,.82);
  font-weight:800;
}

.success-actions{
  display:grid;
  grid-template-columns:repeat(2,minmax(0,1fr));
  gap:12px;
  margin:22px auto 12px;
  max-width:620px;
}

.success-actions .btn{
  justify-content:center;
  text-align:center;
}

.success-actions .disabled{
  opacity:.48;
  cursor:not-allowed;
}

.success-support a{
  color:#ff3b57;
  font-weight:900;
}

@media (max-width:640px){
  .success-release-page{ padding:24px 14px; }
  .success-release-card{ padding:28px 18px; border-radius:22px; }
  .success-actions{ grid-template-columns:1fr; }
  .success-link-field input{ font-size:.82rem; }
}


/* ===== Pós-pagamento final: sem edição, QR/link/WhatsApp ===== */
.success-actions{
  grid-template-columns:repeat(3,minmax(0,1fr))!important;
}
.success-edit-note,
.post-payment-edit-callout,
#successEditPage,
#editReleasedPage,
#editReleasedPageSecondary{
  display:none!important;
}
.success-release-card .success-qr img{
  image-rendering:pixelated;
}
@media (max-width:760px){
  .success-actions{ grid-template-columns:1fr!important; }
}



/* ===== Ajuste pedido: pagamento Delux + player/setas do Cartão de Aniversário ===== */
/* Corrige só os pontos dos prints: player do aniversário, setas e respiro do conteúdo. */
.phone-aniversario .birthday-screen,
.checkout-payment-preview .phone-aniversario .birthday-screen,
.gift-pro-body.published-aniversario .published-birthday{
  overflow:hidden!important;
}

.phone-aniversario .birthday-scroll-content,
.checkout-payment-preview .phone-aniversario .birthday-scroll-content{
  padding-bottom:128px!important;
  scroll-padding-bottom:128px!important;
}

/* Player do Cartão de Aniversário com a mesma leitura/posição do Evento Especial */
.phone-aniversario .birthday-player.phone-fixed-player,
.phone-aniversario .phone-fixed-player.birthday-player,
.checkout-payment-preview .phone-aniversario .birthday-player.phone-fixed-player,
.gift-pro-body.published-aniversario .birthday-player.phone-fixed-player{
  position:absolute!important;
  left:14px!important;
  right:14px!important;
  bottom:18px!important;
  width:auto!important;
  max-width:calc(100% - 28px)!important;
  min-height:62px!important;
  padding:10px 12px!important;
  background:#050505!important;
  border:1px solid rgba(255,255,255,.10)!important;
  border-radius:18px!important;
  box-shadow:0 16px 35px rgba(0,0,0,.42)!important;
  z-index:95!important;
  overflow:hidden!important;
}

.phone-aniversario .birthday-player.phone-fixed-player .player-thumb,
.phone-aniversario .phone-fixed-player.birthday-player .player-thumb,
.checkout-payment-preview .phone-aniversario .birthday-player.phone-fixed-player .player-thumb,
.gift-pro-body.published-aniversario .birthday-player.phone-fixed-player .player-thumb{
  width:46px!important;
  height:46px!important;
  min-width:46px!important;
  border-radius:8px!important;
}

.phone-aniversario .birthday-player.phone-fixed-player .player-action,
.phone-aniversario .phone-fixed-player.birthday-player .player-action,
.checkout-payment-preview .phone-aniversario .birthday-player.phone-fixed-player .player-action,
.gift-pro-body.published-aniversario .birthday-player.phone-fixed-player .player-action{
  width:48px!important;
  height:48px!important;
  min-width:48px!important;
  border-radius:999px!important;
  border:2px solid #fff!important;
  background:transparent!important;
  color:#fff!important;
}

/* Setas do Cartão de Aniversário: vermelhas e com acabamento igual às setas elegantes do Delux */
.phone-aniversario .birthday-photo-nav,
.checkout-payment-preview .phone-aniversario .birthday-photo-nav,
.gift-pro-body.published-aniversario .birthday-photo-nav{
  width:34px!important;
  height:34px!important;
  min-width:34px!important;
  border-radius:999px!important;
  display:grid!important;
  place-items:center!important;
  background:#fff!important;
  color:var(--birthday-accent,#e5161d)!important;
  border:1px solid color-mix(in srgb, var(--birthday-accent,#e5161d) 22%, transparent)!important;
  box-shadow:0 12px 24px color-mix(in srgb, var(--birthday-accent,#e5161d) 18%, transparent), 0 2px 8px rgba(0,0,0,.10)!important;
  font-size:1rem!important;
  font-weight:900!important;
  line-height:1!important;
  text-shadow:none!important;
}

.phone-aniversario .birthday-photo-nav:hover,
.checkout-payment-preview .phone-aniversario .birthday-photo-nav:hover,
.gift-pro-body.published-aniversario .birthday-photo-nav:hover{
  background:#fff4f4!important;
  color:#c90e15!important;
  transform:translateY(-50%) scale(1.03)!important;
}

/* Mantém as setas dentro da área da foto no mobile/tablet */
@media (max-width:1100px){
  .phone-aniversario .birthday-photo-nav.prev,
  .checkout-payment-preview .phone-aniversario .birthday-photo-nav.prev{
    left:12px!important;
    right:auto!important;
  }

  .phone-aniversario .birthday-photo-nav.next,
  .checkout-payment-preview .phone-aniversario .birthday-photo-nav.next{
    right:12px!important;
    left:auto!important;
  }
}



/* ===== Correção: depois de clicar "Abrir presente", o presente aparece de verdade ===== */
.gift-pro-body.gift-opened{
  background:#080000!important;
  min-height:100vh!important;
}

.gift-pro-body.gift-opened #giftPage,
.gift-pro-body.gift-rendered #giftPage:not(.hidden){
  display:flex!important;
  justify-content:center!important;
  align-items:flex-start!important;
  width:100%!important;
  min-height:100vh!important;
  padding:24px 14px 80px!important;
  overflow:visible!important;
}

.gift-pro-body.gift-opened #publishedGift,
.gift-pro-body.gift-rendered #publishedGift{
  display:flex!important;
  justify-content:center!important;
  align-items:flex-start!important;
  width:100%!important;
  min-height:720px!important;
  visibility:visible!important;
  opacity:1!important;
}

.gift-pro-body.gift-opened .published-event,
.gift-pro-body.gift-opened .published-elegant,
.gift-pro-body.gift-opened .published-movie,
.gift-pro-body.gift-opened .published-birthday{
  display:block!important;
  visibility:visible!important;
  opacity:1!important;
  width:min(430px, calc(100vw - 28px))!important;
  max-width:430px!important;
  margin:0 auto!important;
  position:relative!important;
  z-index:2!important;
}

/* Evento Especial publicado também precisa ter tamanho próprio fora do mockup de celular */
.gift-pro-body.gift-opened .published-event.event-screen{
  min-height:720px!important;
  max-height:none!important;
  height:auto!important;
  border:0!important;
  border-radius:28px!important;
  background:#c91618!important;
  overflow:hidden!important;
  box-shadow:0 24px 80px rgba(0,0,0,.55)!important;
}

.gift-pro-body.gift-opened .published-event .event-scroll-content{
  min-height:720px!important;
  height:auto!important;
  overflow-y:auto!important;
  overflow-x:hidden!important;
  padding-bottom:132px!important;
}

.gift-pro-body.gift-opened .published-event .phone-fixed-player,
.gift-pro-body.gift-opened .published-event .event-player.phone-fixed-player{
  position:static!important;
  left:auto!important;
  right:auto!important;
  bottom:auto!important;
  width:100%!important;
  max-width:min(460px, calc(100% - 28px))!important;
  min-width:0!important;
  box-sizing:border-box!important;
  margin:24px auto 8px!important;
  border-radius:18px!important;
  z-index:auto!important;
  overflow:hidden!important;
}

.gift-pro-body.gift-opened .published-fallback-visible{
  padding-top:80px!important;
}

@media (max-width:760px){
  .gift-pro-body.gift-opened #giftPage,
  .gift-pro-body.gift-rendered #giftPage:not(.hidden){
    padding:18px 10px 64px!important;
  }

  .gift-pro-body.gift-opened .published-event,
  .gift-pro-body.gift-opened .published-elegant,
  .gift-pro-body.gift-opened .published-movie,
  .gift-pro-body.gift-opened .published-birthday{
    width:min(430px, calc(100vw - 20px))!important;
  }
}



/* ===== Link exato do presente: carrega pelo slug correto antes de abrir ===== */
#openGift[disabled]{
  opacity:.72!important;
  cursor:wait!important;
  filter:saturate(.8)!important;
}

.gift-pro-body.gift-opened #giftPage,
.gift-pro-body.gift-rendered #giftPage:not(.hidden){
  display:flex!important;
  justify-content:center!important;
  align-items:flex-start!important;
  width:100%!important;
  min-height:100vh!important;
  padding:24px 14px 80px!important;
  overflow:visible!important;
}

.gift-pro-body.gift-opened #publishedGift,
.gift-pro-body.gift-rendered #publishedGift{
  display:flex!important;
  justify-content:center!important;
  align-items:flex-start!important;
  width:100%!important;
  min-height:720px!important;
  visibility:visible!important;
  opacity:1!important;
}

.gift-pro-body.gift-opened .published-event,
.gift-pro-body.gift-opened .published-elegant,
.gift-pro-body.gift-opened .published-movie,
.gift-pro-body.gift-opened .published-birthday{
  display:block!important;
  visibility:visible!important;
  opacity:1!important;
  width:min(430px, calc(100vw - 28px))!important;
  max-width:430px!important;
  margin:0 auto!important;
  position:relative!important;
  z-index:2!important;
}

@media (max-width:760px){
  .gift-pro-body.gift-opened #giftPage,
  .gift-pro-body.gift-rendered #giftPage:not(.hidden){
    padding:18px 10px 64px!important;
  }
}



/* ===== Presente público final: abertura animada + página real sem preview de celular ===== */

/* Antes de abrir, só a tela de presente ocupa tudo. */
.gift-pro-body:not(.gift-opened) #giftPage{
  display:none!important;
}

.gift-pro-body:not(.gift-opened) #giftCover{
  display:grid!important;
}

#giftCover.gift-cover{
  position:fixed!important;
  inset:0!important;
  min-height:100svh!important;
  display:grid!important;
  place-items:center!important;
  z-index:9999!important;
  overflow:hidden!important;
  background:
    radial-gradient(circle at 50% 42%, rgba(255,255,255,.14), transparent 18%),
    linear-gradient(180deg,#ff4b5f 0%,#e66525 52%,#d89010 100%)!important;
}

#giftCover.gift-cover::before,
#giftCover.gift-cover::after{
  content:""!important;
  position:absolute!important;
  width:360px!important;
  height:360px!important;
  border-radius:999px!important;
  background:rgba(255,255,255,.13)!important;
  filter:blur(20px)!important;
  animation:mimoqr-cover-orb 7s ease-in-out infinite alternate!important;
  pointer-events:none!important;
}

#giftCover.gift-cover::before{
  left:-110px!important;
  top:18%!important;
}

#giftCover.gift-cover::after{
  right:-130px!important;
  bottom:13%!important;
  animation-delay:-2.5s!important;
}

.gift-cover.hidden,
.gift-pro-body.gift-opened #giftCover{
  display:none!important;
  visibility:hidden!important;
  opacity:0!important;
  pointer-events:none!important;
  height:0!important;
  min-height:0!important;
}

.gift-cover-card{
  position:relative!important;
  z-index:2!important;
  width:min(92vw,430px)!important;
  padding:34px 28px!important;
  text-align:center!important;
  border-radius:32px!important;
  background:rgba(255,255,255,.10)!important;
  border:1px solid rgba(255,255,255,.22)!important;
  box-shadow:0 30px 100px rgba(0,0,0,.22)!important;
  backdrop-filter:blur(14px)!important;
  animation:mimoqr-cover-card-in .75s cubic-bezier(.2,.9,.2,1) both!important;
}

.gift-cover-title{
  font-size:clamp(1.9rem,4vw,3rem)!important;
  line-height:.95!important;
  color:#ffe5b5!important;
  text-shadow:0 8px 22px rgba(0,0,0,.16)!important;
  animation:mimoqr-soft-pulse 2.6s ease-in-out infinite!important;
}

.gift-cover-emoji{
  font-size:4.8rem!important;
  margin:18px auto 10px!important;
  filter:drop-shadow(0 16px 20px rgba(0,0,0,.25))!important;
  animation:mimoqr-gift-bounce 1.8s ease-in-out infinite!important;
}

.gift-cover-card h1{
  margin:10px auto 20px!important;
  max-width:320px!important;
  font-size:1.25rem!important;
  line-height:1.1!important;
  color:#fff!important;
  text-shadow:0 6px 16px rgba(0,0,0,.18)!important;
}

#openGift{
  min-height:54px!important;
  padding:0 24px!important;
  border-radius:14px!important;
  background:#fff!important;
  color:#d91322!important;
  font-weight:1000!important;
  box-shadow:0 18px 36px rgba(0,0,0,.18)!important;
  animation:mimoqr-button-glow 1.75s ease-in-out infinite!important;
}

/* Depois de abrir: presente real em tela cheia, sem moldura/preview de celular. */
.gift-pro-body.gift-opened{
  background:#080000!important;
  min-height:100vh!important;
  overflow-x:hidden!important;
}

.gift-pro-body.gift-opened #giftPage{
  display:block!important;
  width:100%!important;
  min-height:100vh!important;
  padding:0!important;
  margin:0!important;
  background:transparent!important;
}

.gift-pro-body.gift-opened #publishedGift{
  display:block!important;
  width:100%!important;
  min-height:100vh!important;
  margin:0!important;
  padding:0!important;
  opacity:1!important;
  visibility:visible!important;
}

/* Cancela o CSS antigo que transformava o presente em um celular centralizado. */
.gift-pro-body.gift-opened .published-event,
.gift-pro-body.gift-opened .published-elegant,
.gift-pro-body.gift-opened .published-birthday,
.gift-pro-body.gift-opened .published-movie{
  width:100%!important;
  max-width:none!important;
  min-height:100vh!important;
  margin:0!important;
  border:0!important;
  border-radius:0!important;
  outline:0!important;
  box-shadow:none!important;
  position:relative!important;
  overflow-x:hidden!important;
}

/* Evento Especial aberto como página, não como preview */
.gift-pro-body.gift-opened .published-event.event-screen{
  min-height:100vh!important;
  height:auto!important;
  max-height:none!important;
  border:0!important;
  border-radius:0!important;
  background:#c91618!important;
  overflow:visible!important;
  box-shadow:none!important;
}

.gift-pro-body.gift-opened .published-event .event-scroll-content{
  width:min(100%,720px)!important;
  margin:0 auto!important;
  min-height:100vh!important;
  height:auto!important;
  max-height:none!important;
  padding:48px 18px 150px!important;
  overflow:visible!important;
  box-sizing:border-box!important;
}

.gift-pro-body.gift-opened .published-event .event-carousel{
  max-width:460px!important;
  margin:0 auto 22px!important;
}

.gift-pro-body.gift-opened .published-event .event-photo-wrap{
  min-height:420px!important;
}

.gift-pro-body.gift-opened .published-event .event-count-grid{
  max-width:560px!important;
  margin-left:auto!important;
  margin-right:auto!important;
}

/* Delux aberto como página inteira */
.gift-pro-body.gift-opened .published-elegant{
  background:#f8f0e4!important;
  color:#3b2a20!important;
  padding:44px 18px 72px!important;
  box-sizing:border-box!important;
}

.gift-pro-body.gift-opened .published-elegant > *{
  max-width:720px!important;
  margin-left:auto!important;
  margin-right:auto!important;
}

/* Aniversário aberto como página inteira */
.gift-pro-body.gift-opened .published-birthday,
.gift-pro-body.gift-opened .published-birthday .birthday-screen{
  background:#fff!important;
  min-height:100vh!important;
  height:auto!important;
  max-height:none!important;
  border-radius:0!important;
  overflow:visible!important;
  box-shadow:none!important;
}

.gift-pro-body.gift-opened .published-birthday .birthday-scroll-content{
  width:min(100%,720px)!important;
  margin:0 auto!important;
  height:auto!important;
  max-height:none!important;
  overflow:visible!important;
  padding:48px 18px 150px!important;
  box-sizing:border-box!important;
}

/* Poster aberto como página inteira */
.gift-pro-body.gift-opened .published-movie,
.gift-pro-body.gift-opened .published-movie.movie-poster-screen{
  background:#050505!important;
  min-height:100vh!important;
  height:auto!important;
  max-height:none!important;
  border-radius:0!important;
  overflow:visible!important;
  box-shadow:none!important;
}

.gift-pro-body.gift-opened .published-movie .movie-poster-scroll{
  width:min(100%,760px)!important;
  margin:0 auto!important;
  height:auto!important;
  max-height:none!important;
  overflow:visible!important;
  padding:42px 18px 150px!important;
  box-sizing:border-box!important;
}

/* Player público: regra antiga (fixed + translateX) substituída pelas regras
   específicas de cada modelo mais abaixo no arquivo — mantida aqui só para não
   quebrar nada que dependa dela, mas neutralizada nas propriedades que causavam
   o player a ficar deslocado/saindo da tela. */
.gift-pro-body.gift-opened .phone-fixed-player,
.gift-pro-body.gift-opened .published-player,
.gift-pro-body.gift-opened .movie-player{
  position:static!important;
  left:auto!important;
  right:auto!important;
  bottom:auto!important;
  transform:none!important;
  width:100%!important;
  max-width:calc(100% - 28px)!important;
  min-height:68px!important;
  border-radius:20px!important;
  z-index:auto!important;
  background:#050505!important;
  box-shadow:0 20px 60px rgba(0,0,0,.48)!important;
  overflow:hidden!important;
  margin:24px auto 8px!important;
}

/* Rodapé nunca aparece dentro do link do presente */
.gift-pro-body.gift-opened #presentFooter,
.gift-pro-body.gift-opened .site-footer,
.gift-pro-body.gift-opened footer.present-footer{
  display:none!important;
}

/* Botão compartilhar removido do presente aberto */
.gift-pro-body.gift-opened .share-final{
  display:none!important;
}

/* Animações da capa */
@keyframes mimoqr-cover-card-in{
  from{opacity:0;transform:translateY(22px) scale(.96);}
  to{opacity:1;transform:translateY(0) scale(1);}
}

@keyframes mimoqr-gift-bounce{
  0%,100%{transform:translateY(0) rotate(-2deg);}
  50%{transform:translateY(-10px) rotate(3deg);}
}

@keyframes mimoqr-button-glow{
  0%,100%{transform:translateY(0);box-shadow:0 18px 36px rgba(0,0,0,.18);}
  50%{transform:translateY(-2px);box-shadow:0 24px 46px rgba(0,0,0,.26);}
}

@keyframes mimoqr-soft-pulse{
  0%,100%{opacity:.92;transform:scale(1);}
  50%{opacity:1;transform:scale(1.025);}
}

@keyframes mimoqr-cover-orb{
  from{transform:translate3d(0,0,0) scale(.92);}
  to{transform:translate3d(34px,-26px,0) scale(1.12);}
}

@media (max-width:760px){
  .gift-cover-card{
    width:min(90vw,360px)!important;
    padding:30px 22px!important;
  }

  .gift-pro-body.gift-opened .published-event .event-scroll-content,
  .gift-pro-body.gift-opened .published-birthday .birthday-scroll-content,
  .gift-pro-body.gift-opened .published-movie .movie-poster-scroll{
    padding-left:14px!important;
    padding-right:14px!important;
  }

  .gift-pro-body.gift-opened .published-event .event-photo-wrap{
    min-height:340px!important;
  }
}



/* ===== Correção: X do modal "Você já tem uma página" no canto correto ===== */
#existingPageModal .existing-page-card{
  position:relative!important;
  padding-top:36px!important;
}

#existingPageClose,
#existingPageModal .existing-page-card > .modal-close{
  position:absolute!important;
  top:12px!important;
  right:12px!important;
  left:auto!important;
  bottom:auto!important;
  width:32px!important;
  height:32px!important;
  min-width:32px!important;
  min-height:32px!important;
  margin:0!important;
  padding:0!important;
  display:grid!important;
  place-items:center!important;
  border:0!important;
  border-radius:999px!important;
  background:rgba(255,255,255,.04)!important;
  color:rgba(255,255,255,.66)!important;
  font-size:1.35rem!important;
  line-height:1!important;
  font-weight:400!important;
  text-align:center!important;
  transform:none!important;
  z-index:25!important;
  cursor:pointer!important;
}

#existingPageClose:hover,
#existingPageModal .existing-page-card > .modal-close:hover{
  background:rgba(255,255,255,.09)!important;
  color:#fff!important;
  transform:none!important;
}

#existingPageModal .existing-page-icon{
  margin-top:0!important;
}



/* ===== Correção: presente público preserva o modelo certo com fotos/música/contagem ===== */
.gift-pro-body.gift-opened.published-aniversario{
  background:linear-gradient(180deg,#fff 0%,#fff7fb 100%)!important;
}

.gift-pro-body.gift-opened.published-aniversario #giftPage,
.gift-pro-body.gift-opened.published-aniversario #publishedGift{
  background:linear-gradient(180deg,#fff 0%,#fff7fb 100%)!important;
}

.gift-pro-body.gift-opened.published-aniversario .published-birthday{
  background:linear-gradient(180deg,#fff 0%,#fff7fb 100%)!important;
  color:#4b3342!important;
}

.gift-pro-body.gift-opened.published-aniversario .published-birthday .birthday-screen,
.gift-pro-body.gift-opened.published-aniversario .published-birthday .birthday-modern-screen,
.gift-pro-body.gift-opened.published-aniversario .published-birthday .birthday-final-screen{
  width:100%!important;
  max-width:none!important;
  min-height:100vh!important;
  height:auto!important;
  border-radius:0!important;
  box-shadow:none!important;
  background:linear-gradient(180deg,#fff 0%,#fff7fb 100%)!important;
  overflow:visible!important;
}

.gift-pro-body.gift-opened.published-aniversario .published-birthday .birthday-scroll-content{
  width:min(100%,720px)!important;
  margin:0 auto!important;
  height:auto!important;
  min-height:100vh!important;
  max-height:none!important;
  overflow:visible!important;
  padding:48px 18px 150px!important;
  box-sizing:border-box!important;
}

.gift-pro-body.gift-opened.published-aniversario .birthday-photo-frame{
  max-width:520px!important;
  margin:0 auto!important;
}

.gift-pro-body.gift-opened.published-aniversario .birthday-photo{
  min-height:390px!important;
  background-size:contain!important;
  background-position:center!important;
  background-repeat:no-repeat!important;
}

.gift-pro-body.gift-opened.published-aniversario .birthday-wish-card{
  max-width:620px!important;
  margin-left:auto!important;
  margin-right:auto!important;
}

.gift-pro-body.gift-opened.published-aniversario .birthday-counter-label{
  margin:28px auto 12px!important;
  text-align:center!important;
  font-family:'Playfair Display',serif!important;
  font-size:1.75rem!important;
  color:var(--birthday-accent,#c51618)!important;
}

.gift-pro-body.gift-opened.published-aniversario .event-count-grid{
  max-width:560px!important;
  margin:0 auto 26px!important;
}

/* Fallback público completo caso algum modelo venha com dados incompletos */
.published-public-safe{
  min-height:100vh!important;
  width:100%!important;
  padding:48px 18px 150px!important;
  display:flex!important;
  justify-content:center!important;
  align-items:flex-start!important;
  background:#c91618!important;
  color:#fff!important;
}

.published-public-safe-aniversario{
  background:linear-gradient(180deg,#fff 0%,#fff7fb 100%)!important;
  color:#4b3342!important;
}

.published-public-safe-delux{
  background:#f8f0e4!important;
  color:#3b2a20!important;
}

.published-public-safe-filme{
  background:#050505!important;
  color:#fff!important;
}

.public-safe-content{
  width:min(100%,720px)!important;
  margin:0 auto!important;
  text-align:center!important;
}

.public-safe-content h2{
  font-family:'Pacifico','Great Vibes',cursive!important;
  font-size:clamp(2.4rem,7vw,4.2rem)!important;
  line-height:1.05!important;
  margin:18px auto!important;
}

.public-safe-content p{
  max-width:560px!important;
  margin:0 auto 22px!important;
  font-size:1.05rem!important;
  line-height:1.55!important;
  font-weight:800!important;
}

.public-photo-strip{
  display:flex!important;
  gap:12px!important;
  justify-content:center!important;
  align-items:center!important;
  overflow-x:auto!important;
  padding:8px 0 16px!important;
  scroll-snap-type:x mandatory!important;
}

.public-photo-strip img{
  width:min(70vw,320px)!important;
  height:min(70vw,360px)!important;
  object-fit:contain!important;
  border-radius:18px!important;
  background:rgba(0,0,0,.08)!important;
  scroll-snap-align:center!important;
}

.public-counter-grid{
  display:grid!important;
  grid-template-columns:repeat(3,minmax(0,1fr))!important;
  gap:12px!important;
  max-width:560px!important;
  margin:24px auto!important;
}

.public-counter-grid span{
  display:grid!important;
  place-items:center!important;
  min-height:90px!important;
  border-radius:18px!important;
  background:rgba(255,255,255,.14)!important;
  border:1px solid rgba(255,255,255,.18)!important;
}

.public-counter-grid b{
  font-size:2rem!important;
  line-height:1!important;
}

.public-counter-grid small{
  text-transform:uppercase!important;
  letter-spacing:.18em!important;
  font-size:.7rem!important;
}

/* Rodapé fora do presente público */
.gift-pro-body.gift-opened #presentFooter,
.gift-pro-body.gift-opened .present-footer,
.gift-pro-body.gift-opened footer.site-footer{
  display:none!important;
}

@media (max-width:760px){
  .gift-pro-body.gift-opened.published-aniversario .published-birthday .birthday-scroll-content{
    padding:32px 12px 130px!important;
  }

  .gift-pro-body.gift-opened.published-aniversario .birthday-photo{
    min-height:300px!important;
  }

  .public-counter-grid{
    grid-template-columns:repeat(2,minmax(0,1fr))!important;
  }
}


/* ===== Correção final: modal de página existente sem editar e X no canto certo ===== */
#existingPageModal .existing-page-card{
  position:relative!important;
  padding-top:42px!important;
  overflow:visible!important;
}

#existingPageModal #editExistingPage,
#successEditPage,
#successEditNote{
  display:none!important;
}

#existingPageClose,
#existingPageModal .modal-close#existingPageClose,
#existingPageModal .existing-page-card > #existingPageClose{
  position:absolute!important;
  top:16px!important;
  right:16px!important;
  left:auto!important;
  bottom:auto!important;
  width:34px!important;
  height:34px!important;
  min-width:34px!important;
  min-height:34px!important;
  display:grid!important;
  place-items:center!important;
  margin:0!important;
  padding:0!important;
  border:0!important;
  border-radius:999px!important;
  background:transparent!important;
  color:#ff1c23!important;
  font-family:Arial,Helvetica,sans-serif!important;
  font-size:34px!important;
  line-height:1!important;
  font-weight:400!important;
  text-align:center!important;
  transform:none!important;
  box-shadow:none!important;
  z-index:999!important;
  cursor:pointer!important;
}

#existingPageClose:hover,
#existingPageModal .modal-close#existingPageClose:hover{
  color:#fff!important;
  background:rgba(255,28,35,.18)!important;
  transform:none!important;
}

#existingPageModal .existing-page-icon{
  margin-top:0!important;
}

#existingPageModal .existing-page-card .modal-secondary-action{
  margin-top:10px!important;
}


/* ===== Correção final: presente abre sem tela preta e sem rodapé ===== */
.gift-pro-body.gift-opened #giftCover{
  display:none!important;
  visibility:hidden!important;
  opacity:0!important;
  pointer-events:none!important;
}

.gift-pro-body.gift-opened #giftPage{
  display:block!important;
  visibility:visible!important;
  opacity:1!important;
  min-height:100vh!important;
  width:100%!important;
  padding:0!important;
  margin:0!important;
}

.gift-pro-body.gift-opened #publishedGift{
  display:block!important;
  visibility:visible!important;
  opacity:1!important;
  min-height:100vh!important;
  width:100%!important;
}

.gift-pro-body.gift-opened #presentFooter,
.gift-pro-body.gift-opened .present-footer,
.gift-pro-body.gift-opened footer#presentFooter,
.gift-pro-body.gift-opened footer.present-footer{
  display:none!important;
  height:0!important;
  overflow:hidden!important;
}

.gift-pro-body:not(.gift-opened) #giftPage{
  display:none!important;
}



/* ===== Ajustes finais: pagamento teste + modal sem editar ===== */
#existingPageEdit,
button#existingPageEdit,
a#existingPageEdit,
.existing-page-edit,
[data-existing-page-edit]{
  display:none!important;
}

#existingPageModal .existing-page-card{
  position:relative!important;
}

#existingPageClose,
#existingPageModal .modal-close{
  position:absolute!important;
  top:14px!important;
  right:14px!important;
  left:auto!important;
  bottom:auto!important;
  transform:none!important;
  width:34px!important;
  height:34px!important;
  display:grid!important;
  place-items:center!important;
  z-index:99!important;
  color:#ff2a35!important;
  background:transparent!important;
  border:0!important;
  font-size:1.75rem!important;
  line-height:1!important;
}



/* ===== Correção: nunca deixar o presente em tela preta ===== */
.gift-pro-body.gift-covering:not(.gift-opened) #giftCover{
  display:grid!important;
  visibility:visible!important;
  opacity:1!important;
}

.gift-pro-body:not(.gift-opened) #giftCover{
  display:grid!important;
  visibility:visible!important;
  opacity:1!important;
}

.gift-pro-body.gift-opened #publishedGift:empty::before{
  content:'Carregando presente...';
  display:grid!important;
  place-items:center!important;
  min-height:100vh!important;
  color:#fff!important;
  font-size:1.25rem!important;
  font-weight:900!important;
  text-align:center!important;
  padding:24px!important;
}

.gift-pro-body.gift-opened .published-public-safe{
  min-height:100vh!important;
}



/* ===== Correção definitiva: tela de abrir presente sempre aparece primeiro ===== */
.gift-pro-body:not(.gift-opened) #giftCover{
  display:grid!important;
  visibility:visible!important;
  opacity:1!important;
  min-height:100svh!important;
}

.gift-pro-body:not(.gift-opened) #giftPage{
  display:none!important;
}

.gift-cover-card{
  overflow:hidden!important;
}

.gift-cover-card::before{
  content:"";
  position:absolute;
  inset:-2px;
  background:
    radial-gradient(circle at 20% 20%, rgba(255,255,255,.22), transparent 18%),
    radial-gradient(circle at 84% 34%, rgba(255,255,255,.18), transparent 16%),
    radial-gradient(circle at 45% 90%, rgba(255,255,255,.14), transparent 22%);
  animation:mimoqr-cover-shine 3.6s ease-in-out infinite alternate;
  pointer-events:none;
}

@keyframes mimoqr-cover-shine{
  from{opacity:.45;transform:translate3d(-12px,8px,0) scale(1);}
  to{opacity:.9;transform:translate3d(12px,-10px,0) scale(1.05);}
}

.published-public-safe .public-safe-content .btn{
  margin-top:18px!important;
}



/* ===== Correção final: modelo correto + tela Abrir Presente obrigatória ===== */
body.gift-pro-body:not(.gift-opened) #giftCover{
  display:grid!important;
  visibility:visible!important;
  opacity:1!important;
  pointer-events:auto!important;
}

body.gift-pro-body:not(.gift-opened) #giftPage{
  display:none!important;
  visibility:hidden!important;
  opacity:0!important;
  pointer-events:none!important;
}

body.gift-pro-body.gift-opened #giftCover{
  display:none!important;
  visibility:hidden!important;
  opacity:0!important;
  pointer-events:none!important;
}

body.gift-pro-body.gift-opened #giftPage{
  display:flex!important;
  visibility:visible!important;
  opacity:1!important;
  pointer-events:auto!important;
}

.gift-cover-card{
  animation:mimoqr-gift-card-pop .7s cubic-bezier(.2,.8,.2,1) both!important;
}

@keyframes mimoqr-gift-card-pop{
  0%{transform:translateY(12px) scale(.96);opacity:0;}
  100%{transform:translateY(0) scale(1);opacity:1;}
}

/* Quando o presente público for Delux, ele precisa abrir no design elegante, não no vermelho do Evento */
.gift-pro-body.gift-opened.published-delux #giftPage,
.gift-pro-body.gift-opened.published-delux #publishedGift{
  background:#080000!important;
}

.gift-pro-body.gift-opened.published-delux .published-elegant{
  background:#f8f0e4!important;
  color:#3b2a20!important;
  border:0!important;
  border-radius:0!important;
  overflow:visible!important;
  box-shadow:none!important;
}



/* ===== FINAL REAL: capa obrigatória e modelo público correto ===== */
html:not(.embedded-preview-bootstrap) body.gift-pro-body:not(.gift-opened) #giftCover{
  display:grid!important;
  position:fixed!important;
  inset:0!important;
  z-index:99999!important;
  visibility:visible!important;
  opacity:1!important;
  pointer-events:auto!important;
}

html:not(.embedded-preview-bootstrap) body.gift-pro-body:not(.gift-opened) #giftPage,
html:not(.embedded-preview-bootstrap) body.gift-pro-body:not(.gift-opened) #publishedGift{
  display:none!important;
  visibility:hidden!important;
  opacity:0!important;
  pointer-events:none!important;
}

html:not(.embedded-preview-bootstrap) body.gift-pro-body.gift-opened #giftCover{
  display:none!important;
  visibility:hidden!important;
  opacity:0!important;
  pointer-events:none!important;
}

.gift-cover-card{
  animation:mimoqr-gift-card-enter .8s cubic-bezier(.2,.9,.2,1) both!important;
}

.gift-cover-emoji{
  animation:mimoqr-gift-bounce 1.6s ease-in-out infinite!important;
}

@keyframes mimoqr-gift-card-enter{
  from{opacity:0;transform:translateY(20px) scale(.94);}
  to{opacity:1;transform:translateY(0) scale(1);}
}
@keyframes mimoqr-gift-bounce{
  0%,100%{transform:translateY(0) rotate(0deg);}
  45%{transform:translateY(-8px) rotate(-4deg);}
  70%{transform:translateY(2px) rotate(3deg);}
}

body.gift-pro-body.gift-opened.published-delux .published-elegant{
  background:#f8f0e4!important;
  color:#3b2a20!important;
}

body.gift-pro-body.gift-opened.published-delux .published-event{
  display:none!important;
}



/* ===== Correção: Poster/Filme não fica preso em Carregando presente ===== */
#openGift[disabled]{
  opacity:.78!important;
  cursor:wait!important;
}

.published-public-safe .public-safe-content button.btn{
  border:0!important;
  border-radius:16px!important;
  padding:14px 20px!important;
  background:linear-gradient(135deg,#ef1117,#ff4b68)!important;
  color:#fff!important;
  font-weight:900!important;
}


/* ===== Correção: presente aberto não pode parecer o preview de celular (sem moldura/fundo preto) ===== */
.gift-pro-body.gift-opened{
  background:transparent!important;
}

.gift-pro-body.gift-opened #giftPage,
.gift-pro-body.gift-rendered #giftPage:not(.hidden){
  padding:0!important;
  width:100%!important;
  max-width:none!important;
}

.gift-pro-body.gift-opened #publishedGift,
.gift-pro-body.gift-rendered #publishedGift{
  width:100%!important;
  max-width:none!important;
}

.gift-pro-body.gift-opened .published-event,
.gift-pro-body.gift-opened .published-elegant,
.gift-pro-body.gift-opened .published-movie,
.gift-pro-body.gift-opened .published-birthday{
  width:100%!important;
  max-width:none!important;
  min-height:100vh!important;
  border-radius:0!important;
  box-shadow:none!important;
  margin:0!important;
}

.gift-pro-body.gift-opened .published-event.event-screen{
  min-height:100vh!important;
  border-radius:0!important;
  box-shadow:none!important;
}

.gift-pro-body.gift-opened .published-public-safe{
  border-radius:0!important;
  box-shadow:none!important;
}

/* ===== Correção: contador do Cartão de Aniversário não pode usar o widget vermelho
   do Evento Especial (mescla errada). Agora tem card próprio, com a cor do tema
   escolhido (lilás, dourado, rosa, etc.) em vez do vermelho fixo do Evento. ===== */
.birthday-count-grid{
  display:grid!important;
  grid-template-columns:repeat(3,minmax(0,1fr))!important;
  gap:12px 10px!important;
  margin:0 auto 18px!important;
  max-width:520px!important;
}

.birthday-count-card{
  background:var(--birthday-soft,#fff1f2)!important;
  border:1px solid color-mix(in srgb, var(--birthday-accent,#c51618) 16%, transparent)!important;
  border-radius:14px!important;
  min-height:78px!important;
  display:flex!important;
  flex-direction:column!important;
  justify-content:center!important;
  align-items:center!important;
  padding:10px 6px!important;
  box-shadow:0 10px 24px rgba(0,0,0,.05)!important;
}

.birthday-count-card b{
  display:block!important;
  color:var(--birthday-accent,#c51618)!important;
  font-size:1.05rem!important;
  line-height:1!important;
  margin-bottom:6px!important;
  font-weight:900!important;
}

.birthday-count-card span{
  display:block!important;
  color:var(--birthday-muted,#7e4b4f)!important;
  font-size:.62rem!important;
  letter-spacing:.05em!important;
  text-transform:lowercase!important;
  font-weight:800!important;
}

@media (max-width:420px){
  .birthday-count-grid{gap:10px 8px!important;}
  .birthday-count-card{min-height:70px!important;}
}

/* ===== Correção: o presente agora abre em tela cheia (sem a moldura de celular),
   então o truque antigo de "position:absolute" dentro de uma caixa de tamanho fixo
   não funciona mais — ele fazia o conteúdo do Aniversário (final do cartão e o
   player de música) ficarem soltos/no lugar errado. Agora o conteúdo flui normal
   e o player de música fica realmente fixo na tela, como uma barra de player. ===== */
.gift-pro-body.gift-opened .published-birthday .birthday-scroll-content{
  position:static!important;
  inset:auto!important;
  padding:24px 16px 24px!important;
}

.gift-pro-body.gift-opened .published-event .phone-fixed-player,
.gift-pro-body.gift-opened .published-birthday .phone-fixed-player{
  position:static!important;
  top:auto!important;
  left:auto!important;
  right:auto!important;
  bottom:auto!important;
  width:100%!important;
  max-width:calc(100% - 28px)!important;
  min-width:0!important;
  box-sizing:border-box!important;
  margin:24px auto 8px!important;
  justify-self:center!important;
  align-self:center!important;
  z-index:auto!important;
  overflow:hidden!important;
}

.gift-pro-body.gift-opened .published-event .phone-fixed-player *,
.gift-pro-body.gift-opened .published-birthday .phone-fixed-player *{
  min-width:0!important;
}

/* Poster de Filme: o player fica fixo na tela (sempre visível, mesmo rolando
   a página), igual ao preview de criação — diferente dos outros modelos. */
.gift-pro-body.gift-opened .published-movie .phone-fixed-player{
  position:fixed!important;
  top:auto!important;
  left:50%!important;
  right:auto!important;
  bottom:18px!important;
  transform:translateX(-50%)!important;
  width:calc(100% - 28px)!important;
  max-width:min(460px, calc(100% - 28px))!important;
  min-width:0!important;
  box-sizing:border-box!important;
  margin:0!important;
  z-index:500!important;
  overflow:hidden!important;
}

.gift-pro-body.gift-opened .published-movie .phone-fixed-player *{
  min-width:0!important;
}

.gift-pro-body.gift-opened .published-movie .movie-poster-scroll{
  padding-bottom:230px!important;
}

.gift-pro-body.gift-opened .published-movie .movie-after-intro{
  margin-bottom:40px!important;
}

/* Evento e Delux: player com tamanho de "cartão" fixo, igual ao resto do site. */
.gift-pro-body.gift-opened .published-event .phone-fixed-player,
.gift-pro-body.gift-opened .published-event .event-player.phone-fixed-player{
  max-width:min(460px, calc(100% - 28px))!important;
}

/* Aniversário: no PC o player ficava enorme (largura da tela toda); no
   celular/tablet já estava do tamanho certo, então isso só entra a partir
   de telas largas. */
@media (min-width:761px){
  .gift-pro-body.gift-opened .published-birthday .phone-fixed-player{
    max-width:min(460px, calc(100% - 28px))!important;
  }
}

@media (max-width:760px){
  .gift-pro-body.gift-opened .published-event .phone-fixed-player,
  .gift-pro-body.gift-opened .published-event .event-player.phone-fixed-player,
  .gift-pro-body.gift-opened .published-birthday .phone-fixed-player{
    max-width:calc(100% - 20px)!important;
  }
  .gift-pro-body.gift-opened .published-movie .phone-fixed-player{
    width:calc(100% - 20px)!important;
    max-width:calc(100% - 20px)!important;
    bottom:14px!important;
  }
}

/* ===== Correção definitiva: modal "Você já tem uma página" igual ao modal
   "Página em andamento encontrada" — mesmo cartão, mesmo X (cinza, nunca vermelho).
   Vários ajustes anteriores mexeram só na cor do X e voltavam a ficar vermelho
   por causa de regras conflitantes mais abaixo no arquivo; esta é a regra final. ===== */
#existingPageModal .existing-page-card{
  width:min(448px, calc(100vw - 28px))!important;
  max-width:448px!important;
  background:linear-gradient(180deg,#202020,#1c1c1c)!important;
  border:1px solid rgba(255,255,255,.08)!important;
  border-radius:17px!important;
  padding:34px 32px 32px!important;
  box-shadow:0 28px 80px rgba(0,0,0,.58)!important;
  position:relative!important;
  overflow:hidden!important;
}

#existingPageModal .existing-page-card::before{
  display:none!important;
  content:none!important;
}

#existingPageClose,
#existingPageModal .modal-close,
#existingPageModal .existing-page-card > .modal-close,
#existingPageModal .modal-close#existingPageClose,
#existingPageModal .existing-page-card > #existingPageClose{
  position:absolute!important;
  top:16px!important;
  right:20px!important;
  left:auto!important;
  bottom:auto!important;
  width:28px!important;
  height:28px!important;
  min-width:28px!important;
  min-height:28px!important;
  margin:0!important;
  padding:0!important;
  display:grid!important;
  place-items:center!important;
  border:0!important;
  border-radius:0!important;
  background:transparent!important;
  color:#8f8f8f!important;
  font-family:inherit!important;
  font-size:2rem!important;
  font-weight:300!important;
  line-height:1!important;
  text-align:center!important;
  transform:none!important;
  box-shadow:none!important;
  z-index:25!important;
  cursor:pointer!important;
  transition:color .2s ease, transform .2s ease!important;
}

#existingPageClose:hover,
#existingPageModal .modal-close:hover,
#existingPageModal .existing-page-card > .modal-close:hover,
#existingPageModal .modal-close#existingPageClose:hover{
  color:#fff!important;
  background:transparent!important;
  transform:rotate(90deg)!important;
}

#existingPageModal .existing-page-icon{
  width:64px!important;
  height:64px!important;
  margin:0 auto 24px!important;
  border-radius:50%!important;
  background:rgba(239,17,23,.18)!important;
  color:#ef1117!important;
  box-shadow:none!important;
  font-size:1.7rem!important;
}

#existingPageModal .existing-page-card h2{
  margin:0 0 12px!important;
}

#existingPageModal .existing-page-card p{
  margin:0 0 22px!important;
}

#existingPageModal .existing-page-card .btn{
  min-height:50px!important;
}

/* ===== Correção: preview do celular (criação do presente) perdendo a borda preta
   de baixo quando o conteúdo é mais alto que a tela do celular (ex: Delux com
   ornamentos + mensagem + música + contador de 6 cards). O conteúdo deve rolar
   POR DENTRO da moldura, nunca vazar para fora dela. ===== */
.phone-live .pro-phone{
  overflow:hidden!important;
  border:8px solid #353535!important;
  box-sizing:border-box!important;
}

.phone-live .pro-screen{
  height:100%!important;
  max-height:100%!important;
  overflow:hidden!important;
  box-sizing:border-box!important;
}

.phone-live .elegant-screen,
.phone-live .birthday-screen,
.phone-live .movie-screen,
.phone-live .event-screen{
  height:100%!important;
  max-height:100%!important;
  overflow-y:auto!important;
  overflow-x:hidden!important;
  box-sizing:border-box!important;
  -webkit-overflow-scrolling:touch!important;
}

/* ===== Correção: em telas largas (PC), o presente aberto (sem a moldura de
   celular) ficava esticado de ponta a ponta, fora da proporção do resto do
   site. Agora ele mantém uma largura de "cartão" central e equilibrada,
   como o restante do site, em vez de ocupar a tela inteira.
   Não se aplica ao Cartão de Aniversário nem ao Poster de Filme — esses
   dois têm um design diferente e devem continuar em tela cheia. ===== */
@media (min-width:760px){
  .gift-pro-body.gift-opened .published-event,
  .gift-pro-body.gift-opened .published-elegant{
    width:min(560px, calc(100% - 48px))!important;
    max-width:560px!important;
    margin-left:auto!important;
    margin-right:auto!important;
  }
}

/* ===== Correção: Delux não deve ter chuva de corações, e as laterais
   (fora do cartão, em telas largas de PC) devem ter a cor de fundo do
   tema escolhido, não preto. ===== */
.gift-pro-body.gift-opened.published-delux{background:#fff8ee!important;}
.gift-pro-body.gift-opened.published-delux.theme-ruby{background:#fbeff4!important;}
.gift-pro-body.gift-opened.published-delux.theme-sapphire{background:#edf5ff!important;}
.gift-pro-body.gift-opened.published-delux.theme-emerald{background:#eefaf4!important;}
.gift-pro-body.gift-opened.published-delux.theme-rose{background:#fff0f4!important;}
.gift-pro-body.gift-opened.published-delux.theme-noir{background:#090807!important;}

.gift-pro-body.gift-opened.published-delux .heart{
  display:none!important;
}

/* ===== Divisor decorativo entre a tagline e a sinopse do Poster de Filme ===== */
.movie-divider{
  display:flex;
  align-items:center;
  gap:10px;
  margin:18px 0 22px;
  width:100%;
  max-width:220px;
}
.movie-divider span{
  flex:1 1 auto;
  height:1px;
  background:linear-gradient(90deg, transparent, rgba(239,17,23,.55));
}
.movie-divider span:last-child{
  background:linear-gradient(90deg, rgba(239,17,23,.55), transparent);
}
.movie-divider i{
  flex:0 0 auto;
  width:6px;
  height:6px;
  border-radius:50%;
  background:#ef1117;
  box-shadow:0 0 10px rgba(239,17,23,.65);
}

/* ===== Tela de erro de pagamento (cartão recusado / falha na cobrança) ===== */
.payment-failed-box{
  position:relative;
  overflow:hidden;
  margin-top:26px;
  padding:26px 24px 24px;
  border-radius:22px;
  text-align:center;
  border:1px solid rgba(239,17,23,.32);
  background:
    radial-gradient(circle at top right, rgba(239,17,23,.16), transparent 34%),
    linear-gradient(180deg, rgba(46,17,18,.96) 0%, rgba(20,12,12,.98) 100%);
  box-shadow:0 22px 60px rgba(0,0,0,.28);
}

.payment-failed-icon{
  width:52px;
  height:52px;
  margin:0 auto 16px;
  display:grid;
  place-items:center;
  border-radius:50%;
  background:rgba(239,17,23,.18);
  color:#ff5b5f;
  font-weight:1000;
  font-size:1.6rem;
  box-shadow:0 0 0 10px rgba(239,17,23,.08);
}

.payment-failed-box h2{
  margin:0 0 8px;
  font-size:1.2rem;
  color:#fff;
}

.payment-failed-lead{
  margin:0 0 20px;
  color:rgba(255,255,255,.72);
  font-size:.92rem;
  line-height:1.5;
}

.payment-failed-actions{
  margin-bottom:22px;
}

.payment-failed-actions .btn{
  min-width:200px;
}

.payment-failed-support-title{
  margin:0 0 10px;
  font-size:.82rem;
  color:rgba(255,255,255,.55);
}

.payment-failed-contacts{
  display:flex;
  flex-direction:column;
  gap:8px;
  align-items:center;
}

.payment-failed-contacts a{
  color:#ff8a8d;
  font-weight:700;
  font-size:.92rem;
  text-decoration:none;
}

.payment-failed-contacts a:hover{
  text-decoration:underline;
}

/* ===== Seção "Vem pra nossa rede" (Instagram / TikTok / Facebook) ===== */
.social-follow-grid{
  max-width:var(--max);
  margin:0 auto;
  display:grid;
  grid-template-columns:repeat(3,minmax(0,1fr));
  gap:22px;
}
.social-follow-card{
  display:flex;
  align-items:center;
  gap:16px;
  background:linear-gradient(180deg,rgba(255,255,255,.045),rgba(255,255,255,.018));
  border:1px solid rgba(255,255,255,.13);
  border-radius:20px;
  padding:26px 24px;
  text-decoration:none;
  color:var(--text);
  transition:transform .2s ease, box-shadow .2s ease, border-color .2s ease;
}
.social-follow-card:hover{
  transform:translateY(-3px);
  border-color:rgba(238,17,23,.55);
  box-shadow:0 18px 44px rgba(238,17,23,.16);
}
.social-follow-icon{
  flex:0 0 auto;
  width:52px;
  height:52px;
  border-radius:16px;
  display:grid;
  place-items:center;
  color:#fff;
}
.social-follow-icon svg{ width:26px; height:26px; }
.social-ig .social-follow-icon{ background:linear-gradient(135deg,#f58529,#dd2a7b 45%,#8134af 75%,#515bd4); }
.social-tt .social-follow-icon{ background:linear-gradient(135deg,#111,#333); }
.social-fb .social-follow-icon{ background:linear-gradient(135deg,#1877f2,#0b5ed7); }
.social-follow-text{ display:flex; flex-direction:column; gap:2px; flex:1; min-width:0; }
.social-follow-text strong{ font-size:1.08rem; font-weight:950; }
.social-follow-text small{ color:var(--muted); font-weight:700; }
.social-follow-cta{
  flex:0 0 auto;
  font-weight:900;
  font-size:.86rem;
  color:#ffb4b8;
  white-space:nowrap;
}
@media (max-width:900px){
  .social-follow-grid{ grid-template-columns:repeat(2,minmax(0,1fr)); gap:16px; }
  .social-follow-card{ padding:22px 20px; }
}
@media (max-width:640px){
  .social-follow-grid{ grid-template-columns:1fr; gap:14px; }
  .social-follow-card{ padding:20px 18px; gap:14px; }
  .social-follow-icon{ width:46px; height:46px; border-radius:14px; }
  .social-follow-icon svg{ width:22px; height:22px; }
  .social-follow-text strong{ font-size:1rem; }
  .social-follow-text small{ font-size:.86rem; }
  .social-follow-cta{ font-size:.8rem; }
}
@media (max-width:380px){
  .social-follow-card{ flex-wrap:wrap; }
  .social-follow-cta{ width:100%; text-align:right; }
}
