.wizard-progress{display:grid;grid-auto-flow:column;grid-auto-columns:minmax(0,1fr);gap:6px;margin:0 0 20px}
.wizard-progress button{display:flex;flex-direction:column;align-items:flex-start;gap:7px;border:0;border-top:3px solid var(--line);background:none;padding:12px 0 0;text-align:left;font-size:11px;line-height:1.4;color:var(--muted)}
.wizard-progress b{display:grid;place-items:center;border-radius:50%;width:25px;height:25px;background:var(--soft);font-size:12px}
.wizard-progress .is-done{border-color:var(--green)}
.wizard-progress .is-done b{background:var(--green);color:var(--white)}
.wizard-progress [aria-current=step]{border-color:var(--red);color:var(--ink);font-weight:700}
.wizard-progress [aria-current=step] b{background:var(--red);color:var(--white)}
.wizard-progress button:disabled{cursor:default;opacity:.55}
.wizard-status{font-size:12px;margin-bottom:18px;color:var(--green)}
.wizard-actions{display:flex;gap:12px;align-items:center;margin-top:22px;flex-wrap:wrap}
.wizard-actions #wizard-next,.wizard-actions .submit-button{flex:1;min-width:0;width:auto;margin:0}
.wizard-actions #wizard-back{padding-inline:18px}
.format-options{border:0;padding:0;margin:0 0 16px;display:grid;gap:13px}
.format-options>legend{font-family:var(--display);font-size:19px;font-weight:650;letter-spacing:-.035em;margin-bottom:13px;padding:0}
.format-card{position:relative;display:grid;grid-template-columns:132px 1fr;gap:15px;align-items:center;border:1px solid var(--line);border-radius:10px;padding:12px;cursor:pointer;background:var(--white);transition:border-color .15s,background .15s}
.format-card input{position:absolute;opacity:0;width:1px;height:1px}
.format-card img{width:100%;height:92px;object-fit:cover;border-radius:7px;display:block}
.format-thumbs{display:grid;grid-template-columns:1fr 1fr;gap:4px}.format-thumbs img{min-width:0}
.format-card strong{display:block;font-size:15px;font-weight:650;line-height:1.3}
.format-card small{display:block;font-size:12px;line-height:1.65;color:var(--muted);margin-top:5px}
.format-card:has(input:checked){border-color:var(--red);background:#fcf0e9;box-shadow:inset 0 0 0 1px var(--red)}
.format-card:has(input:checked) strong{color:var(--red)}
.format-card:has(input:focus-visible){outline:3px solid #b5721c;outline-offset:3px}
.format-explica{border:1px solid var(--line);border-radius:9px;background:var(--soft);margin-bottom:12px}
.format-explica>summary{cursor:pointer;list-style:none;padding:13px 15px;font-size:13px;font-weight:650;display:flex;align-items:center;justify-content:space-between;gap:10px}
.format-explica>summary::-webkit-details-marker{display:none}
.format-explica>summary::after{content:'+';font-size:18px;line-height:1;color:var(--red)}
.format-explica[open]>summary::after{content:'–'}
.format-explica p{font-size:12px;line-height:1.85;margin:0 15px 13px}
.format-explica p+p{margin-top:-4px}
.format-note{font-size:12px;line-height:1.8;color:var(--muted);margin-bottom:4px}
.wizard-picked-date{display:flex;align-items:center;gap:10px;flex-wrap:wrap;background:var(--soft);border-radius:8px;padding:12px 14px;font-size:12px;line-height:1.6;margin:0 0 16px;color:var(--ink)}
.wizard-picked-date>.icon{width:18px;height:18px;color:var(--red)}
.wizard-picked-date>span{flex:1;min-width:0}
.wizard-send-note{display:flex;flex-direction:column;align-items:center;gap:18px;text-align:center;background:#fcf0e9;border:2px solid var(--red);border-radius:12px;padding:38px 26px;color:var(--ink)}
.wizard-send-note>.icon{width:56px;height:56px;color:var(--red)}
.wizard-send-note p{margin:0;font-family:var(--display);font-size:clamp(25px,3.4vw,34px);line-height:1.22;letter-spacing:-.035em}
.wizard-send-note p+p{font-size:clamp(21px,2.8vw,27px);font-weight:700;color:var(--red)}
.wizard-picked-date strong{font-weight:650;text-transform:capitalize}
.wizard-picked-date button{background:none;border:0;padding:6px 0;min-height:32px;color:var(--red);font-size:12px;font-weight:650;text-decoration:underline;text-underline-offset:3px}
.wizard-review{background:var(--soft);padding:20px;border-radius:8px;margin-top:20px}
.wizard-review h4{font-family:var(--display);font-size:21px;margin:0 0 14px;letter-spacing:-.035em}
.wizard-review dl{margin:0}.wizard-review dl>div{display:flex;flex-direction:column;gap:3px;padding:9px 0;border-bottom:1px solid var(--line);font-size:13px}
.wizard-review dt{color:var(--muted)}.wizard-review dd{margin:0;color:var(--ink);font-weight:600;overflow-wrap:anywhere;white-space:pre-line}
.wizard-review>p{font-size:11px;line-height:1.7;margin-top:14px}

@media(max-width:650px){.format-card{grid-template-columns:104px 1fr;gap:12px;padding:10px}.format-card img{height:76px}.format-card strong{font-size:14px}.format-card small{font-size:11px;margin-top:4px}.format-options>legend{font-size:17px}.wizard-progress{gap:6px;margin-bottom:14px}.wizard-progress button{align-items:center;gap:0;padding-top:9px}.wizard-progress button>span{display:none}.wizard-progress b{width:28px;height:28px;font-size:12px}.wizard-status{font-size:13px;font-weight:600;margin-bottom:16px}.wizard-actions .button{padding:14px 12px;font-size:12px}.wizard-actions .submit-button .icon:last-child{display:none}.wizard-review{padding:16px}.wizard-send-note{padding:28px 18px;gap:15px}.wizard-send-note>.icon{width:46px;height:46px}}

.event-price-guide{margin:44px auto 0;max-width:640px;padding-top:32px;border-top:1px solid var(--line);text-align:center}
.event-price-guide h3{font-size:26px;line-height:1.2}.event-price-range{font-family:var(--display);font-size:32px;font-weight:700;letter-spacing:-.04em;color:var(--green);line-height:1.3;margin-top:18px}.event-price-range span{display:block;font-family:var(--body);font-size:13px;font-weight:400;letter-spacing:0;margin-top:5px}
.event-price-guide>p:not(.event-price-range){font-size:13px;line-height:1.85;margin-top:14px}.event-price-range+p{margin-top:15px}.event-price-guide .text-link{margin-top:16px}
@media(max-width:650px){.event-price-guide{margin-top:30px;padding-top:24px}.event-price-guide h3{font-size:23px}.event-price-range{font-size:29px}.wizard-progress button{font-size:9px}}

/* Páginas de pedido (/evento e /congeladas): só o formulário, ocupando a tela toda */
.pagina-pedido{min-height:100vh;min-height:100dvh;display:flex;flex-direction:column}
.pagina-pedido main{flex:1;display:flex;flex-direction:column}
.pagina-pedido .request-section{flex:1;padding-block:48px 64px}
.pagina-pedido .section-heading{margin-bottom:28px}
.pagina-pedido .section-heading h1{font-size:clamp(34px,3.8vw,49px);font-weight:700;line-height:1.08;letter-spacing:-.045em}
.pagina-pedido .footer-bottom{border-top:0;justify-content:center;padding-right:0}
@media(max-width:650px){.pagina-pedido .request-section{padding-block:30px 40px}.pagina-pedido .section-heading{margin-bottom:22px}.pagina-pedido .section-heading h1{font-size:33px}}

/* Etapa do tipo de pizza: lupa no canto da foto abre a foto ampliada (zoom.js); a foto em si escolhe o tipo. */
.format-foto{position:relative;display:block;min-width:0}
.format-zoom{position:absolute;right:6px;bottom:6px;width:30px;height:30px;display:grid;place-items:center;padding:0;border:0;border-radius:50%;background:rgba(53,39,31,.78);color:#fff;cursor:zoom-in;transition:background .15s}
.format-zoom .icon{width:16px;height:16px}
.format-zoom:hover,.format-zoom:focus-visible{background:var(--red)}
.format-zoom:focus-visible{outline:3px solid #b5721c;outline-offset:2px}
/* Aviso de erro repetido no topo da etapa (request-wizard.js): maior que o de baixo, para não passar despercebido. */
.form-error-topo{font-size:14px;font-weight:600;line-height:1.5;padding:12px 14px;margin:-6px 0 18px}
/* Congeladas sem cidade: o aviso da revisão é chamativo (borda vermelha, título grande) e o campo das observações fica marcado até ser preenchido. */
.wizard-city-hint{display:flex;align-items:flex-start;gap:14px;background:#fcf0e9;border:2px solid var(--red);border-radius:12px;padding:18px 18px 16px;margin:0 0 18px;color:var(--ink);font-size:15px;line-height:1.5;box-shadow:0 6px 18px rgba(191,53,38,.14)}
.wizard-city-hint[hidden]{display:none}
.wizard-city-hint>.icon{width:30px;height:30px;color:var(--red);flex:none;margin-top:1px}
.wizard-city-hint>div{flex:1;min-width:0}
.wizard-city-hint strong{display:block;font-family:var(--display);font-size:clamp(19px,2.6vw,23px);line-height:1.2;letter-spacing:-.02em;color:var(--red);margin-bottom:6px}
.wizard-city-hint p{margin:0 0 12px}
.wizard-city-hint .button{margin:0;padding:11px 16px;font-size:13px;min-height:44px;text-decoration:none}
.wizard-city-hint .button .icon{width:16px;height:16px}
#notes.is-pendente{border:2px solid var(--red);background:#fffaf7;box-shadow:0 0 0 4px #bf352618}
/* Etapa do valor progressivo das congeladas: a tabela do card, centralizada e sem esticar no formulário. */
[data-wizard-panel="valores"] .progressive-price{max-width:460px;margin:4px auto 8px}
