:root{--red:#A51F2B;--green:#173F35;--gold:#C69A52;--cream:#F8F0E2;--wood:#634633;--snow:#FFFCF7;--ink:#332b26;--line:#e2d3bc}*{box-sizing:border-box}html{scroll-behavior:smooth}body{margin:0;background:var(--snow);color:var(--ink);font-family:Nunito,Arial,sans-serif;line-height:1.65}a{color:inherit}button,input,textarea,select{font:inherit}button,a{touch-action:manipulation}:focus-visible{outline:3px solid var(--gold);outline-offset:3px}.container{width:min(1150px,calc(100% - 40px));margin:auto}.skip{position:absolute;top:-100px;background:white;padding:12px;z-index:20}.skip:focus{top:0}.site-header{background:var(--snow);border-bottom:1px solid var(--line);position:relative;z-index:5}.nav-row{min-height:88px;display:flex;align-items:center;justify-content:space-between;gap:24px}.brand{display:flex;align-items:center;gap:10px;text-decoration:none;color:var(--green);font-family:'Cinzel Decorative',Georgia,serif;font-size:14px;line-height:1.35}.brand-mark{font-family:Georgia,serif;font-size:32px;color:var(--gold)}nav{display:flex;align-items:center;gap:25px}nav a{text-decoration:none;font-weight:800;font-size:14px}nav a:hover{color:var(--red)}.nav-cta{color:var(--red)}.menu-toggle{display:none}.hero{background:linear-gradient(112deg,#f9f0e2 0%,#f5e4cb 64%,#ead2b1 100%);overflow:hidden}.hero-grid{display:grid;grid-template-columns:49% 51%;align-items:center;min-height:590px}.hero-copy{padding:60px 26px 60px 0;position:relative;z-index:2}.eyebrow{font-size:12px;text-transform:uppercase;letter-spacing:.15em;color:var(--red);font-weight:800}.hero h1,h2,h3{font-family:'Cinzel Decorative',Georgia,serif;line-height:1.25}h1{font-size:clamp(37px,4.2vw,62px);color:var(--green);margin:19px 0 23px}h1 em,h2 em{font-style:normal;color:var(--red)}.hero-copy>p:not(.micro){font-size:19px;max-width:510px}.button{display:inline-flex;align-items:center;gap:15px;justify-content:center;background:var(--red);color:white;text-decoration:none;border:2px solid var(--red);border-radius:8px;padding:15px 24px;font-weight:800;box-shadow:0 5px 0 #6e1720;transition:transform .2s}.button:hover{transform:translateY(-2px)}.button-outline{background:transparent;color:var(--red);box-shadow:none}.micro{font-size:13px;color:var(--wood);margin-top:23px}.hero-scene{min-height:540px;align-self:stretch;background:linear-gradient(90deg,#f5e4cb00 0%,#f5e4cb18 12%),url('../assets/papai-noel-oficina.webp') center center/cover no-repeat;position:relative}.scene-fallback{position:absolute;inset:0;display:flex;flex-direction:column;justify-content:center;align-items:center;gap:10px;color:#fff;background:linear-gradient(145deg,#173f35e8,#634633a8);text-align:center;padding:25px}.scene-fallback span{font-size:42px;color:var(--gold)}.scene-fallback strong{font-family:'Cinzel Decorative',Georgia,serif;font-size:22px}.scene-fallback small{font-size:13px}.hero-scene.has-image .scene-fallback{display:none}.section{padding:86px 0}h2{font-size:clamp(27px,3.3vw,42px);color:var(--green);margin:10px 0 22px}h3{font-size:18px;color:var(--green)}.centered{text-align:center}.how{background:var(--cream)}.steps{display:grid;grid-template-columns:repeat(3,1fr);gap:25px;margin-top:45px}.step{text-align:center;padding:22px 20px}.step-art{width:95px;height:95px;margin:auto;border-radius:50%;background:var(--snow);border:2px solid #e6d2ad;display:grid;place-items:center;color:var(--gold);font-size:50px}.step-num{display:block;margin-top:18px;color:var(--red);font-weight:800;letter-spacing:.14em}.step p{font-size:15px}.magic{background:var(--snow)}.magic-grid{display:grid;grid-template-columns:1fr 1fr;gap:85px;align-items:center}.magic-grid>div:first-child p:not(.eyebrow){font-size:18px}.letter{background:#f1e4cb;padding:20px;box-shadow:0 20px 40px #63463320;transform:rotate(1deg)}.letter-frame{border:2px solid #d8bc88;background:linear-gradient(#fff9ed,#f8edda);padding:28px 32px;min-height:500px;font-family:Georgia,serif;font-size:15px;line-height:1.7}.letter-top{text-align:center;font-size:13px;font-weight:bold;letter-spacing:.07em;color:var(--green)}.letter-seal{font-size:38px;text-align:center;color:var(--gold)}.signature{font-family:'Great Vibes',cursive;font-size:43px;color:var(--red);margin:0}.letter-caption{text-align:center;font:12px Nunito,Arial,sans-serif;color:var(--wood)}.ages{background:linear-gradient(180deg,#f4efe4,#e9f0ee)}.age-grid{display:grid;grid-template-columns:repeat(4,1fr);gap:17px;margin-top:40px}.age-grid article{background:var(--snow);border:1px solid var(--line);border-radius:14px;padding:28px 14px;text-align:center}.age-grid article span{font-size:35px;color:var(--gold)}.age-grid h3{font-size:15px}.age-grid p{color:var(--wood)}.age-note{font-size:13px;color:var(--wood)}.final-cta{background:var(--green);color:white}.final-cta h2{color:white}.final-cta p{margin-bottom:24px}.final-cta .micro{color:#f1e4cb}.faq-inner{max-width:780px}.faq details{border-bottom:1px solid var(--line);padding:17px 0}.faq summary{cursor:pointer;font-weight:800;color:var(--green)}footer{background:#102e27;color:#f9f0e2;padding:38px 0}.footer-row{display:flex;justify-content:space-between;gap:25px;font-size:13px}.footer-row>div{max-width:430px}.footer-row strong{font-family:'Cinzel Decorative',Georgia,serif}footer p{margin:7px 0} @media(max-width:850px){.menu-toggle{display:block;border:1px solid var(--line);background:white;border-radius:8px;padding:9px 12px;color:var(--green);font-weight:800}nav{display:none;position:absolute;top:100%;left:0;right:0;background:var(--snow);padding:20px;flex-direction:column;align-items:stretch;box-shadow:0 12px 20px #0002}nav.open{display:flex}.hero-grid{grid-template-columns:1fr}.hero-copy{padding:55px 0 25px}.hero-scene{min-height:340px;margin:0 -20px}.steps{gap:12px}.magic-grid{gap:30px}.age-grid{grid-template-columns:repeat(2,1fr)}}@media(max-width:600px){.section{padding:55px 0}.steps,.magic-grid{grid-template-columns:1fr}.step{padding:12px 10px}.hero-copy>p:not(.micro){font-size:17px}.hero-scene{min-height:290px}.letter{transform:none}.letter-frame{padding:20px 18px;min-height:auto}.age-grid{gap:10px}.age-grid article{padding:18px 8px}.age-grid h3{font-size:13px}.footer-row{flex-direction:column}}

.footer-links{display:flex;flex-direction:column;gap:8px}.footer-links a{color:#fff2d8;text-underline-offset:3px}.legal-page{padding:55px 0 85px;background:var(--cream)}.legal-content{max-width:820px;background:var(--snow);border:1px solid var(--line);border-radius:18px;padding:clamp(22px,5vw,50px)}.legal-content h1{font-size:clamp(28px,4vw,42px)}.legal-content h2{font-size:22px;margin-top:34px}.legal-content p,.legal-content li{line-height:1.75}.legal-note{background:#f5e8d2;border-left:4px solid var(--gold);padding:16px;border-radius:6px}.legal-content a{color:var(--red)}


/* Ajustes finais: visual de carta, navegacao etaria e CTAs */
.how-action{margin-top:30px}
.letter-frame{min-height:405px;overflow:hidden;position:relative}
.letter-preview{height:188px;overflow:hidden;position:relative;font-family:'Caveat','Segoe Print',cursive;font-size:clamp(23px,2.1vw,28px);line-height:1.18;color:#4d392f}
.letter-preview p{margin:9px 0 13px}
.letter-preview::after{content:"";position:absolute;inset:48px 0 0;background:linear-gradient(to bottom,rgba(248,237,218,0) 0%,rgba(248,237,218,.68) 48%,#f8edda 92%);pointer-events:none}
.preview-secret{text-align:center;color:var(--red);font-family:Nunito,Arial,sans-serif;font-weight:800;font-size:13px;margin:8px 0 0}
.age-grid .age-card{display:flex;flex-direction:column;align-items:center;min-height:315px;background:var(--snow);border:1px solid var(--line);border-radius:14px;padding:20px 13px;text-align:center;text-decoration:none;color:inherit;transition:transform .2s,box-shadow .2s,border-color .2s}
.age-card:hover,.age-card:focus-visible{transform:translateY(-5px);border-color:var(--gold);box-shadow:0 12px 25px #63463320}
.age-illustration{width:104px;height:104px;object-fit:contain;display:block}
.age-card h3{font-size:15px;margin:8px 0}
.age-card p{margin:5px 0;color:var(--wood)}
.age-card .age-description{font-size:13px;flex:1}
.age-card .age-action{margin-top:13px;color:var(--red);font-size:13px;font-weight:800}
.phase-intro{background:var(--snow);border:1px solid var(--line);border-radius:18px;max-width:720px;margin:30px auto;padding:clamp(25px,5vw,55px);text-align:center;box-shadow:0 12px 30px #63463312}
.phase-intro[hidden]{display:none}
.phase-intro h2{font-size:clamp(24px,3vw,34px)}
.phase-intro p{font-size:18px;max-width:520px;margin:0 auto 28px}
.phase-sparkle{font-size:32px;color:var(--gold)}
.final-cta .micro{max-width:700px;margin:22px auto 0;line-height:1.6}
@media(max-width:600px){.letter-frame{min-height:365px}.age-grid .age-card{min-height:300px;padding:16px 9px}.age-illustration{width:86px;height:86px}.age-card h3{font-size:13px}.age-card .age-action{font-size:12px}}
@media(prefers-reduced-motion:reduce){.age-grid .age-card{transition:none}}
