/* CCAA Araruama × O Mágico de Oz — experience v6. Pure CSS, no decorative image dependency */
:root{color-scheme:light;--navy:#07152d;--navy2:#092849;--red:#dc142d;--red2:#a60f28;--gold:#d8a747;--goldLight:#ffe4a5;--emerald:#075949;--cream:#fff9ef;--ink:#182b35;--mute:#647078;--line:#eadcc9;--display:'Cormorant Garamond',Georgia,serif;--body:'DM Sans',system-ui,-apple-system,sans-serif}
*{box-sizing:border-box}html{scroll-behavior:smooth}body{margin:0;min-height:100dvh;font:16px/1.5 var(--body);color:var(--cream);background:#07152d;overflow-x:hidden;-webkit-font-smoothing:antialiased}button,input{font:inherit}button{cursor:pointer}a{color:inherit}.hidden{display:none!important}
.site-shell{min-height:100dvh;position:relative;isolation:isolate;overflow:hidden;background:radial-gradient(ellipse at 49% 19%,#173b65 0%,transparent 34%),radial-gradient(ellipse at 12% 76%,rgba(15,100,72,.28),transparent 44%),radial-gradient(ellipse at 90% 89%,rgba(154,15,47,.22),transparent 45%),linear-gradient(173deg,#061126,#0a2441 39%,#051628 90%)}
.site-shell:before{content:"";position:absolute;inset:0;z-index:-1;pointer-events:none;opacity:.56;background-image:radial-gradient(1.5px 1.5px at 9% 2%,#fff 98%,transparent),radial-gradient(2px 2px at 32% 7%,#ffd796 98%,transparent),radial-gradient(1px 1px at 70% 5%,#fff 98%,transparent),radial-gradient(2px 2px at 92% 14%,#fff 98%,transparent),radial-gradient(1px 1px at 14% 21%,#ffdda3 98%,transparent),radial-gradient(2px 2px at 85% 29%,#fff 98%,transparent),radial-gradient(1px 1px at 13% 52%,#fff 98%,transparent),radial-gradient(2px 2px at 68% 62%,#ffddab 98%,transparent),radial-gradient(1px 1px at 86% 79%,#fff 98%,transparent);background-size:420px 540px;animation:skyDrift 30s linear infinite}
.site-shell:after{content:"";position:absolute;inset:0;z-index:-1;pointer-events:none;opacity:.38;background:linear-gradient(140deg,transparent 0 75%,rgba(215,172,91,.09) 76% 77%,transparent 78% 100%);background-size:140px 140px}
.curtain{position:absolute;top:-16px;width:min(210px,40vw);height:165px;z-index:0;opacity:.93;pointer-events:none;filter:drop-shadow(0 14px 12px rgba(0,0,0,.19));background:repeating-linear-gradient(90deg,#7e0921 0,#bf1b35 16px,#60091c 25px,#bf1837 42px);box-shadow:inset 0 -12px 24px #68091a;mask-image:linear-gradient(to bottom,#000 0%,#000 54%,transparent 100%)}.curtain.left{left:-105px;border-radius:0 0 88% 0;transform:rotate(-13deg)}.curtain.right{right:-105px;border-radius:0 0 0 88%;transform:rotate(13deg)}
.star{position:absolute;z-index:0;width:5px;height:5px;border-radius:50%;background:#ffe2a0;box-shadow:0 0 13px 4px rgba(255,209,113,.55);pointer-events:none;animation:twinkle 3.7s ease-in-out infinite alternate}.star:after,.star:before{content:"";position:absolute;top:50%;left:50%;transform:translate(-50%,-50%);background:linear-gradient(90deg,transparent,#ffe2a0,transparent)}.star:before{width:30px;height:1px}.star:after{width:1px;height:30px}.s1{left:13%;top:190px}.s2{right:14%;top:330px;animation-delay:1.4s}.s3{right:22%;top:110px;transform:scale(.65);animation-delay:2.2s}
.page{position:relative;width:min(100%,500px);margin:0 auto;padding:0 18px 24px;min-height:100dvh}
.hero{text-align:center;position:relative;padding:24px 0 13px}.brand-strip{display:flex;justify-content:center;align-items:center;gap:12px;margin:0 auto 22px;max-width:max-content}.brand-mark{width:69px;height:58px;border-radius:15px;display:grid;place-items:center;flex-shrink:0;background:#fff;box-shadow:0 8px 30px #0003,0 0 0 1px rgba(255,255,255,.24);position:relative}.brand-mark img{display:block;position:relative;z-index:1;width:57px;height:53px;object-fit:contain}.brand-fallback{display:block;position:absolute;inset:auto;color:#e30613;font:900 21px var(--body);letter-spacing:-1.2px}.brand-mark.logo-missing img{display:none}.brand-mark.logo-missing .brand-fallback{display:block}.brand-text{text-align:left;line-height:1.2}.brand-text strong{font-size:12.5px;letter-spacing:.16em;display:block;font-weight:800;color:white}.brand-text small{font-size:10px;letter-spacing:.08em;color:#cbdbe4;display:block;margin-top:5px}
.stage-billing{font-size:10px;font-weight:800;letter-spacing:.21em;color:#e4ba75;margin-bottom:4px;text-transform:uppercase}.stage-presents{font-size:9px;letter-spacing:.25em;color:#a9bcce;margin-bottom:0;text-transform:uppercase}.oz-lockup{line-height:.75;display:flex;flex-direction:column;align-items:center;justify-content:center;margin:8px auto 10px;filter:drop-shadow(0px 6px 14px #0006)}.oz-lockup .oz-top{font-family:var(--display);text-transform:uppercase;font-size:clamp(29px,8vw,43px);font-weight:700;letter-spacing:.11em;color:#f7d792;text-shadow:0 1px 0 #5c3310,0 2px 0 #7b4c1c,0 0 19px #a3642666}.oz-lockup .oz-de{font-style:italic;font-size:.66em;letter-spacing:0;text-transform:none}.oz-lockup .oz-big{font-family:var(--display);font-size:clamp(86px,26vw,135px);letter-spacing:-.09em;padding:0 20px 10px 0;font-weight:700;line-height:.85;background:linear-gradient(115deg,#7a3718 0%,#d8902f 14%,#fff0b2 27%,#b76f23 39%,#fff3c0 54%,#cc7323 70%,#ffdd8c 87%,#8f4322 100%);-webkit-background-clip:text;background-clip:text;color:transparent;filter:drop-shadow(0 4px 0 rgba(85,36,20,.45));animation:goldGlow 5s ease-in-out infinite}.gold-divider{display:flex;align-items:center;justify-content:center;gap:9px;margin:1px auto 13px;width:170px;color:#ffd38d}.gold-divider:before,.gold-divider:after{content:"";flex:1;height:1px;background:linear-gradient(90deg,transparent,#daaa56)}.gold-divider:after{transform:rotate(180deg)}.gold-divider span{display:block;width:7px;height:7px;transform:rotate(45deg);background:#efc675;box-shadow:0 0 10px #ffc960}
.hero h1{font:700 clamp(25px,6.9vw,35px)/1.05 var(--display);letter-spacing:-.015em;color:#fffaf2;margin:0 auto 8px;max-width:360px}.hero h1 em{font-style:normal;color:#ffe5ad}.hero p{margin:0 auto;color:#d0dbe4;font-size:12.8px;line-height:1.5;max-width:330px}.hero .special-note{font-size:10px;color:#f6c874;text-transform:uppercase;letter-spacing:.15em;font-weight:700;margin-top:9px}
.road-arc{height:16px;margin:3px auto -5px;max-width:315px;position:relative;pointer-events:none}.road-arc:before{content:"";position:absolute;inset:4px 28px;transform:skewX(-32deg);border-top:1px solid #d8a44994;border-radius:70%;box-shadow:0 -7px 19px #d39b4d2b}
.steps{display:flex;align-items:center;justify-content:center;gap:12px;margin:10px auto 14px;color:#aebaca;font-size:10px;letter-spacing:.04em}.step-dot{display:flex;align-items:center;gap:6px;white-space:nowrap}.step-dot:before{content:attr(data-step);display:grid;place-items:center;width:20px;height:20px;border-radius:50%;border:1px solid #d0aa6f6e;color:#e0c187;font-size:10px;font-weight:700;background:#152c44}.step-dot.active{color:#ffe4aa;font-weight:800}.step-dot.active:before{color:#102b31;background:#f7d78d;box-shadow:0 0 0 3px #ffe6a31c,0 0 12px #edc47e61}.step-dot.done:before{content:'✓';color:#fff;background:#147a59;border-color:#147a59}.step-sep{width:18px;height:1px;background:#dbbe827a}
.card{position:relative;margin:0 auto 15px;border-radius:22px;max-width:450px;overflow:hidden;animation:cardIn .55s ease-out both}.express-card{background:linear-gradient(138deg,#fffdf8 0%,#fff5e8 62%,#f7e7d1 100%);color:var(--ink);border:1px solid #fae5b6;padding:21px 20px 17px;box-shadow:0 18px 40px #0007,0 0 0 4px #d7ae5c19,inset 0 1px 0 #fff}.express-card:before,.experience-card:before{content:"";position:absolute;inset:5px;border:1px solid #b98c405e;border-radius:18px;pointer-events:none}.form-header{margin:1px 0 14px;text-align:center}.form-header .overline{font-size:9px;letter-spacing:.16em;font-weight:800;color:#a47532;text-transform:uppercase}.form-header h2{font:700 25px/1 var(--display);margin:3px 0;color:#1d3d38}.form-header p{font-size:11px;color:#6e7778;margin:0}.form-group{margin:0 0 11px;position:relative}.form-group label{display:block;font-size:12px;font-weight:800;color:#253d43;margin:0 0 5px}.field-control{position:relative;display:flex;align-items:center;background:#fff;border:1.4px solid #dfd4c6;border-radius:12px;box-shadow:0 2px 5px #4529080b;transition:box-shadow .2s,border-color .2s}.field-control:focus-within{border-color:#c9913d;box-shadow:0 0 0 4px #f3ca8352}.field-control svg{flex:0 0 18px;margin-left:13px;color:#ab854e}.field-control input{appearance:none;outline:none;border:0;background:transparent;border-radius:12px;color:#233843;height:48px;width:100%;padding:0 12px;font-size:16px;min-width:0}.field-control input::placeholder{color:#9ca0a5}.form-group.error .field-control{border-color:#ce233d}.form-error{font-size:12px;line-height:1.4;background:#fce9eb;color:#a71930;padding:11px 12px;border-left:3px solid #d91c3a;border-radius:8px;margin:4px 0 10px}.sync-notice{background:#fff0c6!important;color:#69460e!important;border-color:#b9872c!important}.btn{display:flex;justify-content:center;align-items:center;gap:9px;min-height:49px;width:100%;border:0;border-radius:12px;font-size:14px;font-weight:800;text-decoration:none;transition:transform .16s,box-shadow .16s,background .2s}.btn:active{transform:translateY(2px) scale(.992)}.btn:focus-visible,a:focus-visible{outline:3px solid #edb64a;outline-offset:3px}.btn-primary{position:relative;overflow:hidden;margin-top:15px;color:white;background:linear-gradient(110deg,#b6102d,#ec183c 47%,#b30e2a);border:1px solid #dd6a64;box-shadow:0 6px 0 #720c21,0 11px 22px #b1153461;text-transform:uppercase;letter-spacing:.035em;min-height:53px}.btn-primary:hover{box-shadow:0 5px 0 #720c21,0 10px 25px #b1153480}.btn-primary:before{content:"";position:absolute;inset:0;transform:translateX(-140%) skewX(-20deg);width:40%;background:linear-gradient(90deg,transparent,#fff6,transparent);animation:shine 5s ease-in-out infinite}.btn-primary:disabled{opacity:.7;cursor:wait}.btn-icon{width:21px;height:21px;flex-shrink:0}.btn-chevron{width:17px;height:17px;flex-shrink:0}.privacy-compact{margin:13px 0 0;text-align:center;font-size:10px;line-height:1.5;color:#7b7e81}.privacy-compact a{color:#b41430;text-decoration:underline;text-underline-offset:2px;font-weight:800}.under-card{text-align:center;color:#e7b970;font-size:10px;letter-spacing:.12em;text-transform:uppercase;margin:9px 0 20px}.under-card:before,.under-card:after{content:'✦';margin:0 8px;font-size:8px}
.experience-card{padding:24px 19px 22px;border:1px solid #daa954a8;box-shadow:0 18px 40px #0008,inset 0 1px 0 #ffe2a044;background:radial-gradient(circle at 50% -6%,#2c745c 0%,#0c493a 47%,#063a34 100%);color:#ffefcc}.scratch-wrap{text-align:center}.scratch-wrap h2{font:700 31px/.97 var(--display);color:#ffebba;margin:0 auto 10px;max-width:350px}.scratch-wrap p.hint{color:#e9e1c8;font-size:12px;max-width:290px;margin:0 auto 17px}.scratch-container{position:relative;width:100%;max-width:345px;aspect-ratio:1.48/1;margin:auto;border-radius:16px;overflow:hidden;background:#fff0cb;box-shadow:0 0 0 4px #f2c77552,0 15px 35px #0007,0 0 22px #eec17d29;touch-action:none;user-select:none;-webkit-user-select:none}.scratch-prize{position:absolute;inset:0;background:radial-gradient(circle,#fffdf4,#ffe4a0);color:#203a32;display:flex;flex-direction:column;align-items:center;justify-content:center;gap:3px;padding:15px}.prize-label{font-size:10px;text-transform:uppercase;letter-spacing:.12em;font-weight:800;color:#8f6a35}.prize-value{font:700 38px/.99 var(--display);color:#b3112e;text-align:center}.prize-sub{font-size:12px;color:#36483d;text-align:center}#scratchCanvas{position:absolute;inset:0;width:100%;height:100%;border-radius:16px;cursor:crosshair}.scratch-progress{margin:13px 0 0;font-size:11px;color:#ffe8be;letter-spacing:.02em}.scratch-instruction{display:flex;gap:7px;align-items:center;justify-content:center;font-size:11px;color:#efcf8f;margin-top:10px}.scratch-instruction svg{width:16px;height:16px}
.result{text-align:center}.result .badge{display:inline-flex;align-items:center;gap:6px;color:#ffe5ad;border:1px solid #d8ab5e94;background:#ecc58021;border-radius:30px;padding:5px 12px;font-size:11px;font-weight:800;letter-spacing:.08em;text-transform:uppercase}.result h2{font:700 33px/1 var(--display);margin:15px auto 4px;color:#fff5ce}.result .prize-big{font:700 39px/.98 var(--display);color:#ffe2a0;margin:12px auto 16px;text-shadow:0 0 22px #e6a83e55}.code-box{background:#fff8e9;border:1px dashed #ce9944;border-radius:12px;padding:14px;color:#173b35;margin:13px auto}.code-label{font-size:10px;text-transform:uppercase;font-weight:800;letter-spacing:.14em;color:#88714b}.code{font:800 21px var(--body);letter-spacing:.045em;overflow-wrap:anywhere}.rules{font-size:11px;color:#d8e5de;text-align:left;line-height:1.55;background:#032a26a6;border-radius:12px;padding:12px 14px;margin:15px auto}.rules ul{margin:0;padding-left:17px}.rules li{margin:3px 0}.btn-whatsapp{background:#26b96b;color:white;margin-top:11px;box-shadow:0 5px 18px #011e1680}.btn-whatsapp:hover{background:#1d9e5a}.btn-secondary{background:#fff5e0;color:#17362c;margin-top:10px}.marketing-invite{border-top:1px solid #cba96870;margin-top:20px;padding-top:15px}.marketing-invite p{font-size:12px;margin:0 0 7px;color:#dbe8de}.marketing-invite .btn{font-size:12px}.marketing-invite small{font-size:10px;color:#c9dacb}.marketing-invite #marketingStatus{margin-top:8px}
.footer{text-align:center;font-size:10px;color:#9bb1bf;line-height:1.6;padding:5px 10px 19px}.footer a{color:#e9ca92;text-decoration:underline;text-underline-offset:2px}
.confetti-piece{position:fixed;z-index:99;pointer-events:none;width:7px;height:11px;top:-11px;border-radius:2px;animation:fall linear forwards}@keyframes fall{to{transform:translate3d(22px,110vh,0) rotate(790deg);opacity:0}}@keyframes twinkle{from{opacity:.24;transform:scale(.5)}to{opacity:1;transform:scale(1)}}@keyframes skyDrift{to{background-position:120px 0}}@keyframes cardIn{from{opacity:0;transform:translateY(15px)}to{opacity:1;transform:translateY(0)}}@keyframes goldGlow{0%,100%{filter:drop-shadow(0 3px 1px #471f16a6)}50%{filter:drop-shadow(0 3px 1px #471f16a6) drop-shadow(0 0 12px #ffe0a74a)}}@keyframes shine{0%,55%{transform:translateX(-140%) skewX(-20deg)}75%,100%{transform:translateX(360%) skewX(-20deg)}}
@media(min-width:650px){.page{padding-bottom:40px}.hero{padding-top:32px}.curtain.left{left:calc(50% - 450px)}.curtain.right{right:calc(50% - 450px)}.hero p{font-size:14px}.express-card{padding:24px 30px 22px}.oz-lockup .oz-big{font-size:132px}}
@media(max-width:355px){.page{padding:0 12px 15px}.hero{padding-top:17px}.brand-strip{margin-bottom:12px}.oz-lockup .oz-big{font-size:82px}.hero h1{font-size:24px}.hero p{font-size:12px}.steps{gap:8px}.step-sep{width:10px}.express-card{padding:19px 15px 16px}.btn-primary{font-size:12.6px}.curtain{opacity:.48}}
@media(prefers-reduced-motion:reduce){*,*:before,*:after{scroll-behavior:auto!important;animation-duration:.01ms!important;animation-iteration-count:1!important;transition-duration:.01ms!important}}


/* v7 | MOBILE FIRST — layout enxuto para os pais no evento */
@media(max-width:649px){
  .page{max-width:450px;padding:0 13px 12px}
  .hero{padding:10px 0 3px}
  .brand-strip{gap:10px;margin-bottom:7px}
  .brand-mark{width:76px;height:61px;border-radius:11px}
  .brand-mark img{width:71px;height:auto;max-height:55px;object-fit:contain}
  .brand-text strong{font-size:12px}
  .brand-text small{font-size:10px;margin-top:3px}
  .stage-billing{font-size:9px;margin-bottom:1px}
  .stage-presents{display:none}
  .oz-lockup{margin:1px auto 2px;line-height:.77}
  .oz-lockup .oz-top{font-size:clamp(23px,6.2vw,30px)}
  .oz-lockup .oz-big{font-size:clamp(65px,18vw,80px);line-height:.84;padding:0 12px 2px 0}
  .gold-divider{margin:1px auto 5px;width:115px}
  .hero h1{font-size:clamp(22px,5.6vw,27px);line-height:1.02;margin-bottom:5px;max-width:360px}
  .hero p{font-size:11.7px;line-height:1.35;max-width:340px}
  .hero .special-note,.road-arc{display:none}
  .steps{margin:8px auto 10px;gap:7px;font-size:10px}
  .step-sep{width:11px}
  .step-dot:before{width:19px;height:19px}
  .card{border-radius:18px;margin-bottom:10px}
  .express-card{padding:12px 15px 11px}
  .form-header{margin:0 0 8px}
  .form-header h2{font-size:23px;margin:1px 0}
  .form-header p{font-size:10px}
  .form-group{margin-bottom:7px}
  .form-group label{font-size:11.7px;margin-bottom:4px}
  .field-control input{height:43px}
  .btn-primary{min-height:47px;margin-top:8px;font-size:12.4px}
  .privacy-compact{margin-top:9px;font-size:9px;line-height:1.35}
  .under-card{font-size:8.7px;margin:5px 0 8px}
  .footer{font-size:9px;padding:0 9px 10px}
  .curtain{opacity:.52}
}
/* Durante a raspagem e o resultado, não repetir o cartaz enorme do começo. */
.site-shell[data-stage="2"] .hero,
.site-shell[data-stage="3"] .hero{padding-top:9px;padding-bottom:4px}
.site-shell[data-stage="2"] .brand-strip,
.site-shell[data-stage="3"] .brand-strip{margin-bottom:5px}
.site-shell[data-stage="2"] .brand-mark,
.site-shell[data-stage="3"] .brand-mark{width:62px;height:48px;border-radius:9px}
.site-shell[data-stage="2"] .brand-mark img,
.site-shell[data-stage="3"] .brand-mark img{width:58px;max-height:43px;height:auto}
.site-shell[data-stage="2"] .oz-lockup,.site-shell[data-stage="2"] .stage-presents,
.site-shell[data-stage="2"] .gold-divider,.site-shell[data-stage="2"] .hero>p,
.site-shell[data-stage="3"] .oz-lockup,.site-shell[data-stage="3"] .stage-presents,
.site-shell[data-stage="3"] .gold-divider,.site-shell[data-stage="3"] .hero>p{display:none}
.site-shell[data-stage="2"] .stage-billing,.site-shell[data-stage="3"] .stage-billing{font-size:9px;margin-bottom:5px}
.site-shell[data-stage="2"] .hero h1,.site-shell[data-stage="3"] .hero h1{font-size:clamp(23px,6vw,31px);color:#ffe3a8;margin:0 auto 3px;line-height:1.05}
.site-shell[data-stage="2"] .steps,.site-shell[data-stage="3"] .steps{margin:5px auto 12px}
.site-shell[data-stage="2"] .road-arc,.site-shell[data-stage="3"] .road-arc{display:none}
.scratch-meter{width:min(100%,300px);height:6px;border-radius:30px;overflow:hidden;background:rgba(2,30,24,.58);margin:11px auto 0;box-shadow:inset 0 1px 3px #0006}
.scratch-meter span{display:block;height:100%;width:0;border-radius:30px;background:linear-gradient(90deg,#c99339,#ffdf91);transition:width .12s ease-out}
#scratchCanvas{touch-action:none;transition:opacity .8s ease-out}
#scratchCanvas.scratched-away{opacity:0}
.scratch-progress{margin:6px 0 0}
@media(max-width:649px){
  .experience-card{padding:19px 14px 17px}
  .scratch-wrap h2{font-size:29px;margin-bottom:7px}
  .scratch-wrap p.hint{font-size:12px;margin-bottom:13px}
  .scratch-container{max-width:330px;aspect-ratio:1.46/1}
}
@media(max-width:355px){
  .hero h1{font-size:21px}
  .brand-text strong{font-size:10.5px}
  .oz-lockup .oz-big{font-size:59px}
  .step-dot{font-size:9px}
  .steps{gap:5px}
}

/* O prêmio deve ser legível sem ocupar a tela toda. */
.result .prize-big{font-size:clamp(31px,8vw,43px);line-height:1.05;margin:10px auto 3px}
.result .prize-description{color:#e9d5aa;font-size:13px;line-height:1.35;margin:3px auto 15px;max-width:290px}