/* Natal Solidário 2026 — camada "encanto": narrativa emocional da Home e da campanha (prévia local). */
.sr-only{position:absolute;width:1px;height:1px;padding:0;margin:-1px;overflow:hidden;clip:rect(0,0,0,0);white-space:nowrap;border:0}

/* Luzes caindo nos heróis */
.encanto-snow{position:absolute;inset:0;pointer-events:none;overflow:hidden;z-index:0}
.encanto-snow i{position:absolute;top:-12px;display:block;border-radius:50%;background:#fff3d2;opacity:0;box-shadow:0 0 8px #ffe8b0aa;animation:encanto-fall linear infinite}
.christmas-home>.container,.natal-storytelling .natal-hero>.container{position:relative;z-index:1}
.natal-storytelling .natal-hero{position:relative;overflow:hidden}
@keyframes encanto-fall{0%{transform:translate3d(0,0,0);opacity:0}10%{opacity:.85}90%{opacity:.6}100%{transform:translate3d(var(--drift,20px),var(--fall,640px),0);opacity:0}}

/* Título com brilho dourado discreto */
.christmas-home h1 em,.natal-storytelling .natal-hero h1 em{background:linear-gradient(100deg,#e7c27a 0%,#fff1c6 45%,#e2b867 60%,#efd08b 100%);background-size:220% 100%;-webkit-background-clip:text;background-clip:text;color:transparent;animation:encanto-foil 7s ease-in-out infinite alternate}
@keyframes encanto-foil{from{background-position:100% 0}to{background-position:0 0}}

/* HOME — envelope com a carta */
.encanto-envelope-section{background:#fcf7ed;padding:95px 0 90px;overflow:hidden}
.encanto-envelope-grid{display:grid;grid-template-columns:1fr .9fr;gap:70px;align-items:center;max-width:1080px}
.encanto-envelope-copy .christmas-kicker{color:#a34446}
.encanto-envelope-copy h2{font-family:Georgia,serif;font-size:clamp(30px,3.4vw,44px);font-weight:400;line-height:1.2;color:#173f32;margin:16px 0 20px}
.encanto-envelope-copy h2 em{color:#9b3e43;font-weight:400}
.encanto-envelope-copy>p:not(.christmas-kicker){font-size:15px;line-height:1.9;color:#5f725f;max-width:470px}
.encanto-envelope-copy .christmas-inline{margin-top:18px}
.encanto-envelope{position:relative;display:block;height:420px;text-decoration:none;color:inherit;perspective:900px}
.encanto-envelope:focus-visible{outline:3px solid #b98b45;outline-offset:10px;border-radius:12px}
.envelope-back{position:absolute;left:0;right:0;bottom:0;height:250px;background:#b7524f;border-radius:8px;box-shadow:0 28px 55px #6e2a2a30}
.envelope-letter{position:absolute;left:28px;right:28px;bottom:40px;height:280px;background:#fffdf6;border:1px solid #eadfc6;border-radius:4px;padding:30px 30px 0;box-shadow:0 8px 20px #6b4b2215;transform:translateY(20px);transition:transform .7s cubic-bezier(.2,.8,.2,1);display:flex;flex-direction:column;gap:14px}
.envelope-letter small{font-size:9px;letter-spacing:.14em;color:#9b6446;font-weight:750}
.envelope-letter em{font-family:Georgia,serif;font-size:21px;line-height:1.5;color:#8c3c40}
.envelope-letter b{font-size:12px;color:#173f32;border-bottom:1px solid #c8a77b;align-self:flex-start;padding-bottom:5px}
.envelope-front{position:absolute;left:0;right:0;bottom:0;height:170px;border-radius:0 0 8px 8px;background:linear-gradient(160deg,#c45e5a 0 50%,#a9474a 50%);clip-path:polygon(0 0,50% 58%,100% 0,100% 100%,0 100%);z-index:2}
.envelope-seal{position:absolute;z-index:3;left:50%;bottom:72px;width:62px;height:62px;margin-left:-31px;border-radius:50%;display:grid;place-items:center;background:radial-gradient(circle at 35% 30%,#e7c27a,#b0823d 70%);border:3px double #fff1c9;color:#7d2a30;font-size:26px;box-shadow:0 8px 18px #5a1f1f40;transition:transform .5s}
.envelope-tag{position:absolute;z-index:3;right:-6px;bottom:20px;background:#173f32;color:#f4e2b8;font-size:11px;padding:9px 14px;border-radius:30px;transform:rotate(-4deg)}
.encanto-envelope:hover .envelope-letter,.encanto-envelope:focus-visible .envelope-letter{transform:translateY(-125px)}
.encanto-head h2,.encanto-envelope-copy h2,.encanto-gift-moment h2{text-wrap:balance}
.encanto-envelope:hover .envelope-seal,.encanto-envelope:focus-visible .envelope-seal{transform:scale(.9) rotate(-12deg)}

/* HOME — etiquetas de presente */
.encanto-gifts{background:linear-gradient(#fcf7ed,#f3ead6);padding:90px 0 100px;position:relative;overflow:hidden}
.encanto-gifts:before{content:'';position:absolute;left:0;right:0;top:58px;height:1px;background:#c9a96a}
.encanto-head{text-align:center;max-width:760px;margin:0 auto 46px}
.encanto-head .christmas-kicker{color:#a34446}
.encanto-head h2{font-family:Georgia,serif;font-weight:400;font-size:clamp(30px,3.5vw,46px);line-height:1.18;color:#173f32;margin-top:14px}
.encanto-head h2 em{color:#9b3e43;font-weight:400}
.encanto-head p{color:#6c7c6c;font-size:15px;line-height:1.8;margin:16px auto 0;max-width:600px}
.gift-tags{display:grid;grid-template-columns:repeat(4,1fr);gap:22px}
.gift-tag{position:relative;display:flex;flex-direction:column;gap:10px;padding:46px 24px 28px;background:#fffdf6;border:1px solid #e3d5b5;border-radius:12px 12px 12px 12px;text-decoration:none;color:#173f32;box-shadow:0 14px 30px #6b4b2212;transform:rotate(var(--tilt,0deg));transform-origin:50% -40px;transition:transform .45s cubic-bezier(.2,.8,.2,1),box-shadow .3s}
.gift-tag:nth-child(1){--tilt:-2.5deg}.gift-tag:nth-child(2){--tilt:1.5deg}.gift-tag:nth-child(3){--tilt:-1deg}.gift-tag:nth-child(4){--tilt:2.5deg}
.gift-tag:before{content:'';position:absolute;left:50%;top:-58px;width:1px;height:70px;background:#c9a96a}
.gift-tag-hole{position:absolute;left:50%;top:14px;width:14px;height:14px;margin-left:-7px;border-radius:50%;border:2px solid #c9a96a;background:#f3ead6}
.gift-tag-num{font-size:9px;letter-spacing:.16em;color:#a0763c;font-weight:750}
.gift-tag-icon{font-size:30px;color:#a14848;line-height:1}
.gift-tag strong{font-family:Georgia,serif;font-weight:400;font-size:24px;line-height:1.2}
.gift-tag>span:last-child{font-size:13px;line-height:1.6;color:#687868}
.gift-tag:hover,.gift-tag:focus-visible{transform:rotate(0) translateY(-6px);box-shadow:0 22px 40px #6b4b2222}
.gift-tag:focus-visible{outline:3px solid #b98b45;outline-offset:4px}
.encanto-sponsor-teaser{margin:50px auto 0;max-width:860px;display:flex;align-items:center;justify-content:space-between;gap:30px;background:#173f32;color:#f2e4c0;border:1px solid #ac8a4d;border-radius:14px;padding:30px 36px;position:relative;overflow:hidden;box-shadow:0 25px 55px #163f3225}
.encanto-sponsor-teaser:before{content:'✦';position:absolute;right:160px;top:-50px;font-size:150px;color:#c09a511a;pointer-events:none}
.encanto-sponsor-teaser span{font-size:9px;letter-spacing:.14em;color:#dabc82;font-weight:750}
.encanto-sponsor-teaser strong{display:block;font-family:Georgia,serif;font-weight:400;font-size:46px;color:#f2d391;letter-spacing:-.03em;line-height:1.1;margin-top:6px}
.encanto-sponsor-teaser p{margin:4px 0 0;color:#cfdccb;font-size:14px}
.encanto-sponsor-teaser .christmas-button{flex-shrink:0}

/* CAMPANHA — barra de leitura e capítulos */
.story-progress{position:fixed;top:0;left:0;height:3px;width:100%;transform-origin:0 50%;transform:scaleX(0);background:linear-gradient(90deg,#a1383e,#e9c987);z-index:60;pointer-events:none}
.chapter-dots{position:fixed;right:22px;top:50%;transform:translateY(-50%);z-index:45;display:flex;flex-direction:column;gap:14px}
.chapter-dots a{position:relative;display:block;width:11px;height:11px;border-radius:50%;border:1px solid #b98b45;background:#fcf7edcc;transition:background .3s,transform .3s}
.chapter-dots a span{position:absolute;right:22px;top:50%;transform:translateY(-50%);white-space:nowrap;font-size:11px;background:#173f32;color:#f4e2b8;padding:6px 10px;border-radius:20px;opacity:0;pointer-events:none;transition:opacity .2s}
.chapter-dots a:hover span,.chapter-dots a:focus-visible span{opacity:1}
.chapter-dots a.is-current{background:#a1383e;border-color:#a1383e;transform:scale(1.25)}
.chapter-mark{display:block;font-family:Georgia,serif;font-size:13px;letter-spacing:.3em;color:#b08a4f;margin-bottom:10px}

/* CAMPANHA — o presente que se abre */
.encanto-gift-moment{text-align:center;background:radial-gradient(ellipse at 50% 70%,#f6e7c5,transparent 65%),#eadcc0;padding:80px 15px 90px}
.encanto-gift-moment h2{font-family:Georgia,serif;font-weight:400;font-size:clamp(27px,3vw,41px);color:#234837;line-height:1.25;margin:10px 0 0}
.encanto-gift-moment h2 em{color:#963f42;font-weight:400}
.gift-box{position:relative;display:block;width:170px;height:170px;margin:64px auto 0;border:0;background:none;cursor:pointer;padding:0}
.gift-box:focus-visible{outline:3px solid #a1383e;outline-offset:14px;border-radius:10px}
.gift-body{position:absolute;left:12px;right:12px;bottom:0;height:110px;background:linear-gradient(90deg,#a1383e 0 42%,#e9c987 42% 58%,#a1383e 58%);border-radius:0 0 8px 8px;box-shadow:0 22px 40px #6e2a2a35}
.gift-lid{position:absolute;left:0;right:0;top:34px;height:34px;background:linear-gradient(90deg,#b4454a 0 42%,#f0d394 42% 58%,#b4454a 58%);border-radius:6px;box-shadow:0 6px 12px #5a1f1f30;transform-origin:10% 100%;transition:transform .8s cubic-bezier(.3,1.4,.4,1)}
.gift-lid:before,.gift-lid:after{content:'';position:absolute;top:-30px;width:42px;height:34px;border:7px solid #e9c987;border-radius:50% 50% 0 50%}
.gift-lid:before{left:40px;transform:rotate(20deg)}.gift-lid:after{right:40px;transform:scaleX(-1) rotate(20deg)}
.gift-glow{position:absolute;left:50%;bottom:90px;width:12px;height:12px;margin-left:-6px;border-radius:50%;background:#fff3cf;box-shadow:0 0 0 0 #ffe6a8;opacity:0;transition:opacity .4s .3s,box-shadow 1s .3s}
.gift-box:not(.is-open){animation:gift-wiggle 3.6s ease-in-out infinite}
.gift-box.is-open .gift-lid{transform:translate(-34px,-14px) rotate(-24deg)}
.gift-box.is-open .gift-glow{opacity:1;box-shadow:0 0 60px 40px #ffe6a8aa}
@keyframes gift-wiggle{0%,82%,100%{transform:rotate(0)}86%{transform:rotate(-4deg)}90%{transform:rotate(4deg)}94%{transform:rotate(-2deg)}}
.gift-hint{font-size:12px;color:#8a6a43;margin-top:18px;letter-spacing:.04em}
.gift-message{max-width:640px;margin:26px auto 0;animation:gift-reveal .8s ease both}
.gift-message p{font-family:Georgia,serif;font-size:clamp(20px,2.2vw,26px);line-height:1.55;color:#2f4b3b;margin:0}
.gift-message p strong{color:#963f42;font-weight:400}
.gift-message a{display:inline-block;margin-top:20px;font-size:13px;color:#963f42;font-weight:650;border-bottom:1px solid #c8a77b;padding-bottom:5px;text-decoration:none}
@keyframes gift-reveal{from{opacity:0;transform:translateY(14px)}to{opacity:1;transform:none}}

/* CAMPANHA — o que o apadrinhamento leva */
.sponsor-kit{display:grid;grid-template-columns:1fr auto 1fr;gap:14px;align-items:stretch;margin:26px 0 22px}
.kit-child{background:#fffdf6;border:1px solid #e3d5b5;border-radius:12px;padding:20px 20px 16px;box-shadow:0 10px 24px #6b4b220d}
.kit-child-label{display:flex;align-items:center;gap:8px;font-family:Georgia,serif;font-size:19px;color:#173f32;margin-bottom:10px}
.kit-child-label:before{content:'♡';color:#a14848;font-size:18px}
.kit-child ul{list-style:none;margin:0;padding:0}
.kit-child li{font-size:13px;color:#5f725f;padding:6px 0;border-top:1px dashed #e3d5b5}
.kit-child li:first-child{border-top:0}
.kit-plus{align-self:center;font-family:Georgia,serif;font-size:30px;color:#b08a4f}
.kit-shared{grid-column:1/-1;background:#f1e7d5;border-radius:12px;padding:15px 20px;font-size:13px;color:#5f5a45;line-height:1.7}
.kit-shared b{color:#7f3e3e;font-weight:650}

.encanto-steps{display:grid;grid-template-columns:repeat(3,1fr);gap:20px;margin-top:60px;counter-reset:passo}
.encanto-steps li{list-style:none;position:relative;padding:26px 24px 24px;background:#fffdf6;border:1px solid #e9dec6;border-radius:12px}
.encanto-steps li:before{counter-increment:passo;content:counter(passo);display:grid;place-items:center;width:34px;height:34px;border-radius:50%;background:#173f32;color:#efd08b;font-family:Georgia,serif;font-size:16px;margin-bottom:14px}
.encanto-steps strong{display:block;font-family:Georgia,serif;font-weight:400;font-size:21px;color:#173f32;margin-bottom:6px}
.encanto-steps p{font-size:13px;color:#667766;margin:0;line-height:1.7}
.encanto-steps-wrap{max-width:1050px;padding:0}
.encanto-steps-title{font-family:Georgia,serif;font-weight:400;font-size:26px;color:#173f32;margin:70px 0 0;text-align:center}

/* CAMPANHA — 500 luzes */
.encanto-constellation-wrap{max-width:820px;margin:0 auto 46px}
.encanto-constellation{display:grid;grid-template-columns:repeat(50,1fr);gap:5px;padding:4px}
.encanto-constellation i{display:block;aspect-ratio:1;border-radius:50%;background:#efd08b;opacity:.35;animation:encanto-twinkle 3.2s ease-in-out infinite alternate;animation-delay:var(--d,0s)}
.encanto-constellation i:nth-child(7n){background:#f3b9a5}
.encanto-constellation-caption{font-family:Georgia,serif;font-size:18px;color:#f1e1bb;margin:20px 0 0}
.encanto-constellation-caption small{display:block;font-family:inherit;font-size:12px;color:#b7cdbb;margin-top:6px}
@keyframes encanto-twinkle{from{opacity:.25;transform:scale(.8)}to{opacity:1;transform:scale(1)}}

@media(max-width:1100px){.chapter-dots{display:none}}
@media(max-width:1000px){.gift-tags{grid-template-columns:repeat(2,1fr);gap:70px 22px}.encanto-envelope-grid{gap:40px}}
@media(max-width:800px){.encanto-envelope-section{padding:60px 0}.encanto-envelope-grid{grid-template-columns:1fr;gap:30px}.encanto-envelope{max-width:460px;width:100%;margin:10px auto 0;height:400px}.envelope-letter,.encanto-envelope:hover .envelope-letter{transform:translateY(-95px)}.encanto-gifts{padding:60px 0 70px}.encanto-sponsor-teaser{flex-direction:column;align-items:flex-start;padding:26px 24px}.encanto-steps{grid-template-columns:1fr;gap:14px;margin-top:40px}.encanto-gift-moment{padding:56px 15px 64px}.encanto-constellation{grid-template-columns:repeat(25,1fr);gap:4px}}
@media(max-width:480px){.gift-tags{grid-template-columns:1fr;gap:64px;max-width:330px;margin:0 auto}.gift-tag{--tilt:0deg!important}.encanto-envelope{height:400px}.envelope-letter{left:16px;right:16px;padding:22px 20px 0}.envelope-letter em{font-size:17px}.envelope-tag{right:6px}.encanto-sponsor-teaser .christmas-button{width:100%}.encanto-sponsor-teaser strong{font-size:40px}.sponsor-kit{grid-template-columns:1fr;gap:10px}.kit-plus{justify-self:center;line-height:1}.encanto-constellation{grid-template-columns:repeat(25,1fr);gap:5px}}
@media(prefers-reduced-motion:reduce){.encanto-snow{display:none}.christmas-home h1 em,.natal-storytelling .natal-hero h1 em{animation:none;background-position:50% 0}.envelope-letter,.envelope-seal,.gift-tag,.gift-lid,.gift-glow{transition:none}.gift-box:not(.is-open){animation:none}.gift-message{animation:none}.encanto-constellation i{animation:none;opacity:.8}.story-progress{display:none}}

/* Rodada 2 — régua do gesto */
.natal-storytelling .sponsor-card[data-gesture]{text-align:center}
.gesture-range-label{display:block;font-size:11px;color:#d7c79f;margin:22px 0 10px;letter-spacing:.02em}
.gesture-range{-webkit-appearance:none;appearance:none;width:100%;height:8px;border-radius:8px;background:linear-gradient(90deg,#efd08b var(--fill,62%),#ffffff26 var(--fill,62%));outline:none;cursor:pointer}
.gesture-range::-webkit-slider-thumb{-webkit-appearance:none;width:28px;height:28px;border-radius:50%;background:#fff3cf;border:4px solid #b98b45;box-shadow:0 4px 14px #0006}
.gesture-range::-moz-range-thumb{width:22px;height:22px;border-radius:50%;background:#fff3cf;border:4px solid #b98b45}
.gesture-range:focus-visible{outline:3px solid #efd08b;outline-offset:6px}
.gesture-scale{position:relative;height:14px;font-size:10px;color:#b4c4ad;margin:8px 14px 0}.gesture-scale span{position:absolute;top:0;transform:translateX(-50%);white-space:nowrap}
.gesture-kids{display:grid;grid-template-columns:repeat(8,1fr);gap:6px;margin:20px auto 0;max-width:280px}
.gesture-kids i{position:relative;display:block;aspect-ratio:1;border-radius:50% 50% 45% 45%;background:#ffffff1a;overflow:hidden}
.gesture-kids i:after{content:'';position:absolute;left:0;bottom:0;width:100%;height:var(--f,0%);background:#efd08b;transition:height .35s ease}
.gesture-kids i:nth-child(2n):after{background:#e6a08f}
.gesture-impact{font-size:13px;line-height:1.6;color:#e3ecdf!important;min-height:63px;margin:16px 0 0}
.natal-storytelling .sponsor-card>strong[data-gesture-value]{font-variant-numeric:tabular-nums;transition:color .2s}
@media(prefers-reduced-motion:reduce){.gesture-kids i:after{transition:none}}

/* Rodada 2 — contador de doações (aguardando painel) */
.donation-tracker{margin:70px auto 0;background:#fffdf6;border:1px solid #e3d5b5;border-radius:16px;padding:32px 34px;box-shadow:0 16px 40px #6b4b2210}
.tracker-head{display:flex;flex-wrap:wrap;align-items:flex-end;gap:10px 20px;margin-bottom:22px}
.tracker-head .christmas-kicker{width:100%;color:#a34446;margin:0}
.tracker-head h3{font-family:Georgia,serif;font-weight:400;font-size:30px;color:#173f32;margin:0}
.tracker-badge{font-size:11px;background:#f1e7d5;color:#7a5a2c;border-radius:30px;padding:6px 12px}
.tracker-grid{display:grid;grid-template-columns:repeat(3,1fr);gap:16px}
.tracker-grid>div{background:#f5efdf;border-radius:12px;padding:18px 20px}
.tracker-grid strong{display:block;font-family:Georgia,serif;font-weight:400;font-size:34px;color:#173f32}
.tracker-grid span{font-size:12px;color:#687868}
.tracker-bar{height:10px;border-radius:10px;background:#efe6d2;margin:22px 0 14px;overflow:hidden}
.tracker-bar span{display:block;height:100%;background:linear-gradient(90deg,#286446,#e9c987)}
.tracker-note{font-size:12px;color:#7a7a66;margin:0;line-height:1.7}
@media(max-width:700px){.tracker-grid{grid-template-columns:1fr}.donation-tracker{padding:24px 20px}}

/* Rodada 2 — cores: sem vermelho sobre verde, seção de cuidado clara */
.christmas-photo-note{background:#fcf3df;color:#173f32;border-color:#d9c08b}
.christmas-photo-note>span{color:#a0763c}
.christmas-photo-note strong{color:#7f2f35}
.natal-storytelling .natal-photo-note{background:#fcf3df;color:#173f32;border-color:#d9c08b}
.natal-storytelling .natal-photo-note>span{color:#a14848}
.care-light{background:#f3ead6}
.care-light .section-kicker{color:#a34446}
.care-light h2{color:#173f32}
.care-light .section-lead{color:#5f725f}
.care-light .info-card{background:#fffdf6;border:1px solid #e3d5b5;color:#173f32;box-shadow:0 10px 24px #6b4b220d}
.care-light .info-card h3{color:#173f32}
.care-light .info-card p{color:#5f725f}
.care-light .info-card .icon{background:#173f32;color:#efd08b}

/* Rodada 2 — Contato com as duas unidades */
.contact-units-hero .social-links a{background:#ffffff1a!important;border-color:#ffffff4d!important}.contact-units-hero .social-links svg{fill:#fff8e8!important}
.contact-side{display:flex;flex-direction:column;gap:20px}

/* Rodada 2 — legibilidade: nenhum texto útil abaixo de 10–11px */
.christmas-kicker,.natal-solidario .natal-eyebrow{font-size:11px!important}
.christmas-site-ribbon,.christmas-site-ribbon a,.christmas-site-ribbon>span:nth-child(2){font-size:12px!important}
.letter-paper .christmas-kicker{font-size:10px!important}
.natal-storytelling .natal-season,.natal-solidario .natal-season{font-size:10px!important}
.christmas-photo-note>span,.christmas-photo-note>span:last-child{font-size:10px!important}
.christmas-home-facts>span,.christmas-home-actions>span{font-size:11px!important}
.gift-tag-num,.sponsor-card>span,.encanto-sponsor-teaser span,.gesture-scale{font-size:10px}
.natal-storytelling .sponsor-card>small,.sponsor-card small{font-size:11px}
.tracker-goal{font-size:13px;color:#173f32;margin:0 0 10px}.tracker-goal strong{font-family:Georgia,serif;font-weight:400;font-size:17px}
.tracker-grid{grid-template-columns:repeat(4,1fr)}@media(max-width:900px){.tracker-grid{grid-template-columns:repeat(2,1fr)}}.tracker-feed{list-style:none;margin:16px 0 0;padding:0;display:flex;flex-wrap:wrap;gap:8px}.tracker-feed li{background:#f1e7d5;color:#173f32;border-radius:30px;padding:7px 14px;font-size:13px;animation:gift-reveal .5s ease both}.tracker-feed small{color:#7a6a4c;font-size:11px}.tracker-heart{color:#a14848;margin-right:6px}.tracker-badge.is-live{background:#e3efe4;color:#1f5a3a}.tracker-badge.is-live:before{content:'';display:inline-block;width:7px;height:7px;border-radius:50%;background:#2e8b57;margin-right:6px;vertical-align:1px}
.natal-memories{background:#fcf7ed;padding:80px 0 70px;text-align:center;overflow:hidden}.natal-memories h2{font-family:Georgia,serif;font-weight:400;font-size:clamp(28px,3.2vw,42px);line-height:1.22;color:#173f32;margin:12px 0 40px;text-wrap:balance}.natal-memories h2 em{color:#9b3e43;font-weight:400}.natal-memories .christmas-kicker{color:#a34446}.memories-strip{display:flex;justify-content:center;gap:16px;flex-wrap:wrap;max-width:1080px;margin:0 auto}.memories-strip figure{margin:0;width:192px;background:#fffdf6;padding:9px 9px 30px;border:1px solid #eadfc6;box-shadow:0 14px 30px #6b4b2218;transform:rotate(var(--r,0deg));transition:transform .4s}.memories-strip figure:nth-child(1){--r:-4deg}.memories-strip figure:nth-child(2){--r:2deg}.memories-strip figure:nth-child(3){--r:-1deg}.memories-strip figure:nth-child(4){--r:3deg}.memories-strip figure:nth-child(5){--r:-3deg}.memories-strip figure:hover{transform:rotate(0) scale(1.04)}.memories-strip img{display:block;width:100%;height:150px;object-fit:cover}.memories-note{font-size:12px;color:#7a7a66;margin-top:26px}@media(max-width:600px){.memories-strip{gap:12px}.memories-strip figure{width:calc(50% - 8px);padding:6px 6px 20px}.memories-strip img{height:110px}.memories-strip figure:nth-child(5){display:none}}@media(prefers-reduced-motion:reduce){.memories-strip figure{transition:none}}

/* Rodada final — nenhum balão por cima das crianças (pedido de Marcus, iPhone 11 e computador) */
.christmas-photo-story{height:620px}
.christmas-photo-main{top:35px;height:340px}
.christmas-photo-note{top:400px;bottom:auto;left:-10px;max-width:330px;transform:rotate(-2deg)}
.christmas-photo-small{top:372px;bottom:auto;right:-6px}
.natal-storytelling .natal-picture .natal-photo-note,.natal-solidario .natal-photo-note{position:relative;left:auto;right:auto;bottom:auto;display:block;max-width:none;margin:16px 0 0;transform:rotate(-1deg)}
.letter-photo>span{position:relative;left:auto;bottom:auto;display:inline-block;margin:-6px 0 0 22px;transform:rotate(-1deg)}
@media(max-width:800px){
  .christmas-photo-story{height:auto;display:flex;flex-wrap:wrap;gap:16px;align-items:flex-start;max-width:520px;margin:25px auto 0}
  .christmas-photo-main{position:relative;inset:auto;width:100%;height:300px;transform:none}
  .christmas-photo-note{position:relative;inset:auto;flex:1 1 180px;max-width:none;transform:none;margin-top:6px}
  .christmas-photo-small{position:relative;inset:auto;flex:0 0 150px;width:150px;transform:rotate(4deg);margin:6px 4px 30px 0}
  .christmas-photo-small img{height:120px}
  .christmas-photo-star{top:-18px;left:-6px}
  .hanging-ornament{display:none}
}
@media(max-width:480px){
  .christmas-photo-main{height:240px}
  .christmas-photo-note{flex-basis:100%;padding:18px 20px}
  .christmas-photo-small{margin:0 auto 34px}
  .letter-photo>span{margin-left:12px;font-size:22px}
}
.letter-photo>span{margin-top:18px}@media(max-width:800px){.christmas-photo-small{flex:0 0 200px;width:200px}.christmas-photo-small img{height:130px}.christmas-photo-small>span{white-space:nowrap;font-size:11.5px}}

/* Celular: a carta começa fechada e abre quando a pessoa continua rolando a tela (js/natal-encanto.js) */
@media(max-width:800px){.envelope-letter,.encanto-envelope:hover .envelope-letter{transform:translateY(20px);transition:transform 1.1s cubic-bezier(.2,.8,.2,1)}.encanto-envelope.is-open .envelope-letter{transform:translateY(-95px)}.encanto-envelope .envelope-seal{transition:transform .6s}.encanto-envelope.is-open .envelope-seal{transform:scale(.9) rotate(-12deg)}}@media(max-width:800px) and (prefers-reduced-motion:reduce){.envelope-letter,.encanto-envelope:hover .envelope-letter{transform:translateY(-95px)}}
@media(max-width:800px){.envelope-letter,.encanto-envelope:hover .envelope-letter{transform:translateY(75px)}.encanto-envelope.is-open .envelope-letter{transform:translateY(-95px)}}@media(max-width:800px) and (prefers-reduced-motion:reduce){.envelope-letter,.encanto-envelope:hover .envelope-letter{transform:translateY(-95px)}}

/* Área do Doador: primeiro acesso e identificação */
.profile-intro{font-size:15px;line-height:1.6;color:#45584a;background:#f5efdf;border-radius:10px;padding:12px 14px;margin:0 0 14px}.donor-identity{display:flex;flex-wrap:wrap;align-items:baseline;gap:6px 10px;background:#f5efdf;border:1px solid #e3d5b5;border-radius:12px;padding:14px 16px;margin:0 0 16px;font-size:15px;color:#45584a}.donor-identity strong{font-size:17px;color:#173f32}.donor-identity .small-label{width:100%;font-size:12px;letter-spacing:.1em;color:#a0763c}#member-identity{font-size:16px}
