@charset "UTF-8";

/* ==========================================================================
   Multipedras — tokens visuais compartilhados pela loja e pelo painel.
   Mesmos valores do site institucional (src/styles/global.css):
   grafite + marfim, vermelho da marca como destaque; Cormorant Garamond nos
   títulos, Jost no texto e nos rótulos.
   ========================================================================== */

@font-face {
	font-family: 'Jost Variable';
	font-style: normal;
	font-display: swap;
	font-weight: 100 900;
	src: url('../fontes/jost-latin-wght-normal.woff2') format('woff2-variations');
	unicode-range: U+0000-00FF, U+0131, U+0152-0153, U+02BB-02BC, U+02C6, U+02DA, U+02DC, U+0304, U+0308, U+0329, U+2000-206F, U+20AC, U+2122, U+2191, U+2193, U+2212, U+2215, U+FEFF, U+FFFD;
}

@font-face {
	font-family: 'Jost Variable';
	font-style: normal;
	font-display: swap;
	font-weight: 100 900;
	src: url('../fontes/jost-latin-ext-wght-normal.woff2') format('woff2-variations');
	unicode-range: U+0100-02BA, U+02BD-02C5, U+02C7-02CC, U+02CE-02D7, U+02DD-02FF, U+0304, U+0308, U+0329, U+1D00-1DBF, U+1E00-1E9F, U+1EF2-1EFF, U+2020, U+20A0-20AB, U+20AD-20C0, U+2113, U+2C60-2C7F, U+A720-A7FF;
}

@font-face {
	font-family: 'Cormorant Garamond Variable';
	font-style: normal;
	font-display: swap;
	font-weight: 300 700;
	src: url('../fontes/cormorant-garamond-latin-wght-normal.woff2') format('woff2-variations');
	unicode-range: U+0000-00FF, U+0131, U+0152-0153, U+02BB-02BC, U+02C6, U+02DA, U+02DC, U+0304, U+0308, U+0329, U+2000-206F, U+20AC, U+2122, U+2191, U+2193, U+2212, U+2215, U+FEFF, U+FFFD;
}

@font-face {
	font-family: 'Cormorant Garamond Variable';
	font-style: normal;
	font-display: swap;
	font-weight: 300 700;
	src: url('../fontes/cormorant-garamond-latin-ext-wght-normal.woff2') format('woff2-variations');
	unicode-range: U+0100-02BA, U+02BD-02C5, U+02C7-02CC, U+02CE-02D7, U+02DD-02FF, U+0304, U+0308, U+0329, U+1D00-1DBF, U+1E00-1E9F, U+1EF2-1EFF, U+2020, U+20A0-20AB, U+20AD-20C0, U+2113, U+2C60-2C7F, U+A720-A7FF;
}

@font-face {
	font-family: 'Cormorant Garamond Variable';
	font-style: italic;
	font-display: swap;
	font-weight: 300 700;
	src: url('../fontes/cormorant-garamond-latin-wght-italic.woff2') format('woff2-variations');
	unicode-range: U+0000-00FF, U+0131, U+0152-0153, U+02BB-02BC, U+02C6, U+02DA, U+02DC, U+0304, U+0308, U+0329, U+2000-206F, U+20AC, U+2122, U+2191, U+2193, U+2212, U+2215, U+FEFF, U+FFFD;
}

:root {
	--ink: #141312;
	--ink-2: #1c1a18;
	--ink-3: #26231f;
	--paper: #fbf9f5;
	--ivory: #f4efe7;
	--stone: #e8e1d6;
	--sand: #cbbfae;
	--text: #1b1917;
	--muted: #6a645b;
	--muted-dark: #a79f93;
	--line: rgba(27, 25, 23, 0.12);
	--line-strong: rgba(27, 25, 23, 0.24);
	--line-dark: rgba(244, 239, 231, 0.14);
	--brand: #c50208;
	--brand-deep: #a00106;
	--brand-light: #f0474c; /* vermelho sobre fundo escuro, contraste AA */
	--whats: #10783f; /* verde WhatsApp escurecido: contraste AA com branco */
	--ok: #1f6f43;
	--ok-bg: #e6f2ea;
	--warn: #8a5a00;
	--warn-bg: #fbf1dc;
	--danger: #a00106;
	--danger-bg: #fbe7e7;
	--info: #22486e;
	--info-bg: #e7eef6;

	--serif: 'Cormorant Garamond Variable', 'Cormorant Garamond', 'Times New Roman', serif;
	--sans: 'Jost Variable', 'Jost', 'Segoe UI', system-ui, sans-serif;

	--ease: cubic-bezier(0.22, 0.61, 0.36, 1);
}

*,
*::before,
*::after {
	box-sizing: border-box;
}

html {
	color-scheme: light;
	-webkit-text-size-adjust: 100%;
	-webkit-tap-highlight-color: rgba(197, 2, 8, 0.12);
}

body {
	margin: 0;
	font-family: var(--sans);
	color: var(--text);
	-webkit-font-smoothing: antialiased;
	text-rendering: optimizeLegibility;
}

img {
	max-width: 100%;
	display: block;
}

a {
	color: inherit;
	text-decoration: none;
}

button,
input,
select,
textarea {
	font: inherit;
	color: inherit;
}

button {
	cursor: pointer;
}

a,
button,
input,
select,
textarea,
summary,
label {
	touch-action: manipulation;
}

h1,
h2,
h3,
h4 {
	margin: 0;
	font-family: var(--serif);
	font-weight: 500;
	line-height: 1.08;
	letter-spacing: -0.01em;
	text-wrap: balance;
}

p {
	margin: 0;
}

ul,
ol {
	margin: 0;
	padding: 0;
	list-style: none;
}

[hidden] {
	display: none !important;
}

:focus-visible {
	outline: 2px solid var(--brand);
	outline-offset: 3px;
}

::selection {
	background: var(--brand);
	color: #fff;
}

.icon {
	width: 1.15em;
	height: 1.15em;
	flex: none;
	fill: none;
	stroke: currentColor;
	stroke-width: 1.6;
	stroke-linecap: round;
	stroke-linejoin: round;
}

.icon-fill {
	width: 1.2em;
	height: 1.2em;
	flex: none;
	fill: currentColor;
}

/* Sprite de ícones (Pages/Shared/_Icones.cshtml): fora do fluxo, sem atributo style (CSP) */
.sprite {
	position: absolute;
	width: 0;
	height: 0;
	overflow: hidden;
}

.sr-only {
	position: absolute;
	width: 1px;
	height: 1px;
	overflow: hidden;
	clip: rect(0 0 0 0);
	white-space: nowrap;
}

.tabular {
	font-variant-numeric: tabular-nums;
}

/* Selos de status de pedido (loja e painel) */
.selo {
	display: inline-flex;
	align-items: center;
	gap: 6px;
	padding: 4px 10px;
	border-radius: 999px;
	font-size: 12px;
	font-weight: 500;
	letter-spacing: 0.04em;
	white-space: nowrap;
	background: var(--stone);
	color: var(--text);
}

.selo::before {
	content: '';
	width: 6px;
	height: 6px;
	border-radius: 50%;
	background: currentColor;
}

.selo--aguardando {
	background: var(--warn-bg);
	color: var(--warn);
}

.selo--pago {
	background: var(--info-bg);
	color: var(--info);
}

.selo--andamento {
	background: #efe9fb;
	color: #4b2f86;
}

.selo--concluido {
	background: var(--ok-bg);
	color: var(--ok);
}

.selo--encerrado {
	background: var(--stone);
	color: var(--muted);
}

.selo--alerta {
	background: var(--danger-bg);
	color: var(--danger);
}
