@font-face{font-family:Archivo;src:url('../fonts/archivo-latin-wdth-normal.woff2') format('woff2');font-display:swap}@font-face{font-family:Instrument;src:url('../fonts/instrument-serif-latin-400-normal.woff2') format('woff2');font-display:swap}
:root{--paper:#fff6e8;--peach:#eab79e;--sage:#7c9b87;--gold:#b78c49;--ink:#352d2b;--soft:#f7e9d6;--line:rgba(53,45,43,.22);--cor-confete:#eab79e,#7c9b87,#b78c49,#fff6e8;color:var(--ink);background:var(--paper);font-family:Archivo,Arial,sans-serif;font-synthesis:none;scroll-behavior:smooth}*{box-sizing:border-box}html,body{margin:0;min-width:320px}body{overflow-x:hidden}img{max-width:100%;display:block}a{color:inherit}button,input{font:inherit}button{cursor:pointer}button:disabled{cursor:not-allowed;opacity:.5}:focus-visible{outline:3px solid var(--gold);outline-offset:4px}.sr-only{position:absolute;width:1px;height:1px;overflow:hidden;clip:rect(0,0,0,0)}.skip{position:absolute;top:-100px;left:12px;z-index:100;background:var(--paper);padding:12px}.skip:focus{top:12px}.section-pad{padding:clamp(72px,9vw,142px) clamp(22px,6vw,100px)}.section-index,.small-label,.eyebrow,.top-stamp,.capa-bottom,.ticket-top,.ticket-footer,.detail-row>span,.label-vertical{font-size:11px;font-weight:750;letter-spacing:.18em}.section-index{color:#886d5e}.small-label{color:#916e45}.button{display:inline-flex;align-items:center;justify-content:space-between;gap:18px;text-decoration:none;border-radius:3px;min-height:56px;padding:0 23px;font-size:13px;font-weight:800;letter-spacing:.035em;transition:transform .25s,background .25s}.button:hover{transform:translateY(-3px)}.button-primary{background:var(--ink);color:var(--paper)}.button-primary:hover{background:#5a433c}.text-button{border:0;border-bottom:1px solid currentColor;color:var(--ink);background:transparent;padding:4px 0;font-size:12px;font-weight:700}.topbar{position:absolute;z-index:5;top:0;left:0;right:0;display:flex;align-items:center;justify-content:space-between;padding:24px clamp(22px,5vw,70px)}.brand{text-decoration:none;display:flex;gap:10px;align-items:center;font-size:11px;line-height:1.05;letter-spacing:.07em;text-transform:uppercase}.brand strong{font-size:15px;letter-spacing:.01em}.brand-mark{font-family:Instrument,serif;font-size:48px;color:#b46f52;line-height:.7}.top-stamp{border:1px solid var(--line);padding:10px 13px;border-radius:100px}
.capa{position:relative;min-height:min(860px,100svh);height:clamp(660px,100svh,950px);display:grid;place-items:center;overflow:hidden;background:#f9e9d5}.capa-image{position:absolute;inset:0;background:url('../img/papelaria-leve.webp') center 53%/cover no-repeat}.capa-grain{position:absolute;inset:0;background:linear-gradient(90deg,rgba(255,246,232,.81) 0%,rgba(255,246,232,.69) 48%,rgba(255,246,232,.08) 85%)}.capa-content{position:relative;z-index:2;width:min(560px,85vw);margin-right:min(34vw,480px);padding-top:20px}.eyebrow{display:inline-block;color:#765f50;margin-bottom:25px}.mini-star{font-size:15px;color:var(--gold);padding:0 4px}.capa h1{font-size:clamp(62px,8.7vw,145px);line-height:.84;letter-spacing:-.085em;margin:0 0 27px;font-weight:650}.capa h1 span,.capa h1 em{display:block}.capa h1 em{font-family:Instrument,serif;font-weight:400;letter-spacing:-.055em;color:#a3684d;margin-left:.23em}.capa p{font-size:clamp(15px,1.5vw,20px);line-height:1.5;max-width:320px;margin:0 0 34px}.capa-gift{position:absolute;z-index:1;width:min(43vw,610px);height:auto;right:2%;bottom:7%;filter:drop-shadow(0 20px 18px rgba(94,64,47,.15));animation:gift-in .9s cubic-bezier(.2,.8,.2,1) both}.capa-bottom{position:absolute;bottom:22px;left:clamp(22px,5vw,70px);right:clamp(22px,5vw,70px);display:flex;justify-content:space-between;border-top:1px solid var(--line);padding-top:14px;color:#786a5c}@keyframes gift-in{from{opacity:0;transform:translateY(28px) rotate(-4deg)}to{opacity:1;transform:none}}
.letter{background:var(--paper)}.letter-grid{display:grid;grid-template-columns:minmax(0,1.35fr) minmax(220px,.65fr);gap:8vw;max-width:1220px;margin:45px auto 0}.letter-note{position:relative;padding-left:37px}.label-vertical{position:absolute;top:0;left:0;writing-mode:vertical-rl;transform:rotate(180deg);color:#b49174}.letter-paper{position:relative;background:#fffdf6;min-height:500px;padding:clamp(38px,6vw,95px);box-shadow:0 18px 54px rgba(88,62,45,.08);border:1px solid #eadbc8;transform:rotate(-1.2deg)}.letter-paper:after{content:'';position:absolute;inset:12px;border:1px solid rgba(183,140,73,.32);pointer-events:none}.paper-hole{position:absolute;top:24px;right:24px;width:22px;height:22px;border:1px solid #d8c4aa;border-radius:50%;background:var(--paper)}.letter h2,.day h2,.rsvp h2{font-size:clamp(43px,5.2vw,82px);line-height:.96;letter-spacing:-.065em;font-weight:600;margin:25px 0}.letter h2 em,.day h2 em,.ticket-intro h2 em{font-family:Instrument,serif;font-weight:400;color:#a7785a}.letter-paper p{font-size:clamp(16px,1.6vw,21px);line-height:1.65;max-width:560px}.signature{display:block;margin-top:35px;font-family:Instrument,serif;font-size:27px;color:#9b6a52}.letter-side{align-self:end;padding-bottom:55px;max-width:310px}.sun-doodle{font-family:Instrument,serif;font-size:125px;color:var(--gold);line-height:1}.letter-side p{font-family:Instrument,serif;font-size:32px;line-height:1.1}.letter-side strong{font-size:12px;text-transform:uppercase;letter-spacing:.15em;line-height:1.5}.letter-arrow{font-family:Instrument,serif;font-size:70px;color:var(--sage);display:block;margin-top:30px}
.ticket-section{background:#e9d8c2;background-image:radial-gradient(rgba(86,63,51,.05) .7px,transparent .7px);background-size:8px 8px}.ticket-intro{text-align:center;margin:35px auto 48px;max-width:750px}.ticket-intro h2{font-size:clamp(54px,7vw,105px);line-height:.9;letter-spacing:-.075em;margin:20px 0 23px;font-weight:620}.ticket-intro p{font-size:16px;line-height:1.55;max-width:465px;margin:auto}.ticket{position:relative;max-width:750px;margin:auto;background:#fffaf0;box-shadow:0 21px 45px rgba(64,40,30,.15);border:1px solid #cdb9a0;transform:rotate(.6deg)}.ticket:before,.ticket:after{content:'';position:absolute;left:-13px;top:50%;width:26px;height:26px;border-radius:50%;background:#e9d8c2}.ticket:after{left:auto;right:-13px}.ticket-perf{position:absolute;top:0;bottom:0;left:25px;border-left:1px dashed #d4ba9b}.ticket-body{padding:38px clamp(28px,6vw,75px) 45px}.ticket-top,.ticket-footer{display:flex;align-items:center;justify-content:space-between;gap:8px;color:#a18068}.ticket-flower{font-family:Instrument,serif;font-size:39px;line-height:.7;color:var(--sage)}.ticket-choice{padding:30px 0 22px;border-bottom:1px dashed #c9ae90}.campo-palpite{margin-top:16px}.palpites{display:flex;gap:10px;flex-wrap:wrap}.palpite{border:1px solid #bda58c;background:#fffaf0;border-radius:100px;padding:13px 24px;min-width:130px;color:var(--ink);font-size:13px;font-weight:700}.palpite[aria-pressed=true]{background:#426b58;border-color:#426b58;color:white}.choice-note,.scratch-hint,.mode-note{font-size:12px;line-height:1.5;color:#806f61}.scratch{padding-top:28px}.scratch-window{position:relative;overflow:hidden;margin:16px auto 12px;max-width:570px;height:235px;border-radius:8px;border:1px solid #cdb58e;background:#f9ebd1;box-shadow:inset 0 1px 10px rgba(80,53,39,.08)}.scratch-secret{position:absolute;inset:0;display:flex;align-items:center;justify-content:center;flex-direction:column;text-align:center;padding:20px;background:radial-gradient(circle at 50% 47%,#fff8e9,#f2dfbe)}.secret-kicker{font-size:11px;letter-spacing:.18em;font-weight:800;text-transform:uppercase}.scratch-secret strong{font-family:Instrument,serif;font-size:clamp(60px,8vw,100px);font-weight:400;line-height:1.1;color:#946146}.secret-sign{font-family:Instrument,serif;font-size:21px;color:#7c8065}#scratch-canvas{position:absolute;inset:0;width:100%;height:100%;touch-action:none;cursor:crosshair}.scratch-window.revealed #scratch-canvas{visibility:hidden}.scratch-hint{margin:0 0 12px}.ticket-footer{border-top:1px dashed #c9ae90;padding:22px 36px}.ticket-code{font-size:11px}.mode-note{text-align:center;margin:24px auto 0;max-width:550px}
.day{background:#e4e9dc}.day-grid{display:grid;grid-template-columns:minmax(0,1fr) minmax(0,.85fr);gap:clamp(38px,7vw,120px);max-width:1250px;margin:45px auto 0;align-items:center}.day-image{padding:18px;border:1px solid #b6bdac;transform:rotate(-1.5deg);background:#f7f1e4}.day-image img{width:100%;height:clamp(400px,45vw,650px);object-fit:cover}.day h2 em{color:#67816c}.detail-row{padding:20px 0;border-top:1px solid #b9c2b2;display:grid;grid-template-columns:100px 1fr;gap:0 20px}.detail-row>span{color:#758672;grid-row:span 2;padding-top:5px}.detail-row strong{font-size:17px;font-weight:650}.detail-row small{font-size:13px;line-height:1.5;margin-top:5px}.day-actions{display:flex;gap:12px;flex-wrap:wrap;margin-top:22px}.day-actions a,.day-actions button{padding:10px 0;margin-right:12px;border:0;border-bottom:1px solid currentColor;background:none;font-size:12px;text-decoration:none;font-weight:700}
.rsvp{background:#5c6f60;color:#fffaf0;text-align:center}.rsvp-inner{max-width:750px;margin:auto}.rsvp .section-index,.rsvp .small-label{color:#e3c7a6}.rsvp-heading{margin:50px auto 35px}.rsvp h2{font-family:Instrument,serif;font-weight:400;font-size:clamp(55px,8vw,115px);line-height:.9}.rsvp-heading p{max-width:470px;margin:auto;line-height:1.55}.formulario{background:#fffaf0;color:var(--ink);padding:clamp(27px,5vw,65px);text-align:left;box-shadow:0 15px 50px rgba(0,0,0,.08)}.formulario label,.campo-pessoas>span{display:block;font-size:11px;font-weight:800;letter-spacing:.13em;text-transform:uppercase;margin-bottom:10px}.formulario input{display:block;width:100%;padding:16px 4px;background:none;border:0;border-bottom:1px solid #b4a898;border-radius:0;font-size:17px;outline:none}.formulario input:focus{border-color:#426b58}.campo-pessoas{display:flex;align-items:center;justify-content:space-between;gap:20px;margin-top:30px}.campo-pessoas>span{margin:0}.stepper{display:flex;align-items:center;gap:20px}.stepper button{width:34px;height:34px;border-radius:50%;border:1px solid #a8a393;background:none}.pessoas{min-width:20px;text-align:center}.rsvp-actions{display:flex;align-items:center;gap:20px;flex-wrap:wrap;margin-top:30px}.nao-vou{font-size:12px;font-weight:700}.demo-line{font-size:11px;color:#816f60}.rsvp-end{font-family:Instrument,serif;font-size:28px;margin-top:55px}footer{display:flex;justify-content:space-between;gap:20px;padding:30px clamp(22px,6vw,100px);font-size:12px;font-weight:700}footer a{text-decoration:none}.aviso{position:fixed;z-index:100;bottom:25px;left:50%;transform:translate(-50%,30px);background:var(--ink);color:white;padding:13px 20px;opacity:0;pointer-events:none;transition:.25s;box-shadow:0 8px 25px #0002;max-width:90vw;text-align:center}.aviso.mostra{opacity:1;transform:translate(-50%,0)}.nojs-note{padding:13px;background:var(--paper)}.js .nojs-note{display:none}
@media(max-width:850px){.top-stamp{display:none}.capa{height:700px;min-height:0}.capa-grain{background:linear-gradient(180deg,rgba(255,246,232,.78),rgba(255,246,232,.4) 65%,rgba(255,246,232,.08))}.capa-content{width:auto;margin:0;align-self:start;justify-self:start;padding:140px 24px 0}.capa h1{font-size:clamp(59px,11vw,95px)}.capa-gift{width:min(57vw,430px);right:0;bottom:5%}.letter-grid,.day-grid{grid-template-columns:1fr;gap:45px}.letter-side{display:none}.day-image img{height:420px}.day-details{max-width:620px}}
@media(max-width:600px){.section-pad{padding:70px 22px}.capa{height:760px}.capa-image{background-position:center}.capa-content{padding:126px 22px 0;max-width:100%;z-index:3}.capa h1{font-size:clamp(59px,14vw,80px);margin-bottom:18px}.capa p{font-size:15px;max-width:230px;margin-bottom:20px}.capa .button{min-height:49px;padding:0 17px}.capa-gift{width:62vw;max-width:300px;right:-3%;bottom:4%}.capa-bottom{font-size:9px}.letter-note{padding-left:22px}.letter-paper{min-height:0;padding:45px 29px 50px}.letter-paper:after{inset:8px}.letter h2{font-size:clamp(42px,10vw,60px)}.letter-paper p{font-size:16px}.ticket-intro h2{font-size:clamp(51px,12vw,74px)}.ticket-body{padding:25px 27px 35px}.ticket-top{font-size:8px}.ticket-flower{font-size:27px}.ticket-perf{left:13px}.palpites{flex-wrap:nowrap}.palpite{min-width:0;flex:1;padding:11px 5px}.scratch-window{height:190px}.ticket-footer{padding:17px 26px;font-size:8px}.day-image{padding:10px}.day-image img{height:320px}.day h2{font-size:62px}.detail-row{grid-template-columns:75px 1fr}.detail-row strong{font-size:15px}.rsvp-heading{margin-top:38px}.rsvp h2{font-size:65px}.formulario{padding:28px}.rsvp-actions{align-items:stretch;flex-direction:column}.rsvp-actions .button{width:100%}footer{font-size:10px}}
@media(max-width:420px) and (max-height:740px){.capa{height:690px}.capa-content{padding-top:109px}.capa h1{font-size:58px}.capa p{margin-bottom:14px}.capa-gift{width:55vw;bottom:2%;right:-1%}}
@media(prefers-reduced-motion:reduce){:root{scroll-behavior:auto}*,*:before,*:after{animation-duration:.01ms!important;animation-iteration-count:1!important;transition-duration:.01ms!important}}
.demo-message{margin-top:18px;background:#e4e9dc;border-left:3px solid var(--sage);padding:15px;font-size:13px;line-height:1.5}.demo-message p{margin:8px 0 0;white-space:pre-wrap}.nojs-rsvp{font-size:13px}
.perguntas{border-top:1px solid #d9c9b6;margin-top:27px;padding-top:25px}.perguntas:empty{display:none}.perguntas .campo{display:block;border:0;margin:0 0 17px;padding:0}.perguntas .campo>span,.perguntas legend{display:block;font-size:11px;font-weight:800;letter-spacing:.12em;text-transform:uppercase;margin-bottom:8px}.perguntas input,.perguntas textarea,.perguntas select{display:block;width:100%;border:1px solid #b4a898;background:#fffdf6;padding:12px;font-size:14px;min-height:44px}.perguntas fieldset{padding:0}.perguntas .opcoes{display:flex;gap:15px}.perguntas .opcoes label{display:flex;align-items:center;gap:5px}.perguntas .opcoes input{width:auto;min-height:0}
.confete{position:fixed;inset:0;width:100vw;height:100vh;z-index:50;pointer-events:none}

/* Contagem visível ao lado dos detalhes da festa. */
.countdown-engine{margin:24px 0;padding:20px 0;border-top:1px solid #b9c2b2;border-bottom:1px solid #b9c2b2}.countdown-engine p{font-size:13px;font-weight:650;margin:0 0 15px}.relogio{display:grid;grid-template-columns:repeat(4,minmax(0,1fr));gap:10px;max-width:420px}.relogio strong{display:block;font-size:clamp(24px,4vw,38px);font-variant-numeric:tabular-nums;line-height:1.2}.relogio .leg{font-size:11px;display:block;margin-top:5px}.countdown-engine [hidden]{display:none!important}.day-actions a,.day-actions button{min-height:44px;display:inline-flex;align-items:center}

/* Idiomas com palavras mais longas: preservar espaços entre palavras. */
html:not([lang^='pt']) .capa h1{letter-spacing:-.035em;word-spacing:.06em}html[lang^='en'] .capa h1 [data-r='capaLinha3']{font-size:.74em;letter-spacing:-.025em}html[lang^='de'] .capa h1{line-height:.98}

