.voucher-checkout{border:1px solid #e5e1dc;padding:15px 18px;margin:18px 0 24px}.voucher-checkout h2{margin:0 0 8px;font-size:1.1rem}.voucher-apply{display:flex;align-items:center;gap:8px;flex-wrap:wrap}.voucher-apply label{font-size:.85rem}.voucher-apply input{width:170px;max-width:100%}.voucher-apply button{width:auto}.voucher-checkout p{margin:10px 0 0}.stock-backorder{font-size:.85rem;color:#805d20}
/* Confirmação da encomenda em duas colunas no site. */
.order-confirmation{max-width:none}
.order-confirmation-grid{display:grid;grid-template-columns:minmax(0,1fr) minmax(0,1fr);gap:48px;align-items:start}
.order-confirmation-payment,.order-confirmation-delivery{min-width:0}
.order-confirmation-delivery{border-left:1px solid #e5e1dc;padding-left:34px}
.order-confirmation-delivery p:first-child{margin-top:0}
@media(max-width:760px){.order-confirmation-grid{grid-template-columns:1fr;gap:8px}.order-confirmation-delivery{border-left:0;border-top:1px solid #e5e1dc;padding:24px 0 0}}

/* Listagem de produtos: imagens quadradas e segunda fotografia ao passar o rato. */
.products .card{min-width:0}
.card-media{position:relative;width:100%;aspect-ratio:1;overflow:hidden;background:#eeeae4}
.card .card-media .card-photo{display:block;position:absolute;inset:0;width:100%;height:100%;aspect-ratio:auto;object-fit:contain;background:#eeeae4;transition:transform .45s ease,opacity .4s ease}
.card .card-media .card-photo-second{opacity:0}
.card:hover .card-media .card-photo,.card:focus-visible .card-media .card-photo{transform:scale(1.055)}
.card:hover .card-media .card-photo-second,.card:focus-visible .card-media .card-photo-second{opacity:1}
.card .card-copy strong{font-weight:700}
.card .card-copy span{color:#ee8b00;font-weight:700}
@media(prefers-reduced-motion:reduce){.card .card-media .card-photo{transition:none}}

/* Categorias presentes no cabeçalho de todas as páginas públicas. */
.shop-page .top{display:grid;grid-template-columns:minmax(125px,205px) minmax(0,1fr) auto;align-items:center;gap:20px;padding-top:15px;padding-bottom:15px}
.shop-page .top .brand{min-width:0}
.shop-page .top .brand img{display:block;max-width:100%;max-height:55px}
.header-categories{display:flex;flex-wrap:nowrap;align-items:center;gap:7px;min-width:0;overflow-x:auto;overscroll-behavior-inline:contain;scrollbar-width:thin;padding:3px 0 7px}
.header-categories a{flex:none;white-space:nowrap;border:1px solid #dedbd6;padding:7px 11px;font-size:.85rem;line-height:1.25}
.header-categories a:hover,.header-categories a.selected{background:#262522;color:#fff;border-color:#262522}
.header-utility{justify-content:flex-end;flex-wrap:nowrap;gap:15px;white-space:nowrap}
@media(max-width:900px){.shop-page .top{grid-template-columns:minmax(0,1fr) auto;gap:9px 15px}.header-categories{grid-column:1/-1;grid-row:2}.header-utility{grid-column:2;grid-row:1}}
@media(max-width:500px){.shop-page .top{padding:12px 18px;align-items:center}.shop-page .top .brand img{max-width:145px;max-height:48px}.header-utility{gap:9px}.header-utility a{font-size:.76rem}.header-categories{margin:0 -18px;padding:5px 18px 8px;gap:6px}.header-categories a{font-size:.8rem;padding:7px 10px}}

/* Categorias à direita; o logótipo mostra a loja completa. */
.header-categories{justify-content:flex-end}
.header-utility a[href*="p=cart"]{display:inline-flex;align-items:center;gap:5px}
.header-cart-icon,.logout-icon{width:19px;height:19px;flex:none;vertical-align:middle}
.logout-button{display:inline-flex;align-items:center;justify-content:center;gap:6px}
@media(max-width:900px){.header-categories{justify-content:flex-start}}

/* Paginação visual de produtos em grupos, sem perder a lista se JS estiver indisponível. */
.products{grid-template-columns:repeat(3,minmax(0,1fr));gap:28px 20px}
.product-carousel{position:relative;min-width:0}
.product-carousel.is-ready{padding:0 43px}
.product-carousel .card[hidden],.product-carousel .carousel-arrow[hidden]{display:none}
.product-carousel .carousel-arrow{position:absolute;top:42%;transform:translateY(-50%);display:grid;place-items:center;width:36px;height:50px;padding:0;border:1px solid #dedbd6;background:#fff;color:#25231f;font:normal 2rem/1 Georgia,serif;cursor:pointer;z-index:2}
.product-carousel .carousel-prev{left:0}.product-carousel .carousel-next{right:0}
.product-carousel .carousel-arrow:hover:not(:disabled),.product-carousel .carousel-arrow:focus-visible:not(:disabled){background:#25231f;color:#fff}
.product-carousel .carousel-arrow:disabled{opacity:.3;cursor:default}
.carousel-count{display:block;min-height:20px;text-align:right;color:#777;font-size:.75rem;margin-top:9px}
@media(max-width:850px){.products{grid-template-columns:repeat(2,minmax(0,1fr))}}
@media(max-width:580px){.products{grid-template-columns:minmax(0,1fr)}.product-carousel.is-ready{padding:0 30px}.product-carousel .carousel-arrow{width:27px;height:42px;font-size:1.55rem}}

/* Contorno e seleção das categorias na cor do logótipo. */
.header-categories a{border-color:#ee8b00}
.header-categories a.selected{background:#ee8b00;color:#25231f;border-color:#ee8b00}
.header-categories a:hover,.header-categories a:focus-visible{background:#25231f;color:#fff;border-color:#25231f}

/* Sem contorno visível no estado normal. */
.header-categories a:not(.selected):not(:hover):not(:focus-visible){border-color:#fff}

/* Categoria selecionada: amarelo com texto branco. */
.header-categories a.selected:not(:hover):not(:focus-visible){color:#fff}

/* Os grupos deslizam horizontalmente ao navegar. */
.product-carousel .carousel-viewport{display:block;overflow:hidden}
.carousel-track{display:flex;align-items:stretch;transition:transform .48s cubic-bezier(.22,.61,.36,1);will-change:transform}
.carousel-page{flex:0 0 100%;min-width:0;display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:20px;align-content:start}
@media(max-width:850px){.carousel-page{grid-template-columns:repeat(2,minmax(0,1fr))}}
@media(max-width:580px){.carousel-page{grid-template-columns:minmax(0,1fr)}}
@media(prefers-reduced-motion:reduce){.carousel-track{transition:none}}

.category-intro{max-width:850px;font-size:1.1rem;line-height:1.55;margin:0 0 27px;color:#34302b}

.shipping-address-fields{display:contents}
.shipping-address-fields[hidden]{display:none!important}
