/* Katalogo · telas de demonstração do app (compartilhadas pelas versões da página).
   Tudo em cqw: a tela escala com o aparelho que a contém. */
.k-screen {
	--k-brand: #E0592A;
	--k-brand-ink: #fff;
	--k-ink: #17150F;
	--k-ink-2: #4A463F;
	--k-muted: #6E6960;
	--k-line: #E6E1D8;
	--k-bg: #F6F4EF;
	--k-surface: #fff;
	--k-pix: #157347;
	position: absolute; inset: 0; overflow: hidden;
	background: var(--k-bg); color: var(--k-ink);
	font-family: "Archivo", system-ui, sans-serif; font-size: 3.6cqw; line-height: 1.35;
	-webkit-font-smoothing: antialiased;
}
/* o invólucro mede a largura: a tela não pode medir a si mesma */
[data-screen] { position: absolute; inset: 0; container-type: inline-size; }
.k-screen * { box-sizing: border-box; }
.k-screen img { display: block; max-width: 100%; }
.k-screen .k-num { font-variant-numeric: tabular-nums; }

/* barra do app */
.k-appbar { display: flex; align-items: center; gap: 2.4cqw; padding: 4cqw 4.5cqw 3cqw; background: var(--k-surface); border-bottom: 1px solid var(--k-line); }
.k-appbar .k-logo { width: 7.5cqw; height: 7.5cqw; border-radius: 2cqw; background: var(--k-brand); color: var(--k-brand-ink); display: grid; place-items: center; font-weight: 800; font-size: 3.6cqw; flex: none; }
.k-appbar b { font-size: 4cqw; font-weight: 700; letter-spacing: -.01em; line-height: 1.1; }
.k-appbar small { display: block; font-size: 2.7cqw; color: var(--k-muted); font-weight: 500; }

/* 1 · câmera: foto em tela cheia, como a câmera do celular */
.k-cam { background: #000; color: #fff; }
.k-cam .k-view { position: absolute; inset: 0; overflow: hidden; }
.k-cam .k-view img { width: 100%; height: 100%; object-fit: cover; transform: scale(1.06); transition: transform 1.4s cubic-bezier(.16,1,.3,1); }
.k-cam.is-shot .k-view img { transform: scale(1); }
.k-cam .k-grid { position: absolute; inset: 0; pointer-events: none; opacity: .5; background:
	linear-gradient(90deg, transparent calc(33.33% - .5px), rgba(255,255,255,.5) 0 calc(33.33% + .5px), transparent 0 calc(66.66% - .5px), rgba(255,255,255,.5) 0 calc(66.66% + .5px), transparent 0),
	linear-gradient(180deg, transparent calc(33.33% - .5px), rgba(255,255,255,.5) 0 calc(33.33% + .5px), transparent 0 calc(66.66% - .5px), rgba(255,255,255,.5) 0 calc(66.66% + .5px), transparent 0); }
.k-cam .k-focus { position: absolute; left: 50%; top: 46%; width: 22cqw; height: 22cqw; margin: -11cqw 0 0 -11cqw; border: .5cqw solid #FFD23F; opacity: 0; }
.k-cam.is-flash .k-focus { animation: k-focus 1.1s cubic-bezier(.16,1,.3,1) forwards; }
@keyframes k-focus { 0% { opacity: 0; transform: scale(1.5); } 30% { opacity: 1; transform: scale(1); } 80% { opacity: 1; } 100% { opacity: .0; } }
.k-cam .k-top { position: absolute; top: 0; left: 0; right: 0; height: 15cqw; padding: 6cqw 7cqw 0; display: flex; align-items: center; justify-content: space-between; background: linear-gradient(rgba(0,0,0,.55), transparent); }
.k-cam .k-top span { width: 6cqw; height: 6cqw; border-radius: 50%; border: .5cqw solid rgba(255,255,255,.9); }
.k-cam .k-top .k-hd { width: auto; height: auto; border: 0; font-size: 3cqw; font-weight: 700; letter-spacing: .04em; }
.k-cam .k-chip { position: absolute; left: 50%; top: 19cqw; transform: translateX(-50%); padding: 1.4cqw 3.2cqw; border-radius: 99px; background: rgba(0,0,0,.55); backdrop-filter: blur(6px); font-size: 2.9cqw; font-weight: 600; white-space: nowrap; display: flex; gap: 1.6cqw; align-items: center; opacity: 0; transition: opacity .4s; }
.k-cam .k-chip i { width: 2cqw; height: 2cqw; border-radius: 50%; background: #4ADE80; }
.k-cam.is-shot .k-chip { opacity: 1; }
.k-cam .k-bottom { position: absolute; left: 0; right: 0; bottom: 0; padding: 4cqw 0 9cqw; background: linear-gradient(transparent, rgba(0,0,0,.75) 30%); }
.k-cam .k-modes { display: flex; justify-content: center; gap: 6cqw; margin-bottom: 4cqw; font-size: 2.8cqw; font-weight: 600; letter-spacing: .06em; color: rgba(255,255,255,.75); }
.k-cam .k-modes b { color: #FFD23F; }
.k-cam .k-row { display: flex; align-items: center; justify-content: space-around; }
.k-cam .k-shutter { width: 19cqw; height: 19cqw; border-radius: 50%; border: 1.1cqw solid #fff; padding: 1.2cqw; background: transparent; cursor: pointer; }
.k-cam .k-shutter span { display: block; width: 100%; height: 100%; border-radius: 50%; background: #fff; transition: transform .15s; }
.k-cam .k-shutter:active span { transform: scale(.88); }
.k-cam .k-side { width: 11cqw; height: 11cqw; border-radius: 2.4cqw; overflow: hidden; background: #2A2723; border: .4cqw solid rgba(255,255,255,.8); }
.k-cam .k-side img { width: 100%; height: 100%; object-fit: cover; }
.k-cam .k-flip { width: 11cqw; height: 11cqw; border-radius: 50%; background: rgba(255,255,255,.18); }
.k-cam .k-flash { position: absolute; inset: 0; background: #fff; opacity: 0; pointer-events: none; }
.k-cam.is-flash .k-flash { animation: k-flash .5s ease-out; }
@keyframes k-flash { 0% { opacity: .95; } 100% { opacity: 0; } }

/* sob orçamento (ramos que vendem para empresas) */
.k-quote b { display: block; font-weight: 800; color: var(--k-brand); letter-spacing: -.02em; line-height: 1.05; }
.k-quote span { display: block; margin-top: .4em; color: var(--k-muted); font-size: .9em; }
.k-site .k-quote b { font-size: 3.4cqw; }
.k-site .k-quote span { font-size: 1.5cqw; }
.k-tv .k-quote b { font-size: 4.2cqw; }
.k-tv .k-quote span { font-size: 1.6cqw; }
.k-cat .k-detail .k-quote b { font-size: 3.8cqw; }
.k-cat .k-detail .k-quote span { font-size: 1.9cqw; }
.k-cat .k-card .k-q { font-size: 1.9cqw; font-weight: 700; color: var(--k-ink-2); }

/* 2 · IA escrevendo */
.k-ai .k-body { padding: 4.5cqw; display: grid; gap: 3.4cqw; }
.k-ai .k-thumb { display: flex; gap: 3cqw; align-items: center; }
.k-ai .k-thumb img { width: 20cqw; height: 20cqw; object-fit: cover; border-radius: 3cqw; background: #fff; border: 1px solid var(--k-line); }
.k-ai .k-badge { display: inline-flex; align-items: center; gap: 1.4cqw; padding: 1.4cqw 2.8cqw; border-radius: 99px; background: var(--k-ink); color: #fff; font-size: 2.8cqw; font-weight: 600; }
.k-ai .k-badge svg { width: 3.4cqw; height: 3.4cqw; }
.k-ai .k-field { display: grid; gap: 1.2cqw; }
.k-ai .k-field label { font-size: 2.7cqw; font-weight: 700; color: var(--k-muted); text-transform: uppercase; letter-spacing: .06em; }
.k-ai .k-field div { min-height: 9cqw; padding: 2.4cqw 3cqw; border-radius: 2.6cqw; background: var(--k-surface); border: 1px solid var(--k-line); font-size: 3.3cqw; }
.k-ai .k-field div.is-typing::after { content: ""; display: inline-block; width: .5cqw; height: 3.6cqw; margin-left: .4cqw; vertical-align: -.5cqw; background: var(--k-brand); animation: k-caret .8s steps(1) infinite; }
@keyframes k-caret { 50% { opacity: 0; } }
.k-ai .k-save { margin-top: 1cqw; padding: 3.6cqw; border-radius: 99px; background: var(--k-brand); color: var(--k-brand-ink); text-align: center; font-weight: 700; font-size: 3.6cqw; }

/* 3 · site (página do produto) */
.k-site { background: #fff; font-size: 1.7cqw; }
.k-site .k-bar { display: flex; align-items: center; gap: 1.4cqw; padding: 1.4cqw 2cqw; background: #EFEDE8; border-bottom: 1px solid var(--k-line); }
.k-site .k-bar i { width: 1.1cqw; height: 1.1cqw; border-radius: 50%; background: #CFC9BF; }
.k-site .k-bar span { flex: 1; margin-left: 1cqw; padding: .6cqw 1.6cqw; border-radius: 99px; background: #fff; color: var(--k-muted); font-size: 1.4cqw; }
.k-site .k-nav { display: flex; align-items: center; justify-content: space-between; padding: 1.8cqw 3.4cqw; border-bottom: 1px solid var(--k-line); }
.k-site .k-nav b { font-size: 2.2cqw; letter-spacing: -.01em; display: flex; align-items: center; gap: 1cqw; }
.k-site .k-nav b i { width: 2.6cqw; height: 2.6cqw; border-radius: .7cqw; background: var(--k-brand); }
.k-site .k-nav nav { display: flex; gap: 2.4cqw; color: var(--k-ink-2); font-size: 1.5cqw; }
.k-site .k-main { display: grid; grid-template-columns: 1.1fr 1fr; gap: 3.4cqw; padding: 3.4cqw; align-items: center; }
.k-site .k-main img { width: 100%; aspect-ratio: 1; object-fit: contain; background: #FAF9F6; border-radius: 1.4cqw; }
.k-site h4 { margin: 0 0 1.4cqw; font-size: 2.5cqw; line-height: 1.15; letter-spacing: -.01em; }
.k-site .k-desc { margin: 0 0 1.8cqw; color: var(--k-ink-2); font-size: 1.5cqw; }
.k-site s { color: var(--k-muted); font-size: 1.5cqw; }
.k-site .k-price { font-size: 4.2cqw; font-weight: 800; color: var(--k-brand); letter-spacing: -.02em; line-height: 1.1; }
.k-site .k-pix { display: flex; align-items: center; gap: .8cqw; font-size: 1.5cqw; font-weight: 600; margin: .4cqw 0; }
.k-site .k-pix em { font-style: normal; padding: .3cqw .9cqw; border-radius: 99px; background: var(--k-pix); color: #fff; font-size: 1.3cqw; }
.k-site .k-inst { color: var(--k-muted); font-size: 1.4cqw; font-style: italic; }
.k-site .k-wa { margin-top: 2cqw; display: flex; align-items: center; justify-content: center; gap: 1cqw; padding: 1.6cqw; border-radius: 99px; background: #1F7A4D; color: #fff; font-weight: 700; font-size: 1.7cqw; }
.k-site .k-wa svg { width: 2.2cqw; height: 2.2cqw; }

/* 4 · catálogo no tablet (interativo) */
.k-cat { font-size: 2.2cqw; display: flex; flex-direction: column; }
.k-cat .k-appbar { padding: 2.6cqw 3cqw 2cqw; gap: 1.6cqw; }
.k-cat .k-appbar .k-logo { width: 4.6cqw; height: 4.6cqw; border-radius: 1.2cqw; font-size: 2.2cqw; }
.k-cat .k-appbar b { font-size: 2.5cqw; }
.k-cat .k-appbar small { font-size: 1.7cqw; }
.k-cat .k-search { margin-left: auto; width: 32cqw; padding: 1.2cqw 2cqw; border-radius: 99px; background: var(--k-bg); color: var(--k-muted); font-size: 1.8cqw; }
.k-cat .k-chips { display: flex; gap: 1.2cqw; padding: 2cqw 3cqw; overflow: hidden; }
.k-cat .k-chips button { flex: none; padding: 1cqw 2.2cqw; border-radius: 99px; border: 1px solid var(--k-line); background: var(--k-surface); color: var(--k-ink); font-family: inherit; font-weight: 600; font-size: 1.9cqw; line-height: 1.2; cursor: pointer; }
.k-cat .k-chips button[aria-pressed="true"] { background: var(--k-ink); border-color: var(--k-ink); color: #fff; }
.k-cat .k-grid { flex: 1; display: grid; grid-template-columns: repeat(3, minmax(0, 1fr)); gap: 2cqw; padding: 0 3cqw 3cqw; overflow: hidden; align-content: start; }
.k-cat .k-card { display: grid; gap: .8cqw; padding: 1.2cqw; border-radius: 1.8cqw; border: 0; background: var(--k-surface); text-align: left; font-family: inherit; color: inherit; cursor: pointer; transition: transform .25s cubic-bezier(.16,1,.3,1), box-shadow .25s; }
.k-cat .k-card:hover { transform: translateY(-.4cqw); box-shadow: 0 1.2cqw 2.4cqw rgba(23,21,15,.1); }
.k-cat .k-card img { width: 100%; aspect-ratio: 4/3; object-fit: contain; background: #FAF9F6; border-radius: 1.2cqw; }
.k-cat .k-card b { font-size: 1.75cqw; font-weight: 600; line-height: 1.2; display: -webkit-box; -webkit-line-clamp: 2; -webkit-box-orient: vertical; overflow: hidden; min-height: 4.2cqw; }
.k-cat .k-card span { font-size: 2.3cqw; font-weight: 800; color: var(--k-brand); }
.k-cat .k-card[hidden] { display: none; }
.k-cat .k-detail { position: absolute; inset: 0; display: grid; grid-template-columns: 1.1fr 1fr; gap: 3cqw; padding: 9cqw 3.4cqw 3.4cqw; background: var(--k-bg); transform: translateX(100%); transition: transform .5s cubic-bezier(.16,1,.3,1); }
.k-cat.is-detail .k-detail { transform: none; }
.k-cat .k-detail img { width: 100%; aspect-ratio: 1; object-fit: contain; background: #fff; border-radius: 2cqw; }
.k-cat .k-detail h4 { margin: 0 0 1.2cqw; font-size: 2.8cqw; line-height: 1.15; }
.k-cat .k-detail p { margin: 0 0 1.6cqw; color: var(--k-ink-2); font-size: 1.9cqw; }
.k-cat .k-detail .k-price { font-size: 4.6cqw; font-weight: 800; color: var(--k-brand); letter-spacing: -.02em; }
.k-cat .k-detail .k-inst { color: var(--k-muted); font-size: 1.8cqw; }
.k-cat .k-back { position: absolute; top: 2.4cqw; left: 3cqw; padding: 1cqw 2.2cqw; border-radius: 99px; border: 1px solid var(--k-line); background: #fff; font-family: inherit; font-weight: 600; font-size: 1.9cqw; cursor: pointer; color: var(--k-ink); }
.k-cat .k-order { margin-top: 2cqw; width: 100%; padding: 2cqw; border: 0; border-radius: 99px; background: #1F7A4D; color: #fff; font-family: inherit; font-weight: 700; font-size: 2.2cqw; cursor: pointer; display: flex; align-items: center; justify-content: center; gap: 1.2cqw; }
.k-cat .k-order svg { width: 2.8cqw; height: 2.8cqw; }
.k-cat .k-toast { position: absolute; left: 50%; bottom: 3cqw; transform: translate(-50%, 140%); padding: 1.6cqw 3cqw; border-radius: 99px; background: var(--k-ink); color: #fff; font-size: 2cqw; font-weight: 600; white-space: nowrap; transition: transform .45s cubic-bezier(.16,1,.3,1); }
.k-cat .k-toast.is-on { transform: translate(-50%, 0); }
.k-screen button:focus-visible { outline: .5cqw solid var(--k-brand); outline-offset: .3cqw; }

/* 5 · TV da loja */
.k-tv { background: #F7F4EE; font-size: 1.6cqw; }
.k-tv .k-slide { position: absolute; inset: 0 0 9cqw; display: grid; grid-template-columns: 58fr 42fr; align-items: center; }
.k-tv .k-slide img { width: 88%; margin: 0 auto; max-height: 84%; object-fit: contain; mix-blend-mode: multiply; }
.k-tv .k-new { display: inline-block; padding: .6cqw 1.4cqw; border-radius: 99px; background: var(--k-brand); color: var(--k-brand-ink); font-size: 1.3cqw; font-weight: 700; letter-spacing: .12em; text-transform: uppercase; margin-bottom: 1.6cqw; }
.k-tv h4 { margin: 0 0 1.6cqw; font-size: 3.4cqw; line-height: 1.05; letter-spacing: -.02em; text-transform: uppercase; padding-right: 3cqw; }
.k-tv s { color: var(--k-muted); font-size: 1.6cqw; }
.k-tv .k-price { font-size: 5.6cqw; font-weight: 800; color: var(--k-brand); letter-spacing: -.03em; line-height: 1; }
.k-tv .k-pix { font-size: 1.7cqw; font-weight: 600; margin-top: .6cqw; }
.k-tv .k-pix em { font-style: normal; margin-left: .6cqw; padding: .3cqw .9cqw; border-radius: 99px; background: var(--k-pix); color: #fff; font-size: 1.4cqw; }
.k-tv .k-qr { display: flex; align-items: center; gap: 1.4cqw; margin-top: 2.4cqw; font-size: 1.4cqw; color: var(--k-ink-2); }
.k-tv .k-qr div { width: 9cqw; height: 9cqw; padding: .8cqw; background: #fff; border-radius: 1cqw; box-shadow: 0 .4cqw 1.2cqw rgba(23,21,15,.1); }
.k-tv .k-qr svg { width: 100%; height: 100%; display: block; }
.k-tv .k-qr b { display: block; color: var(--k-ink); font-size: 1.6cqw; }
.k-tv .k-foot { position: absolute; left: 0; right: 0; bottom: 0; height: 9cqw; background: #161413; color: #fff; display: flex; align-items: center; gap: 2cqw; padding: 0 3cqw; font-size: 1.6cqw; }
.k-tv .k-foot b { font-size: 2cqw; letter-spacing: -.01em; display: flex; align-items: center; gap: 1cqw; }
.k-tv .k-foot b i { width: 2.6cqw; height: 2.6cqw; border-radius: .6cqw; background: var(--k-brand); }
.k-tv .k-foot span { margin-left: auto; color: #E9E4DC; }
.k-tv .k-prog { position: absolute; left: 0; bottom: 9cqw; height: .5cqw; width: 100%; background: var(--k-brand); transform-origin: left; animation: k-prog 6s linear infinite; }
@keyframes k-prog { from { transform: scaleX(0); } to { transform: scaleX(1); } }
.k-tv .k-slide > * { animation: k-tvin 6s cubic-bezier(.16,1,.3,1) infinite; }
@keyframes k-tvin { 0% { opacity: 0; transform: translateY(2cqw); } 10%, 90% { opacity: 1; transform: none; } 100% { opacity: 0; } }

/* 6 · WhatsApp */
.k-wa-chat { background: #EAE3D9; font-size: 3.3cqw; }
.k-wa-chat .k-head { display: flex; align-items: center; gap: 2.6cqw; padding: 4cqw 4cqw 3cqw; background: #1F5C45; color: #fff; }
.k-wa-chat .k-head i { width: 9cqw; height: 9cqw; border-radius: 50%; background: var(--k-brand); display: grid; place-items: center; font-style: normal; font-weight: 800; font-size: 3.6cqw; color: var(--k-brand-ink); }
.k-wa-chat .k-head b { display: block; font-size: 3.8cqw; }
.k-wa-chat .k-head small { font-size: 2.7cqw; color: #CFE6DA; }
.k-wa-chat .k-msgs { padding: 4cqw; display: grid; gap: 2.6cqw; }
.k-wa-chat .k-msg { max-width: 82%; padding: 2.4cqw 3cqw 1.6cqw; border-radius: 3cqw; background: #fff; box-shadow: 0 .3cqw .6cqw rgba(0,0,0,.08); opacity: 0; transform: translateY(2cqw); transition: opacity .5s, transform .5s cubic-bezier(.16,1,.3,1); }
.k-wa-chat .k-msg.is-on { opacity: 1; transform: none; }
.k-wa-chat .k-msg.me { justify-self: end; background: #D9F5C9; }
.k-wa-chat .k-msg time { display: block; text-align: right; font-size: 2.4cqw; color: #6E7E73; margin-top: .6cqw; }
.k-wa-chat .k-prod { display: flex; gap: 2.4cqw; align-items: center; padding: 1.6cqw; margin-bottom: 1.6cqw; border-radius: 2cqw; background: rgba(0,0,0,.05); }
.k-wa-chat .k-prod img { width: 13cqw; height: 13cqw; object-fit: contain; background: #fff; border-radius: 1.6cqw; }
.k-wa-chat .k-prod b { font-size: 2.9cqw; line-height: 1.2; display: block; }
.k-wa-chat .k-prod span { font-size: 3cqw; font-weight: 800; color: #1F7A4D; }

/* tela inicial do celular (marca própria) */
.k-home { background: linear-gradient(160deg, #2B2925, #121110); color: #fff; padding: 16cqw 7cqw 0; }
.k-home .k-clock { text-align: center; font-size: 15cqw; font-weight: 300; letter-spacing: -.04em; line-height: 1; }
.k-home .k-date { text-align: center; font-size: 3.4cqw; color: #CFC9BF; margin: 1.6cqw 0 12cqw; }
.k-home .k-apps { display: grid; grid-template-columns: repeat(4, 1fr); gap: 6cqw 4cqw; }
.k-home .k-app { display: grid; justify-items: center; gap: 1.6cqw; font-size: 2.5cqw; text-align: center; line-height: 1.15; color: #F2EEE7; }
.k-home .k-app i { width: 15cqw; height: 15cqw; border-radius: 4cqw; display: grid; place-items: center; font-style: normal; font-weight: 800; font-size: 6cqw; background: #3A3733; }
.k-home .k-app.is-k i { background: var(--k-brand); color: var(--k-brand-ink); box-shadow: 0 1.6cqw 3.2cqw rgba(0,0,0,.35); }
.k-home .k-app.is-k { animation: k-pop .7s cubic-bezier(.16,1,.3,1); }
@keyframes k-pop { from { transform: scale(.6); opacity: 0; } }

@media (prefers-reduced-motion: reduce) {
	.k-screen *, .k-screen *::before, .k-screen *::after { animation: none !important; transition: none !important; }
	.k-wa-chat .k-msg { opacity: 1; transform: none; }
}

/* ---------- Aparelhos (molduras) ---------- */
.k-dev { --frame: #17150F; --frame-2: #2B2823; position: relative; }
.k-dev .k-glass { position: relative; overflow: hidden; background: #000; }
.k-phone { aspect-ratio: 9 / 19.5; border-radius: 15% / 7%; padding: 1.7%; background: linear-gradient(140deg, #4A4743 0%, #1C1B19 22%, #2E2C29 50%, #131211 78%, #3D3A36 100%); box-shadow: inset 0 0 0 .6px rgba(255,255,255,.28), inset 0 0 0 2.2px #0A0A09, 0 40px 70px -26px rgba(0,0,0,.6), 0 12px 24px -12px rgba(0,0,0,.4); }
.k-phone .k-glass { height: 100%; border-radius: 13.4% / 6.2%; box-shadow: inset 0 0 0 1px rgba(0,0,0,.7); }
.k-phone .k-glass::before { content: ""; position: absolute; inset: 0; z-index: 4; pointer-events: none; border-radius: inherit; background: linear-gradient(115deg, rgba(255,255,255,.14) 0%, rgba(255,255,255,.04) 22%, transparent 38%); }
.k-phone .k-glass::after { content: ""; position: absolute; top: 2.2%; left: 50%; width: 31%; height: 3.4%; transform: translateX(-50%); border-radius: 99px; background: #000; z-index: 5; }
.k-tablet { aspect-ratio: 4 / 3; border-radius: 4.5% / 6%; padding: 2.6%; background: var(--frame); box-shadow: inset 0 0 0 1.5px var(--frame-2), 0 36px 70px -24px rgba(23,21,15,.45); }
.k-tablet .k-glass { height: 100%; border-radius: 2.4% / 3.2%; }
.k-laptop .k-lid { aspect-ratio: 16 / 10.4; border-radius: 3% 3% 0 0 / 4.6% 4.6% 0 0; padding: 2.4% 2.4% 3.2%; background: var(--frame); box-shadow: inset 0 0 0 1.5px var(--frame-2); }
.k-laptop .k-glass { height: 100%; border-radius: .6%; }
.k-laptop .k-base { height: 0; padding-bottom: 3.6%; margin: 0 -7%; border-radius: 0 0 14% 14% / 0 0 100% 100%; background: linear-gradient(#CFCAC1, #9C978D); box-shadow: 0 30px 50px -18px rgba(23,21,15,.45); }
.k-tv-dev .k-panel { aspect-ratio: 16 / 9; padding: 1.2%; background: var(--frame); border-radius: .8%; box-shadow: 0 34px 60px -22px rgba(23,21,15,.45); }
.k-tv-dev .k-glass { height: 100%; }
.k-tv-dev .k-stand { display: flex; justify-content: space-between; width: 70%; margin: 0 auto; }
.k-tv-dev .k-stand i { width: 2.2%; height: 0; padding-bottom: 7%; background: var(--frame); transform-origin: top; }
.k-tv-dev .k-stand i:first-child { transform: skewX(24deg); }
.k-tv-dev .k-stand i:last-child { transform: skewX(-24deg); }

/* Molduras: a borda é medida pelo próprio aparelho (padding em % seguia a largura do pai e engrossava a borda) */
.k-phone { padding: 0; }
.k-phone .k-glass { position: absolute; inset: 1.6% 3.4%; height: auto; }
.k-tablet { padding: 0; }
.k-tablet .k-glass { position: absolute; inset: 3.4% 2.6%; height: auto; }
.k-laptop .k-lid { position: relative; padding: 0; }
.k-laptop .k-glass { position: absolute; inset: 3.7% 2.4% 4.9%; height: auto; }
.k-tv-dev .k-panel { position: relative; padding: 0; }
.k-tv-dev .k-glass { position: absolute; inset: 2.1% 1.2%; height: auto; }

/* Produto sempre em vitrine branca, com respiro (como foto de catálogo) */
.k-cat .k-card img, .k-cat .k-detail img, .k-site .k-main img, .k-wa-chat .k-prod img, .k-ai .k-thumb img { background: #fff; object-fit: contain; padding: 4%; }
.k-cat .k-card { background: #fff; }
.k-tv .k-slide img { background: #fff; border-radius: 1.2cqw; padding: 2%; mix-blend-mode: normal; }

/* Catálogo no celular: 2 colunas e letras maiores */
.k-cat--phone { font-size: 4cqw; }
.k-cat--phone .k-appbar { padding: 12cqw 4.5cqw 3cqw; gap: 2.6cqw; }
.k-cat--phone .k-appbar .k-logo { width: 9cqw; height: 9cqw; border-radius: 2.4cqw; font-size: 4.4cqw; }
.k-cat--phone .k-appbar b { font-size: 4.4cqw; }
.k-cat--phone .k-appbar small { font-size: 3cqw; }
.k-cat--phone .k-search { display: none; }
.k-cat--phone .k-chips { gap: 2cqw; padding: 3.4cqw 4.5cqw; }
.k-cat--phone .k-chips button { padding: 1.8cqw 3.6cqw; font-size: 3.4cqw; }
.k-cat--phone .k-grid { grid-template-columns: repeat(2, minmax(0, 1fr)); gap: 3cqw; padding: 0 4.5cqw 4.5cqw; overflow-y: auto; }
.k-cat--phone .k-card { gap: 1.6cqw; padding: 2.2cqw; border-radius: 3cqw; }
.k-cat--phone .k-card img { border-radius: 2cqw; }
.k-cat--phone .k-card b { font-size: 3.3cqw; min-height: 8cqw; }
.k-cat--phone .k-card span, .k-cat--phone .k-card .k-q { font-size: 3.6cqw; }
.k-cat--phone .k-detail { grid-template-columns: 1fr; align-content: start; gap: 4cqw; padding: 22cqw 5cqw 5cqw; overflow-y: auto; }
.k-cat--phone .k-back { top: 11cqw; left: 5cqw; padding: 1.8cqw 3.6cqw; font-size: 3.4cqw; }
.k-cat--phone .k-detail h4 { font-size: 5cqw; }
.k-cat--phone .k-detail p { font-size: 3.6cqw; }
.k-cat--phone .k-detail .k-price { font-size: 8cqw; }
.k-cat--phone .k-detail .k-inst, .k-cat--phone .k-detail .k-quote span { font-size: 3.4cqw; }
.k-cat--phone .k-detail .k-quote b { font-size: 6.4cqw; }
.k-cat--phone .k-order { padding: 3.6cqw; font-size: 3.8cqw; gap: 2cqw; }
.k-cat--phone .k-order svg { width: 5cqw; height: 5cqw; }
.k-cat--phone .k-toast { font-size: 3.4cqw; padding: 2.6cqw 4.4cqw; bottom: 5cqw; }
