:root{--fundo:#FBF7F4;--carta:#FFF;--tinta:#3B2B26;--tinta-2:#8A736B;--ouro:#B8933F;--ouro-cl:#E3D2A8;--rosa:#C98F8A;--linha:#EADFD8;--verde:#5E7A52;--cafe:#3B2B26;--cafe-2:#2A1E1A;--creme:#E3D2A8;--mancha:#F3EAD6;--ouro-esc:#6B5326;--erro:#A8443C;--sombra:0 2px 10px rgb(59 43 38 / .10);--sombra-alta:0 10px 26px rgb(59 43 38 / .20);color-scheme:light}
@media (prefers-color-scheme: dark){:root:not([data-theme="light"]){--fundo:#1A1412;--carta:#241C19;--tinta:#F0E7E2;--tinta-2:#A8938B;--ouro:#D4AF61;--ouro-cl:#4A3D23;--rosa:#D8A6A1;--linha:#392C27;--verde:#8FB07F;--cafe:#2A1E1A;--cafe-2:#140F0D;--creme:#E3D2A8;--mancha:#33281C;--ouro-esc:#5C4823;--erro:#E39A93;--sombra:0 2px 10px rgb(0 0 0 / .35);--sombra-alta:0 10px 26px rgb(0 0 0 / .55);color-scheme:dark}}
:root[data-theme="dark"]{--fundo:#1A1412;--carta:#241C19;--tinta:#F0E7E2;--tinta-2:#A8938B;--ouro:#D4AF61;--ouro-cl:#4A3D23;--rosa:#D8A6A1;--linha:#392C27;--verde:#8FB07F;--cafe:#2A1E1A;--cafe-2:#140F0D;--creme:#E3D2A8;--mancha:#33281C;--ouro-esc:#5C4823;--erro:#E39A93;--sombra:0 2px 10px rgb(0 0 0 / .35);--sombra-alta:0 10px 26px rgb(0 0 0 / .55);color-scheme:dark}
*{box-sizing:border-box}
[hidden]{display:none!important}
body{margin:0;background:var(--fundo);color:var(--tinta);font:15px/1.45 Ubuntu, system-ui, -apple-system, "Segoe UI", sans-serif}
svg{width:22px;height:22px;flex:none}
select,input{font:inherit;padding:10px;border:1px solid var(--linha);border-radius:8px;background:var(--carta);color:var(--tinta);width:100%}

/* topo */
.topo{position:sticky;top:0;z-index:5;padding:10px 16px 12px;background:var(--cafe);color:var(--creme);box-shadow:var(--sombra)}
.topo-linha{display:flex;align-items:center;justify-content:space-between;gap:12px;max-width:1180px;margin:0 auto}
.logo{height:44px}
.sacola-botao{position:relative;display:flex;align-items:center;gap:6px;background:var(--ouro);color:var(--cafe-2);border:0;border-radius:999px;padding:8px 14px;font:inherit;font-weight:700;cursor:pointer}
.busca{display:flex;align-items:center;gap:8px;max-width:1180px;margin:10px auto 0;padding:0 12px;border-radius:999px;background:var(--carta);color:var(--tinta-2)}
.busca input{border:0;background:none;padding:10px 0;outline:none}
.ensaio{margin:0;padding:8px 16px;background:var(--mancha);color:var(--tinta);text-align:center}

/* carrossel */
.carrossel{position:relative;max-width:1180px;margin:16px auto 0;padding:0 16px}
.slides{display:flex;overflow-x:auto;scroll-snap-type:x mandatory;scroll-behavior:smooth;border-radius:18px;box-shadow:var(--sombra);scrollbar-width:none}
.slides::-webkit-scrollbar{display:none}
.slide{flex:0 0 100%;scroll-snap-align:start;display:grid;grid-template-columns:minmax(0,1fr) minmax(0,1.3fr);align-items:center;gap:16px;min-height:220px;padding:20px 56px;background:linear-gradient(120deg,var(--cafe) 0%,var(--cafe-2) 100%);color:var(--creme);border:0;font:inherit;text-align:left;cursor:pointer}
.slide .texto{display:block}
.slide .titulo{display:block;font-size:clamp(20px,4vw,34px);font-weight:400;letter-spacing:.04em;line-height:1.2;color:var(--ouro-cl)}
.slide .conta{display:block;margin-top:6px;color:var(--creme);opacity:.85}
.slide .chamada{display:inline-block;margin-top:12px;padding:6px 14px;border-radius:999px;background:var(--ouro);color:var(--cafe-2);font-weight:700;font-size:13px}
.slide .fotos{display:grid;grid-template-columns:repeat(3,1fr);gap:8px}
.slide .fotos img{display:block;width:100%;aspect-ratio:1;object-fit:cover;border-radius:10px;border:3px solid var(--creme);background:var(--mancha)}
.seta{position:absolute;top:50%;transform:translateY(-60%);width:36px;height:56px;border:0;background:none;color:var(--ouro);font-size:44px;line-height:1;cursor:pointer}
.ant{left:20px}.prox{right:20px}
.pontos{display:flex;justify-content:center;gap:6px;margin-top:8px}
.pontos button{width:8px;height:8px;padding:0;border-radius:50%;border:0;background:var(--linha);cursor:pointer}
.pontos button[aria-current="true"]{background:var(--ouro);width:20px;border-radius:4px}

/* filtros */
.filtros{display:grid;grid-template-columns:1fr 1fr;gap:10px;max-width:1180px;margin:0 auto;padding:16px;scroll-margin-top:118px}
.pilula{display:flex;flex-direction:column;justify-content:center;padding:6px 14px;border-radius:14px;background:var(--cafe);color:var(--creme);box-shadow:var(--sombra)}
.pilula span{font-size:12px;font-weight:700;color:var(--ouro-cl);letter-spacing:.03em}
.pilula select{padding:2px 0;border:0;background:none;color:var(--creme);font-weight:700;cursor:pointer}
.pilula select option{color:var(--tinta);background:var(--carta)}
.ordem-linha{grid-column:1/-1;display:flex;gap:10px;align-items:center}
.ordem{flex:1;display:flex;align-items:center;gap:8px;padding:4px 14px;border-radius:999px;background:var(--carta);box-shadow:var(--sombra)}
.ordem span{font-weight:700;white-space:nowrap}
.ordem select{border:0;background:none;padding:6px 0}
.modos{display:flex;gap:4px;padding:4px;border-radius:12px;background:var(--carta);box-shadow:var(--sombra)}
.modos button{display:grid;place-items:center;width:36px;height:36px;border:0;border-radius:9px;background:none;color:var(--tinta-2);cursor:pointer}
.modos button[aria-pressed="true"]{background:var(--cafe);color:var(--creme)}

/* vitrine */
.vitrine{display:grid;grid-template-columns:repeat(auto-fill,minmax(170px,1fr));gap:14px;max-width:1180px;margin:0 auto;padding:4px 16px 96px}
.peca{position:relative;display:flex;flex-direction:column;background:var(--carta);border-radius:16px;overflow:hidden;box-shadow:var(--sombra);transition:transform .25s ease,box-shadow .25s ease}
.moldura{overflow:hidden;aspect-ratio:1;background:var(--mancha)}
.moldura img{display:block;width:100%;height:100%;object-fit:cover;transition:transform .45s ease}
@media (hover:hover){
  .peca:hover{transform:translateY(-4px);box-shadow:var(--sombra-alta)}
  .peca:hover .moldura img{transform:scale(1.12)}
}
.corpo{display:flex;flex-direction:column;flex:1;padding:10px 12px 12px}
.peca h3{margin:0;font-size:14px;font-weight:500;line-height:1.3}
.cod{margin:2px 0 0;color:var(--tinta-2);font-size:12px}
.estoque{display:flex;align-items:center;gap:4px;margin:8px 0 0;color:var(--verde);font-size:12px;font-weight:700}
.estoque svg{width:14px;height:14px}
.rodape-peca{display:flex;align-items:flex-end;justify-content:space-between;gap:8px;margin-top:auto;padding-top:10px}
.preco{margin:0;font-size:19px;font-weight:700;color:var(--ouro-esc)}
.preco small{font-size:12px;margin-right:2px}
.na-sacola{display:block;font-size:11px;font-weight:400;color:var(--tinta-2)}
.por{display:grid;place-items:center;width:40px;height:40px;flex:none;border:0;border-radius:10px;background:var(--cafe);color:var(--creme);cursor:pointer;transition:transform .15s ease}
.por:active{transform:scale(.92)}
.por:disabled,.pagar:disabled{opacity:.45;cursor:default}
.vitrine.lista{grid-template-columns:1fr}
.vitrine.lista .peca{flex-direction:row}
.vitrine.lista .moldura{width:132px;flex:none}
.vazio,.carregando{color:var(--tinta-2)}

.whatsapp{position:fixed;right:16px;bottom:16px;z-index:6;display:grid;place-items:center;width:56px;height:56px;border-radius:50%;background:#FFF;color:#1FAF38;box-shadow:var(--sombra-alta)}
.whatsapp svg{width:32px;height:32px}

@media (max-width:560px){
  .slide{grid-template-columns:1fr;padding:18px 44px;min-height:0}
  .ant{left:16px}.prox{right:16px}
  .vitrine{grid-template-columns:repeat(2,minmax(0,1fr));gap:10px}
  .vitrine.lista{grid-template-columns:1fr}
  .preco{font-size:17px}
}
@media (prefers-reduced-motion:reduce){
  .slides{scroll-behavior:auto}
  .peca,.moldura img,.por{transition:none}
  .peca:hover{transform:none}
  .peca:hover .moldura img{transform:none}
}

/* sacola */
.sacola{width:min(560px,100vw);max-height:100dvh;border:0;border-radius:12px;padding:16px;background:var(--carta);color:var(--tinta)}
.sacola::backdrop{background:rgb(0 0 0 / .45)}
.fechar{text-align:right}
.fechar button{background:none;border:0;font-size:24px;color:var(--tinta)}
#itens{list-style:none;padding:0}
.item{display:grid;grid-template-columns:1fr auto auto auto;gap:6px;align-items:center;padding:6px 0;border-bottom:1px solid var(--linha)}
.item .valor{grid-column:1/-1;text-align:right;color:var(--tinta-2)}
.item button{width:36px;height:36px;border-radius:50%;border:1px solid var(--linha);background:var(--fundo);color:var(--tinta);font:inherit}
fieldset{border:1px solid var(--linha);border-radius:10px;margin:12px 0;display:grid;gap:8px}
#endereco{display:grid;gap:8px}
label{display:block}
label input[type=radio]{width:auto}
.soma{display:flex;justify-content:space-between}
.erro{color:var(--erro)}
.pagar{display:block;width:100%;margin:12px 0 0;padding:10px;border:0;border-radius:8px;background:var(--cafe);color:var(--creme);font:inherit;font-weight:700;text-align:center;text-decoration:none}
.retorno{max-width:560px;margin:0 auto;padding:24px 16px}
