/* Página de cada modelo (produto/<código>/), gerada por scripts/gerar_produtos.mjs; compra ligada por js/produto.js */
.pd, .pg:has(.pd) .pg-top__in { max-width: var(--size-ck-max); }
.pg-top__nav { display: flex; align-items: center; gap: var(--space-2); }
.pg-top__pedido { display: inline-flex; align-items: center; gap: var(--space-1-5); height: var(--size-touch); padding: 0 var(--space-3-5); border-radius: var(--radius-md); background: var(--color-brand); color: var(--color-ink); font-size: var(--fs-14); font-weight: var(--fw-extrabold); text-decoration: none; }
.pg-top__pedido[hidden] { display: none; }
.pg-top__badge { min-width: 22px; height: 22px; padding: 0 var(--space-1-5); border-radius: var(--radius-pill); background: var(--color-ink); color: var(--color-on-dark); font-size: var(--fs-12); display: grid; place-items: center; font-variant-numeric: tabular-nums; }
.pd-trilha { font-size: var(--fs-13); font-weight: var(--fw-semibold); color: var(--color-ink-3); }
.pd-trilha a { color: var(--color-ink-2); }

.pd-card { display: grid; gap: var(--space-5); padding: var(--space-4); border-radius: var(--radius-xl); background: var(--color-surface); box-shadow: var(--shadow-1); }
.pd-img { display: block; width: 100%; height: auto; border-radius: var(--radius-lg); background: var(--color-bg); }

/* galeria: arte com o chip por cima e, nos kits, frente/verso */
.pd-galeria { display: flex; flex-direction: column; gap: var(--space-3); }
.pd-frame { position: relative; line-height: 0; border-radius: var(--radius-lg); overflow: hidden; box-shadow: var(--shadow-2); }
.pd-frame--v { max-width: 62%; margin: 0 auto; }
.pd-faces { background: var(--color-ink); }

/* informações e compra */
.pd-info { display: flex; flex-direction: column; gap: var(--space-4); }
.pd-cab { display: flex; flex-direction: column; gap: var(--space-1); }
.pd-cab .selo-kit { align-self: flex-start; margin-left: 0; }
.pd-cat { font-size: var(--fs-11); font-weight: var(--fw-bold); letter-spacing: var(--ls-label); text-transform: uppercase; color: var(--color-ink-3); }
.pd-tit { margin: 0; font-size: var(--fs-26); font-weight: var(--fw-extrabold); letter-spacing: var(--ls-display); line-height: var(--lh-tight); }
.pd-sku { margin: 0; font-size: var(--fs-14); font-weight: var(--fw-medium); color: var(--color-ink-3); }
.pd-preco { display: flex; flex-direction: column; gap: var(--space-0-5); }
.pd-preco p { margin: 0; }
.pd-preco__valor { display: flex; align-items: baseline; gap: var(--space-1); }
.pd-preco__valor strong { font-size: var(--fs-34); font-weight: var(--fw-black); letter-spacing: var(--ls-display); font-variant-numeric: tabular-nums; }
.pd-preco__valor span { font-size: var(--fs-15); font-weight: var(--fw-bold); color: var(--color-ink-3); }
.pd-preco__nota { font-size: var(--fs-13); font-weight: var(--fw-medium); color: var(--color-ink-3); }

.pd-compra { display: flex; flex-direction: column; gap: var(--space-4); }
.pd-op { display: flex; flex-direction: column; gap: var(--space-2); min-width: 0; margin: 0; padding: 0; border: 0; }
.pd-op__tit { padding: 0; font-size: var(--fs-13); font-weight: var(--fw-extrabold); color: var(--color-ink); }
.pd-op__ajuda { margin: 0; font-size: var(--fs-12-5); font-weight: var(--fw-medium); color: var(--color-ink-3); }
.pd-op__ajuda[hidden] { display: none; }
.pd-op__grade { display: grid; grid-template-columns: repeat(2, minmax(0, 1fr)); gap: var(--space-2); }
.pd-op__grade--3 { grid-template-columns: repeat(3, minmax(0, 1fr)); }
.pd-op__grade--1 { grid-template-columns: minmax(0, 1fr); }
.pd-op__cx--fixo { border-color: var(--color-ink); background: var(--color-brand-50); color: var(--color-ink); box-shadow: inset 0 0 0 1px var(--color-ink); }
.pd-op__ajuda a { color: var(--color-ink); font-weight: var(--fw-extrabold); }
.pd-frame--pvc { border-radius: 3.7% / 5.9%; }
.pd-frame--pvc .pd-img { border-radius: 0; }
.pd-rel__item--pvc img { border-radius: 3.7% / 5.9%; }
.pd-passos a { color: inherit; font-weight: var(--fw-bold); }
.pd-op__item { position: relative; display: flex; cursor: pointer; }
.pd-op__item input { position: absolute; opacity: 0; pointer-events: none; }
.pd-op__cx { flex: 1; display: flex; flex-direction: column; align-items: center; justify-content: center; gap: var(--space-1); min-height: 72px; padding: var(--space-2-5) var(--space-2); border: var(--border-2) solid var(--color-line); border-radius: var(--radius-lg); background: var(--color-surface); color: var(--color-ink-2); text-align: center; transition: border-color var(--dur-fast) var(--ease-out), background var(--dur-fast) var(--ease-out); }
.pd-op__cx strong { font-size: var(--fs-13-5); font-weight: var(--fw-extrabold); color: var(--color-ink); line-height: var(--lh-snug); }
.pd-op__cx small { font-size: var(--fs-12); font-weight: var(--fw-medium); color: var(--color-ink-3); }
.pd-op__cx em { margin-top: var(--space-1); font-style: normal; font-size: var(--fs-16); font-weight: var(--fw-black); color: var(--color-ink); font-variant-numeric: tabular-nums; }
.pd-op__cx em small { font-size: var(--fs-12); font-weight: var(--fw-bold); }
.pd-op__item:hover .pd-op__cx { border-color: var(--color-line-2); }
.pd-op__item input:checked + .pd-op__cx { border-color: var(--color-ink); background: var(--color-brand-50); color: var(--color-ink); box-shadow: inset 0 0 0 1px var(--color-ink); }
.pd-op__item--holo input:checked + .pd-op__cx { background: linear-gradient(135deg, var(--color-brand-50), var(--color-st-roxo-50), var(--color-st-azul-50)); }
.pd-op__item input:focus-visible + .pd-op__cx { outline: 3px solid var(--color-brand-600); outline-offset: 2px; }

.pd-qtd { display: inline-flex; align-self: flex-start; align-items: center; gap: var(--space-1); padding: var(--space-1); border-radius: var(--radius-lg); background: var(--color-bg); box-shadow: var(--shadow-inset-media); }
.pd-qtd__btn { width: var(--size-touch); height: var(--size-touch); border: 0; border-radius: var(--radius-md); background: var(--color-surface); color: var(--color-ink); box-shadow: var(--shadow-1); display: grid; place-items: center; cursor: pointer; }
.pd-qtd__btn:disabled { background: transparent; color: var(--color-disabled-fg); box-shadow: none; cursor: default; }
.pd-qtd__input { width: 64px; height: var(--size-touch); border: 0; background: transparent; text-align: center; font: inherit; font-size: var(--fs-20); font-weight: var(--fw-black); color: var(--color-ink); font-variant-numeric: tabular-nums; }
.pd-qtd__input:focus-visible { outline: 2px solid var(--color-brand-600); border-radius: var(--radius-md); }

.pd-total { display: flex; align-items: center; justify-content: space-between; gap: var(--space-3); padding: var(--space-3) var(--space-3-5); border-radius: var(--radius-lg); background: var(--color-bg); }
.pd-total span { display: flex; flex-direction: column; font-size: var(--fs-14); font-weight: var(--fw-bold); }
.pd-total small { font-size: var(--fs-12-5); font-weight: var(--fw-medium); color: var(--color-ink-3); font-variant-numeric: tabular-nums; }
.pd-total strong { font-size: var(--fs-22); font-weight: var(--fw-black); font-variant-numeric: tabular-nums; }
.pd-comprar { justify-content: center; text-decoration: none; }
.pd-ok { display: flex; flex-direction: column; gap: var(--space-2); padding: var(--space-3-5); border-radius: var(--radius-lg); background: var(--color-ok-50); }
.pd-ok[hidden] { display: none; }
.pd-ok__tit { margin: 0; display: flex; align-items: center; gap: var(--space-2); font-size: var(--fs-14); font-weight: var(--fw-extrabold); color: var(--color-ok); }
.pd-ok__ver { background: var(--color-ink); color: var(--color-on-dark); text-decoration: none; }
.pd-ok__mais { align-self: center; padding: var(--space-1); font-size: var(--fs-14); font-weight: var(--fw-bold); color: var(--color-ink-2); }
.pd-minimo { margin: 0; font-size: var(--fs-12-5); font-weight: var(--fw-medium); color: var(--color-ink-3); text-align: center; }

.pd-precos { display: flex; flex-direction: column; gap: var(--space-2); padding: var(--space-3) var(--space-3-5); border-radius: var(--radius-lg); background: var(--color-bg); }
.pd-precos p { margin: 0; display: flex; flex-wrap: wrap; align-items: baseline; justify-content: space-between; gap: var(--space-1) var(--space-3); font-size: var(--fs-14); font-weight: var(--fw-semibold); color: var(--color-ink-2); }
.pd-precos strong { font-size: var(--fs-18); font-weight: var(--fw-extrabold); color: var(--color-ink); font-variant-numeric: tabular-nums; }
.pd-precos small { font-size: var(--fs-13); font-weight: var(--fw-semibold); color: var(--color-ink-3); }

.pd-wa { align-self: center; display: inline-flex; align-items: center; gap: var(--space-1-5); font-size: var(--fs-14); font-weight: var(--fw-bold); color: var(--color-ink-2); }
.pd-selos { margin: 0; padding: var(--space-3) 0 0; list-style: none; display: grid; gap: var(--space-2-5); border-top: var(--border-1) solid var(--color-line); }
.pd-selos li { display: flex; align-items: center; gap: var(--space-3); font-size: var(--fs-12-5); font-weight: var(--fw-medium); color: var(--color-ink-3); }
.pd-selos li > svg, .pd-selos__emoji { flex: none; width: 36px; height: 36px; padding: 8px; border-radius: var(--radius-md); background: var(--color-brand-100); color: var(--color-ink); font-size: var(--fs-16); line-height: 20px; text-align: center; }
.pd-selos li span:last-child { display: flex; flex-direction: column; }
.pd-selos strong { font-size: var(--fs-13-5); font-weight: var(--fw-extrabold); color: var(--color-ink); }

/* seções abaixo: pagamento e entrega, tabela, ficha técnica, como funciona */
.pd-sec { gap: var(--space-3-5); }
.pd-sec h2, .pd-rel h2 { margin: 0; font-size: var(--fs-18); font-weight: var(--fw-extrabold); }
.pd-sec > p { margin: 0; font-size: var(--fs-14); line-height: var(--lh-relaxed); color: var(--color-ink-2); }
.pd-sec__nota { font-size: var(--fs-13) !important; color: var(--color-ink-3) !important; }
.pd-marca { margin-top: var(--space-3); }
.pd-sec__nota a, .pd-bloco a { color: var(--color-ink); font-weight: var(--fw-bold); }
.pd-blocos { display: grid; gap: var(--space-3); }
.pd-bloco { display: grid; grid-template-columns: auto minmax(0, 1fr); column-gap: var(--space-3); row-gap: var(--space-0-5); padding: var(--space-3-5); border-radius: var(--radius-lg); background: var(--color-bg); }
.pd-bloco__ic { grid-row: span 2; width: 44px; height: 44px; border-radius: var(--radius-md); background: var(--color-surface); color: var(--color-ink); box-shadow: var(--shadow-1); display: grid; place-items: center; }
.pd-bloco h3 { margin: 0; font-size: var(--fs-15); font-weight: var(--fw-extrabold); }
.pd-bloco p { margin: 0; font-size: var(--fs-13-5); line-height: var(--lh-relaxed); color: var(--color-ink-2); }
.pd-aviso { margin: 0; display: flex; gap: var(--space-2); align-items: flex-start; padding: var(--space-3) var(--space-3-5); border-radius: var(--radius-lg); background: var(--color-brand-50); font-size: var(--fs-13-5); line-height: var(--lh-relaxed); color: var(--color-ink-2); }
.pd-aviso svg { flex: none; margin-top: 3px; color: var(--color-ink); }
.pd-tabela tbody tr:first-child td { font-weight: var(--fw-extrabold); }
.pd-desc p { margin: 0; font-size: var(--fs-14-5); line-height: var(--lh-relaxed); color: var(--color-ink-2); }
.pd-ficha { margin: 0; display: grid; border-top: var(--border-1) solid var(--color-line); }
.pd-ficha div { display: grid; grid-template-columns: 110px minmax(0, 1fr); gap: var(--space-3); padding: var(--space-2-5) 0; border-bottom: var(--border-1) solid var(--color-line); font-size: var(--fs-14); }
.pd-ficha dt { font-weight: var(--fw-bold); color: var(--color-ink-3); }
.pd-ficha dd { margin: 0; font-weight: var(--fw-semibold); color: var(--color-ink); }
.pd-passos { margin: 0; padding: 0; list-style: none; counter-reset: passo; display: grid; gap: var(--space-3); }
.pd-passos li { counter-increment: passo; display: grid; grid-template-columns: 36px minmax(0, 1fr); column-gap: var(--space-3); font-size: var(--fs-13-5); color: var(--color-ink-2); line-height: var(--lh-relaxed); }
.pd-passos li::before { content: counter(passo); grid-row: span 2; width: 36px; height: 36px; border-radius: var(--radius-pill); background: var(--color-brand); color: var(--color-ink); font-size: var(--fs-15); font-weight: var(--fw-black); display: grid; place-items: center; }
.pd-passos strong { font-size: var(--fs-15); font-weight: var(--fw-extrabold); color: var(--color-ink); }

.pd-rel { display: flex; flex-direction: column; gap: var(--space-3); margin-top: var(--space-2); }
.pd-rel__grade { display: grid; grid-template-columns: repeat(2, minmax(0, 1fr)); gap: var(--space-2-5); }
.pd-rel__item { display: flex; flex-direction: column; gap: var(--space-1); padding: var(--space-2); border-radius: var(--radius-card); background: var(--color-surface); box-shadow: var(--shadow-1); color: var(--color-ink); text-decoration: none; }
.pd-rel__item img { width: 100%; height: auto; border-radius: var(--radius-media); }
.pd-rel__item strong { font-size: var(--fs-14); font-weight: var(--fw-extrabold); line-height: var(--lh-base); }
.pd-rel__item span { font-size: var(--fs-12-5); font-weight: var(--fw-medium); color: var(--color-ink-3); }
.pd-rel__item:hover { box-shadow: var(--shadow-2); }
.pg-rodape a { color: inherit; }

/* película personalizada (produto/personalizada) */
.pp-hero { position: relative; display: grid; gap: var(--space-5); padding: var(--space-6) var(--space-4-5) var(--space-5); border-radius: var(--radius-xl); background: var(--color-brand); overflow: hidden; isolation: isolate; }
.pp-hero::before { content: ""; position: absolute; inset: 0; z-index: -1; pointer-events: none; background: radial-gradient(circle at 85% 20%, var(--color-glass-3), transparent 55%), var(--pattern-cartoes) 0 0 / var(--size-pattern-cartoes) repeat; }
.pp-hero__txt { position: relative; z-index: 3; display: flex; flex-direction: column; align-items: flex-start; gap: var(--space-3-5); }
.pp-tag { display: inline-flex; align-items: center; gap: var(--space-1-5); height: 30px; padding: 0 var(--space-3); border-radius: var(--radius-pill); background: var(--color-ink); color: var(--color-brand); font-size: var(--fs-12); font-weight: var(--fw-extrabold); letter-spacing: var(--ls-label); text-transform: uppercase; }
.pp-tag--escuro { background: var(--color-brand); color: var(--color-ink); }
.pp-tit { margin: 0; font-size: var(--fs-hero-mobile); font-weight: var(--fw-black); letter-spacing: var(--ls-display); line-height: var(--lh-tight); color: var(--color-ink); text-wrap: balance; }
.pp-tit span { display: inline-block; padding: 0 var(--space-2); border-radius: var(--radius-md); background: var(--color-ink); color: var(--color-brand); transform: rotate(-2deg); }
.pp-sub { margin: 0; max-width: 34em; font-size: var(--fs-16); font-weight: var(--fw-medium); line-height: var(--lh-relaxed); color: var(--color-ink); }
.pp-precos { display: flex; gap: var(--space-2); }
.pp-precos p { margin: 0; display: flex; flex-direction: column; padding: var(--space-2) var(--space-3-5); border-radius: var(--radius-lg); background: var(--color-white-a85); box-shadow: var(--shadow-1); }
.pp-precos small { font-size: var(--fs-12); font-weight: var(--fw-bold); color: var(--color-ink-2); }
.pp-precos strong { font-size: var(--fs-20); font-weight: var(--fw-black); font-variant-numeric: tabular-nums; }
.pp-acoes { display: flex; flex-wrap: wrap; align-items: center; gap: var(--space-2) var(--space-4); }
.pp-cta { background: var(--color-ink); color: var(--color-on-dark); text-decoration: none; box-shadow: var(--shadow-2); }
.pp-link { display: inline-flex; align-items: center; gap: var(--space-1); padding: var(--space-1) 0; font-size: var(--fs-14); font-weight: var(--fw-extrabold); color: var(--color-ink); }
.pp-hero__selos { margin: 0; padding: 0; list-style: none; display: flex; flex-wrap: wrap; gap: var(--space-1-5) var(--space-3-5); font-size: var(--fs-13); font-weight: var(--fw-bold); color: var(--color-ink); }
.pp-hero__selos li { display: inline-flex; align-items: center; gap: var(--space-1); }
.pp-hero__selos svg { padding: 3px; width: 19px; height: 19px; border-radius: var(--radius-pill); background: var(--color-ink); color: var(--color-brand); }

.pp-hero__vis { position: relative; height: 230px; }
.pp-cartao { position: absolute; left: 50%; top: 50%; width: min(78%, 300px); line-height: 0; border-radius: 14px; overflow: hidden; box-shadow: var(--shadow-3); background: var(--color-surface); }
.pp-cartao > img { width: 100%; height: auto; aspect-ratio: 3 / 2; object-fit: cover; }
.pp-cartao--pvc { border-radius: 3.7% / 5.9%; }
.pp-cartao--pvc > img { aspect-ratio: 856 / 540; }
.pp-cartao--1 { transform: translate(-78%, -62%) rotate(-12deg); }
.pp-cartao--2 { transform: translate(-22%, -58%) rotate(9deg); }
.pp-cartao--3 { transform: translate(-50%, -40%) rotate(-2deg); z-index: 1; outline: 3px solid var(--color-surface); }
.pp-cartao__nome { position: absolute; left: 8%; bottom: 11%; color: var(--color-on-dark); font: var(--fw-bold) clamp(11px, 3.4vw, 15px)/1 "Courier New", ui-monospace, monospace; letter-spacing: .14em; text-shadow: 0 1px 0 rgba(0, 0, 0, .55), 0 0 6px rgba(0, 0, 0, .45); }
.pp-mascote { position: absolute; right: 0; bottom: -6px; z-index: 2; width: 86px; height: auto; filter: drop-shadow(0 6px 10px rgba(0, 0, 0, .2)); }

.pp-ideias { margin: 0; padding: 0; list-style: none; display: grid; grid-template-columns: repeat(2, minmax(0, 1fr)); gap: var(--space-2); }
.pp-ideias li { display: flex; align-items: center; gap: var(--space-2-5); padding: var(--space-3); border-radius: var(--radius-lg); background: var(--color-bg); font-size: var(--fs-14); font-weight: var(--fw-bold); }
.pp-ideias li span { font-size: var(--fs-24); line-height: 1; }

.pp-passos { margin: 0; padding: 0; list-style: none; display: grid; gap: var(--space-3); }
.pp-passos li { display: grid; grid-template-columns: 56px minmax(0, 1fr); column-gap: var(--space-3); align-items: center; padding: var(--space-3); border-radius: var(--radius-lg); background: var(--color-bg); font-size: var(--fs-13-5); line-height: var(--lh-relaxed); color: var(--color-ink-2); }
.pp-passos li > span:last-child { grid-column: 2; }
.pp-passos strong { grid-column: 2; font-size: var(--fs-15); font-weight: var(--fw-extrabold); color: var(--color-ink); }
.pp-passos__ic { position: relative; grid-row: span 2; width: 56px; height: 56px; border-radius: var(--radius-lg); background: var(--color-brand); color: var(--color-ink); display: grid; place-items: center; }
.pp-passos__ic em { position: absolute; top: -6px; right: -6px; width: 22px; height: 22px; border-radius: var(--radius-pill); background: var(--color-ink); color: var(--color-on-dark); font-style: normal; font-size: var(--fs-12); font-weight: var(--fw-black); display: grid; place-items: center; }
.pp-passos__cta { align-self: center; text-decoration: none; }

.pp-imagens { display: grid; gap: var(--space-5); padding: var(--space-6) var(--space-4-5); border-radius: var(--radius-xl); background: var(--color-ink); color: var(--color-on-dark); scroll-margin-top: var(--space-4); }
.pp-imagens__cab { display: flex; flex-direction: column; align-items: flex-start; gap: var(--space-3); }
.pp-imagens h2 { margin: 0; font-size: var(--fs-24); font-weight: var(--fw-black); letter-spacing: var(--ls-display); line-height: var(--lh-tight); }
.pp-imagens__cab p { margin: 0; font-size: var(--fs-15); line-height: var(--lh-relaxed); color: var(--color-on-dark-2); }
.pp-imagens__cab strong { color: var(--color-brand); }
.pp-imagens__btn { text-decoration: none; }
.pp-imagens__passos { margin: 0; padding: 0; list-style: none; counter-reset: img; display: grid; gap: var(--space-2-5); }
.pp-imagens__passos li { counter-increment: img; display: grid; grid-template-columns: 34px minmax(0, 1fr); column-gap: var(--space-3); padding: var(--space-3); border-radius: var(--radius-lg); background: var(--color-glass-1); font-size: var(--fs-13-5); line-height: var(--lh-relaxed); color: var(--color-on-dark-2); }
.pp-imagens__passos li::before { content: counter(img); grid-row: span 2; width: 34px; height: 34px; border-radius: var(--radius-pill); background: var(--color-brand); color: var(--color-ink); font-size: var(--fs-15); font-weight: var(--fw-black); display: grid; place-items: center; }
.pp-imagens__passos strong { font-size: var(--fs-15); font-weight: var(--fw-extrabold); color: var(--color-on-dark); }
.pp-imagens__passos span strong { font-size: inherit; }
.pp-imagens__passos em { font-style: normal; font-weight: var(--fw-bold); color: var(--color-brand); }
.pp-imagens__nota { margin: 0; display: flex; gap: var(--space-2); align-items: flex-start; font-size: var(--fs-12-5); line-height: var(--lh-relaxed); color: var(--color-on-dark-3); }
.pp-imagens__nota svg { flex: none; margin-top: 2px; }
.pp-imagens__nota a { color: var(--color-on-dark-2); }

.pp-dicas { margin: 0; padding: 0; list-style: none; display: grid; gap: var(--space-2-5); }
.pp-dicas li { display: flex; gap: var(--space-3); align-items: flex-start; font-size: var(--fs-13-5); line-height: var(--lh-relaxed); color: var(--color-ink-2); }
.pp-dicas li > svg { flex: none; color: var(--color-ok); margin-top: 2px; }
.pp-dicas li span { display: flex; flex-direction: column; }
.pp-dicas strong { font-size: var(--fs-15); font-weight: var(--fw-extrabold); color: var(--color-ink); }

.pp-faq { display: grid; border-top: var(--border-1) solid var(--color-line); }
.pp-faq details { border-bottom: var(--border-1) solid var(--color-line); }
.pp-faq summary { display: flex; align-items: center; justify-content: space-between; gap: var(--space-3); min-height: var(--size-touch); padding: var(--space-3) 0; font-size: var(--fs-15); font-weight: var(--fw-extrabold); cursor: pointer; list-style: none; }
.pp-faq summary::-webkit-details-marker { display: none; }
.pp-faq summary svg { flex: none; color: var(--color-ink-3); transition: transform var(--dur-fast) var(--ease-out); }
.pp-faq details[open] summary svg { transform: rotate(180deg); }
.pp-faq p { margin: 0 0 var(--space-3-5); font-size: var(--fs-14); line-height: var(--lh-relaxed); color: var(--color-ink-2); }

.pp-final { display: grid; justify-items: center; gap: var(--space-3); padding: var(--space-6) var(--space-4-5); border-radius: var(--radius-xl); background: var(--color-brand); text-align: center; }
.pp-final img { width: 84px; height: auto; }
.pp-final h2 { margin: 0; font-size: var(--fs-24); font-weight: var(--fw-black); letter-spacing: var(--ls-display); }
.pp-final p { margin: var(--space-1) 0 0; font-size: var(--fs-14-5); font-weight: var(--fw-medium); color: var(--color-ink-2); }

@media (max-width: 380px) {
  .pg-top__pedido span:not(.pg-top__badge) { display: none; }
}
@media (min-width: 720px) {
  .pd-topo { grid-template-columns: minmax(0, 1.1fr) minmax(0, 1fr); align-items: start; gap: var(--space-8); padding: var(--space-6); }
  .pd-galeria { position: sticky; top: var(--space-4); }
  .pd-blocos { grid-template-columns: repeat(2, minmax(0, 1fr)); }
  .pd-passos { grid-template-columns: repeat(4, minmax(0, 1fr)); }
  .pd-passos li { grid-template-columns: 1fr; row-gap: var(--space-2); }
  .pd-passos li::before { grid-row: auto; }
  .pd-rel__grade { grid-template-columns: repeat(4, minmax(0, 1fr)); }
  .pd-sec { padding: var(--space-6); }
  .pp-hero { grid-template-columns: minmax(0, 1.05fr) minmax(0, 1fr); align-items: center; padding: var(--space-10) var(--space-8); }
  .pp-tit { font-size: var(--fs-hero-desktop); }
  .pp-hero__vis { height: 340px; }
  .pp-cartao { width: min(66%, 300px); }
  .pp-cartao--1 { transform: translate(-70%, -64%) rotate(-12deg); }
  .pp-cartao--2 { transform: translate(-30%, -56%) rotate(9deg); }
  .pp-mascote { width: 120px; }
  .pp-ideias { grid-template-columns: repeat(6, minmax(0, 1fr)); }
  .pp-ideias li { flex-direction: column; text-align: center; padding: var(--space-4) var(--space-2); }
  .pp-passos { grid-template-columns: repeat(4, minmax(0, 1fr)); }
  .pp-passos li { grid-template-columns: 1fr; align-content: start; row-gap: var(--space-1); padding: var(--space-4); }
  .pp-passos li > span:last-child, .pp-passos strong { grid-column: auto; }
  .pp-passos__ic { grid-row: auto; margin-bottom: var(--space-2); }
  .pp-imagens { grid-template-columns: minmax(0, 0.9fr) minmax(0, 1.1fr); align-items: start; gap: var(--space-8); padding: var(--space-8); }
  .pp-imagens__nota { grid-column: 1 / -1; }
  .pp-imagens h2 { font-size: var(--fs-34); }
  .pp-dicas { grid-template-columns: repeat(2, minmax(0, 1fr)); gap: var(--space-4) var(--space-6); }
  .pp-final { grid-template-columns: auto minmax(0, 1fr) auto; justify-items: start; text-align: left; padding: var(--space-6) var(--space-8); }
}
