/*
Theme Name: Carimbos BH
Description: Tema filho do Twenty Twenty-Five com a identidade visual da Carimbos BH.
Template: twentytwentyfive
Version: 1.0.2610211909
Requires at least: 6.7
Text Domain: carimbos-bh
*/

/* Faixa superior */
.kr-topbar a { color: inherit; text-decoration: underline; }

/* Cabeçalho fixo com leve sombra */
header.wp-block-template-part {
	position: sticky;
	top: 0;
	z-index: 50;
	background: #fff;
	box-shadow: 0 2px 10px rgba(33, 33, 32, 0.06);
}
body.admin-bar header.wp-block-template-part { top: 32px; }
@media (max-width: 782px) {
	body.admin-bar header.wp-block-template-part { top: 46px; }
}
header.wp-block-template-part > .wp-block-group,
footer.wp-block-template-part > .wp-block-group { margin-block-start: 0; }

/* Logo: completo no desktop, só o símbolo no celular */
.kr-logo-mobile { display: none !important; }
@media (max-width: 600px) {
	.kr-logo-desktop { display: none !important; }
	.kr-logo-mobile { display: block !important; }
}

/* Faixa CMYK da marca (ciano, magenta, amarelo, laranja) */
.kr-cmyk-strip {
	height: 6px;
	background: linear-gradient(90deg, #00A0E3 0 25%, #EC008B 25% 50%, #FFF100 50% 75%, #0F414D 75% 100%);
}

/* Hero */
.kr-hero {
	background:
		radial-gradient(circle at 85% 20%, rgba(0, 160, 227, 0.30), transparent 45%),
		linear-gradient(135deg, #0A2E37 0%, #0F414D 100%);
}
.kr-hero .kr-highlight { color: #00A0E3; }

/* Cartões de categoria */
.kr-cat-card {
	transition: transform 0.15s ease, box-shadow 0.15s ease;
	height: 100%;
}
.kr-cat-card:hover {
	transform: translateY(-3px);
	box-shadow: 0 10px 24px rgba(33, 33, 32, 0.12);
}
.kr-cat-card a { text-decoration: none; color: inherit; }
.kr-cat-card a::after { content: ""; position: absolute; inset: 0; }
.kr-cat-card { position: relative; }

/* Passos numerados */
.kr-step-num {
	display: inline-flex;
	align-items: center;
	justify-content: center;
	width: 2.75rem;
	height: 2.75rem;
	border-radius: 50%;
	background: #0F414D;
	color: #fff;
	font-weight: 700;
}

/* Botões WooCommerce seguem a marca */
.wc-block-components-button:not(.is-link),
.wp-element-button.wc-block-components-button {
	background-color: var(--wp--preset--color--accent-1);
	color: #fff;
}
.wc-block-components-product-price,
.wc-block-grid__product-price { color: var(--wp--preset--color--contrast); font-weight: 600; }
.wc-block-components-product-sale-badge { background: var(--wp--preset--color--accent-1); color: #fff; border: 0; }

/* Link do carrinho no cabeçalho */
.kr-cart-link {
	position: relative;
	display: inline-flex;
	color: var(--wp--preset--color--accent-1);
	line-height: 0;
}
.kr-cart-count {
	position: absolute;
	top: -6px;
	right: -9px;
	min-width: 18px;
	height: 18px;
	padding: 0 4px;
	border-radius: 9px;
	background: var(--wp--preset--color--contrast);
	color: #fff;
	font-size: 11px;
	font-weight: 700;
	line-height: 18px;
	text-align: center;
}
.wc-block-customer-account__account-icon { color: var(--wp--preset--color--accent-1); }



/* Links do rodapé sem marcadores */
.kr-footer-links { list-style: none; padding-left: 0; }

/* Checkout clássico (necessário para o Brazilian Market / Bling) */
.kr-checkout-classico .woocommerce form .form-row input.input-text,
.kr-checkout-classico .woocommerce form .form-row textarea,
.kr-checkout-classico .woocommerce form .form-row select,
.kr-checkout-classico .select2-container .select2-selection--single {
	border: 1px solid #D5D5D2;
	border-radius: 8px;
	padding: 0.6rem 0.75rem;
	min-height: 44px;
	font-family: inherit;
}
.kr-checkout-classico .select2-container .select2-selection--single { padding: 0.35rem 0.5rem; }
.kr-checkout-classico .woocommerce form .form-row label { font-weight: 600; font-size: 0.9rem; }
.kr-checkout-classico #order_review_heading,
.kr-checkout-classico .woocommerce-billing-fields h3,
.kr-checkout-classico .woocommerce-shipping-fields h3 { font-size: 1.25rem; margin-top: 1.5rem; }
.kr-checkout-classico table.shop_table { border-radius: 10px; border-color: #E6E6E3; }
.kr-checkout-classico #payment { background: #F4F4F2; border-radius: 12px; }
.kr-checkout-classico #place_order {
	background: var(--wp--preset--color--accent-1);
	color: #fff;
	border: 0;
	border-radius: 10px;
	padding: 0.9rem 1.6rem;
	font-weight: 600;
	font-size: 1.05rem;
	width: 100%;
}
.kr-checkout-classico #place_order:hover { background: var(--wp--preset--color--contrast); }

/* Personalização do carimbo na página do produto */
.kr-personalizacao {
	margin: 1rem 0 1.25rem;
	padding: 1rem 1.1rem;
	background: #E8F1F3;
	border: 1px solid #BFD6DB;
	border-radius: 12px;
	width: 100%;
}
.kr-personalizacao textarea {
	width: 100%;
	margin-top: 0.4rem;
	padding: 0.65rem 0.75rem;
	border: 1px solid #D5D5D2;
	border-radius: 8px;
	font-family: inherit;
	font-size: 1rem;
	line-height: 1.5;
	background: #fff;
}
.kr-personalizacao .kr-obrigatorio { color: #0F414D; }
.kr-personalizacao .kr-ajuda { font-size: 0.85rem; color: #5E656B; margin: 0.4rem 0 0.6rem; }
.kr-personalizacao .kr-check { font-size: 0.9rem; display: flex; gap: 0.5rem; align-items: flex-start; }

/* Busca no cabeçalho */
.kr-busca-topo .wp-block-search__button { background: transparent; color: var(--wp--preset--color--accent-1); padding: 0.3rem; border: 0; }
.kr-busca-topo .wp-block-search__input { border-radius: 8px; border: 1px solid #D5D5D2; }

/* Submenus do menu de categorias */
.kr-header .wp-block-navigation__submenu-container {
	border: 1px solid #E6E6E3 !important;
	border-radius: 10px;
	box-shadow: 0 10px 24px rgba(33, 33, 32, 0.10);
	padding: 0.4rem 0 !important;
	min-width: 230px !important;
}
.kr-header .wp-block-navigation__submenu-container .wp-block-navigation-item__content { padding: 0.45rem 1rem !important; font-weight: 500; }
.kr-header .wp-block-navigation__submenu-container .wp-block-navigation-item__content:hover { color: var(--wp--preset--color--accent-1); }

/* Loja e categorias: barra lateral */
.kr-loja-sidebar .wc-block-product-categories-list { list-style: none; padding-left: 0; margin: 0; font-size: 0.95rem; line-height: 1.9; }
.kr-loja-sidebar .wc-block-product-categories-list .wc-block-product-categories-list { padding-left: 0.9rem; border-left: 2px solid #BFD6DB; margin-left: 0.2rem; }
.kr-loja-sidebar .wc-block-product-categories-list a { color: var(--wp--preset--color--contrast); text-decoration: none; }
.kr-loja-sidebar .wc-block-product-categories-list a:hover { color: var(--wp--preset--color--accent-1); }
.kr-loja-sidebar .wc-block-product-categories-list-item-count { color: #5E656B; font-size: 0.8rem; }
.kr-busca-lateral .wp-block-search__input { border-radius: 8px; border: 1px solid #D5D5D2; padding: 0.55rem 0.7rem; }
.kr-busca-lateral .wp-block-search__button { background: var(--wp--preset--color--accent-1); color: #fff; border-radius: 8px; border: 0; }
@media (max-width: 781px) {
	.kr-loja-sidebar { order: 2; }
}

/* Botões de subcategorias */
.kr-subcats { display: flex; flex-wrap: wrap; gap: 0.5rem; margin: 0.5rem 0 1.5rem; }
.kr-subcat {
	display: inline-block;
	padding: 0.45rem 0.95rem;
	border: 1px solid #BFD6DB;
	border-radius: 999px;
	background: #E8F1F3;
	color: var(--wp--preset--color--contrast);
	font-size: 0.9rem;
	font-weight: 600;
	text-decoration: none;
}
.kr-subcat:hover { background: var(--wp--preset--color--accent-1); border-color: var(--wp--preset--color--accent-1); color: #fff; }

/* Menu lateral de categorias em barras */
.kr-cat-menu { font-size: 0.95rem; }
.kr-cat-menu ul { list-style: none; margin: 0; padding: 0; }
.kr-cat-menu li { margin: 0; }
.kr-cat-barra {
	display: flex;
	align-items: center;
	justify-content: space-between;
	gap: 0.5rem;
	width: 100%;
	padding: 0.6rem 0.8rem;
	margin-bottom: 4px;
	border-radius: 8px;
	background: #F4F4F2;
	color: var(--wp--preset--color--contrast) !important;
	font-weight: 600;
	line-height: 1.3;
	text-decoration: none !important;
	transition: background 0.15s ease, color 0.15s ease;
}
.kr-cat-barra:hover { background: #E8F1F3; color: var(--wp--preset--color--accent-1) !important; }
.kr-cat-barra.is-atual { background: var(--wp--preset--color--accent-1); color: #fff !important; }
.kr-cat-barra.is-atual .kr-cat-qtd { background: rgba(255, 255, 255, 0.25); color: #fff; }
.kr-cat-todos { background: #fff; border: 1px solid #E6E6E3; }
.kr-cat-qtd {
	flex: none;
	min-width: 1.8rem;
	padding: 0.1rem 0.45rem;
	border-radius: 999px;
	background: #fff;
	color: #5E656B;
	font-size: 0.75rem;
	font-weight: 600;
	text-align: center;
}
/* subníveis: barras mais leves e recuadas */
.kr-cat-nivel-2, .kr-cat-nivel-3, .kr-cat-nivel-4 { margin: 2px 0 6px 0.7rem; padding-left: 0.6rem; border-left: 2px solid #BFD6DB; }
.kr-cat-nivel-2 .kr-cat-barra, .kr-cat-nivel-3 .kr-cat-barra, .kr-cat-nivel-4 .kr-cat-barra {
	background: transparent;
	font-weight: 500;
	padding: 0.45rem 0.7rem;
	margin-bottom: 2px;
}
.kr-cat-nivel-2 .kr-cat-qtd, .kr-cat-nivel-3 .kr-cat-qtd, .kr-cat-nivel-4 .kr-cat-qtd { background: #F4F4F2; }
/* abrir/fechar subcategorias */
.kr-cat-menu details > summary { list-style: none; position: relative; cursor: pointer; }
.kr-cat-menu details > summary::-webkit-details-marker { display: none; }
.kr-cat-menu details > summary .kr-cat-barra { padding-right: 2.2rem; }
.kr-cat-seta {
	position: absolute;
	right: 0.35rem;
	top: 0;
	height: calc(100% - 4px);
	width: 1.6rem;
	display: flex;
	align-items: center;
	justify-content: center;
	z-index: 1;
	cursor: pointer;
}
.kr-cat-seta::before {
	content: "";
	width: 0.45rem;
	height: 0.45rem;
	border-right: 2px solid currentColor;
	border-bottom: 2px solid currentColor;
	transform: rotate(-45deg);
	transition: transform 0.15s ease;
	color: #8A9096;
}
.kr-cat-menu details[open] > summary .kr-cat-seta::before { transform: rotate(45deg); }
.kr-cat-menu details > summary .kr-cat-barra.is-atual ~ .kr-cat-seta::before { color: #fff; }

/* Avaliações do Google */
.kr-aval { padding: var(--wp--preset--spacing--60) 0; }
.kr-aval-topo { text-align: center; margin-bottom: 1.75rem; }
.kr-aval-titulo { font-size: clamp(1.6rem, 3vw, 2.2rem); margin: 0 0 0.4rem; }
.kr-aval-resumo { margin: 0; color: #475159; font-size: 1.05rem; }
.kr-aval-estrelas { color: #00A0E3; letter-spacing: 0.08em; }
.kr-aval-resumo .kr-aval-estrelas { font-size: 1.25rem; margin-right: 0.35rem; vertical-align: -1px; }
.kr-aval-grade { display: grid; grid-template-columns: repeat(auto-fill, minmax(260px, 1fr)); gap: 1rem; }
.kr-aval-card {
	display: flex;
	flex-direction: column;
	gap: 0.6rem;
	padding: 1.1rem 1.2rem;
	background: #fff;
	border: 1px solid #E6E6E3;
	border-radius: 14px;
	box-shadow: 0 4px 14px rgba(33, 33, 32, 0.05);
}
.kr-aval-card-topo { display: flex; justify-content: space-between; align-items: center; font-size: 0.85rem; }
.kr-aval-quando { color: #8A9096; }
.kr-aval-texto { margin: 0; color: #212120; line-height: 1.55; font-size: 0.95rem; flex: 1; }
.kr-aval-autor { display: flex; align-items: center; gap: 0.5rem; margin: 0; font-weight: 600; font-size: 0.9rem; }
.kr-aval-autor img { border-radius: 50%; }
.kr-aval-autor a { color: inherit; text-decoration: none; }
.kr-aval-acoes { display: flex; flex-wrap: wrap; justify-content: center; gap: 0.75rem; margin: 1.75rem 0 0.5rem; }
.kr-aval-btn {
	display: inline-block;
	padding: 0.75rem 1.4rem;
	border-radius: 10px;
	background: var(--wp--preset--color--accent-1);
	color: #fff !important;
	font-weight: 600;
	text-decoration: none !important;
}
.kr-aval-btn:hover { background: var(--wp--preset--color--contrast); }
.kr-aval-btn-sec { background: #fff; color: var(--wp--preset--color--contrast) !important; border: 1px solid #D5D5D2; }
.kr-aval-btn-sec:hover { background: #F4F4F2; }
.kr-aval-fonte { text-align: center; font-size: 0.75rem; color: #8A9096; margin: 0; }
.kr-aval-resumo strong { color: #212120; }
.kr-aval:not(:has(.kr-aval-grade)) .kr-aval-resumo { font-size: 1.25rem; }
.kr-aval:not(:has(.kr-aval-grade)) .kr-aval-resumo .kr-aval-estrelas { font-size: 1.6rem; }

/* ===== Cabeçalho: logo | busca grande | ações ===== */
.kr-header-linha { gap: 1.5rem; }
.kr-header-logo { flex: none; }
.kr-busca-topo { flex: 1 1 auto; max-width: 620px; margin: 0 !important; }
.kr-busca-topo .wp-block-search__inside-wrapper {
	border: 2px solid #E6E6E3 !important;
	border-radius: 999px !important;
	padding: 3px !important;
	background: #F4F4F2;
	transition: border-color 0.15s ease, background 0.15s ease;
}
.kr-busca-topo .wp-block-search__inside-wrapper:focus-within { border-color: var(--wp--preset--color--accent-1) !important; background: #fff; }
.kr-busca-topo .wp-block-search__input {
	border: 0 !important;
	background: transparent !important;
	padding: 0.55rem 1rem !important;
	font-size: 0.95rem;
	border-radius: 999px !important;
}
.kr-busca-topo .wp-block-search__input:focus { outline: none; }
.kr-busca-topo .wp-block-search__button {
	background: var(--wp--preset--color--accent-1) !important;
	color: #fff !important;
	border-radius: 999px !important;
	padding: 0.45rem 0.9rem !important;
	margin: 0 !important;
	border: 0 !important;
}
.kr-busca-topo .wp-block-search__button svg { fill: currentColor; }
.kr-header-acoes { flex: none; }
.kr-nav-contato .wp-block-navigation-item__content { font-weight: 600; }

/* ===== Barra de categorias ===== */
.kr-barra-cat {
	position: relative;
	background: #212120;
	color: #fff;
	font-size: 0.95rem;
}
.kr-barra-inner { max-width: 1240px; margin: 0 auto; padding: 0 var(--wp--preset--spacing--40); }
.kr-barra-lista { display: flex; align-items: stretch; list-style: none; margin: 0; padding: 0; }
.kr-barra-item { position: static; margin: 0; }
.kr-barra-link {
	position: relative;
	display: flex;
	align-items: center;
	gap: 0.45rem;
	height: 100%;
	padding: 0.85rem 1.1rem;
	color: #fff !important;
	font-weight: 600;
	text-decoration: none !important;
	white-space: nowrap;
	transition: background 0.15s ease;
}
.kr-barra-link::after {
	content: "";
	position: absolute;
	left: 1.1rem;
	right: 1.1rem;
	bottom: 0;
	height: 3px;
	border-radius: 3px 3px 0 0;
	background: var(--wp--preset--color--accent-1);
	transform: scaleX(0);
	transition: transform 0.18s ease;
}
.kr-barra-item:hover > .kr-barra-link,
.kr-barra-item:focus-within > .kr-barra-link,
.kr-barra-item.is-aberto > .kr-barra-link { background: #2E2E2C; }
.kr-barra-item:hover > .kr-barra-link::after,
.kr-barra-item:focus-within > .kr-barra-link::after,
.kr-barra-item.is-aberto > .kr-barra-link::after,
.kr-barra-item.is-atual > .kr-barra-link::after { transform: scaleX(1); }
.kr-barra-item + .kr-barra-item > .kr-barra-link { border-left: 1px solid rgba(255, 255, 255, 0.08); }
/* "Todas as categorias" em laranja */
.kr-barra-todas > .kr-barra-link { background: var(--wp--preset--color--accent-1); text-transform: uppercase; font-size: 0.82rem; letter-spacing: 0.06em; }
.kr-barra-todas > .kr-barra-link::after { display: none; }
.kr-barra-todas:hover > .kr-barra-link { background: #D24C1B !important; }
.kr-barra-hamb, .kr-barra-hamb::before, .kr-barra-hamb::after {
	display: inline-block;
	width: 16px;
	height: 2px;
	background: currentColor;
	border-radius: 2px;
	position: relative;
}
.kr-barra-hamb::before, .kr-barra-hamb::after { content: ""; position: absolute; left: 0; }
.kr-barra-hamb::before { top: -5px; }
.kr-barra-hamb::after { top: 5px; }
.kr-barra-seta {
	width: 0.42rem;
	height: 0.42rem;
	border-right: 2px solid currentColor;
	border-bottom: 2px solid currentColor;
	transform: rotate(45deg) translateY(-2px);
	opacity: 0.8;
}

/* Painel de subcategorias */
.kr-painel {
	position: absolute;
	left: 0;
	right: 0;
	top: 100%;
	z-index: 60;
	background: #fff;
	color: var(--wp--preset--color--contrast);
	border-top: 3px solid var(--wp--preset--color--accent-1);
	box-shadow: 0 18px 36px rgba(33, 33, 32, 0.16);
	opacity: 0;
	visibility: hidden;
	transform: translateY(6px);
	transition: opacity 0.16s ease, transform 0.16s ease, visibility 0.16s;
}
.kr-barra-item:hover > .kr-painel,
.kr-barra-item:focus-within > .kr-painel,
.kr-barra-item.is-aberto > .kr-painel { opacity: 1; visibility: visible; transform: none; }
.kr-painel-inner { max-width: 1240px; margin: 0 auto; padding: 1.5rem var(--wp--preset--spacing--40) 1.1rem; }
.kr-painel-grade { display: grid; grid-template-columns: repeat(auto-fill, minmax(200px, 1fr)); gap: 1.25rem 2rem; }
.kr-painel-titulo {
	display: flex;
	align-items: center;
	justify-content: space-between;
	gap: 0.5rem;
	padding-bottom: 0.45rem;
	margin-bottom: 0.4rem;
	border-bottom: 2px solid #BFD6DB;
	color: var(--wp--preset--color--contrast) !important;
	font-weight: 700;
	font-size: 0.85rem;
	text-transform: uppercase;
	letter-spacing: 0.05em;
	text-decoration: none !important;
}
.kr-painel-titulo:hover { color: var(--wp--preset--color--accent-1) !important; }
.kr-painel-qtd { background: #F4F4F2; color: #5E656B; border-radius: 999px; padding: 0.05rem 0.45rem; font-size: 0.72rem; font-weight: 600; }
.kr-painel-lista, .kr-painel-bisnetas { list-style: none; margin: 0; padding: 0; }
.kr-painel-lista > li > a {
	display: block;
	padding: 0.3rem 0;
	color: #475159 !important;
	font-weight: 500;
	text-decoration: none !important;
}
.kr-painel-lista a:hover { color: var(--wp--preset--color--accent-1) !important; }
.kr-painel-bisnetas { margin: 0 0 0.3rem 0.2rem; padding-left: 0.6rem; border-left: 2px solid #F4F4F2; }
.kr-painel-sub { display: block; padding: 0.15rem 0; font-size: 0.85rem; color: #6B7075 !important; text-decoration: none !important; }
.kr-painel-todos {
	display: inline-block;
	margin-top: 1.1rem;
	font-weight: 600;
	font-size: 0.9rem;
	color: var(--wp--preset--color--accent-1) !important;
	text-decoration: none !important;
}

/* ===== Celular ===== */
@media (max-width: 781px) {
	.kr-header-linha { flex-wrap: wrap !important; gap: 0.6rem 1rem; }
	.kr-busca-topo { order: 3; flex-basis: 100%; max-width: none; }
	.kr-nav-contato { display: none !important; }
	.kr-barra-inner { padding: 0; }
	.kr-barra-lista { overflow-x: auto; scrollbar-width: none; -webkit-overflow-scrolling: touch; }
	.kr-barra-lista::-webkit-scrollbar { display: none; }
	.kr-barra-link { padding: 0.75rem 0.95rem; font-size: 0.9rem; }
	.kr-barra-seta, .kr-painel { display: none !important; }
}
/* correção: links da barra não podem ser mais altos que a barra */
.kr-barra-item { display: flex; }
.kr-barra-link { height: auto; box-sizing: border-box; }

/* ===== Carrossel do Instagram ===== */
.kr-insta { padding: var(--wp--preset--spacing--60) 0 var(--wp--preset--spacing--30); }
.kr-insta-topo { display: flex; align-items: flex-end; justify-content: space-between; gap: 1rem; margin-bottom: 1.1rem; }
.kr-insta-sobre { margin: 0 0 0.2rem; font-size: 0.8rem; font-weight: 600; letter-spacing: 0.14em; text-transform: uppercase; color: var(--wp--preset--color--accent-1); }
.kr-insta-titulo { margin: 0; font-size: clamp(1.5rem, 3vw, 2.1rem); }
.kr-insta-perfil { display: inline-block; margin-top: 0.2rem; font-weight: 600; color: #475159 !important; text-decoration: none !important; }
.kr-insta-perfil:hover { color: var(--wp--preset--color--accent-1) !important; }
.kr-insta-setas { display: flex; gap: 0.5rem; flex: none; }
.kr-insta-seta {
	width: 42px;
	height: 42px;
	border-radius: 50%;
	border: 1px solid #E6E6E3;
	background: #fff;
	color: var(--wp--preset--color--accent-1);
	font-size: 1.6rem;
	line-height: 1;
	cursor: pointer;
	transition: background 0.15s ease, color 0.15s ease;
}
.kr-insta-seta:hover { background: var(--wp--preset--color--accent-1); color: #fff; border-color: var(--wp--preset--color--accent-1); }
/* transforma a grade do plugin em faixa deslizante */
.kr-insta #sbi_images {
	display: flex !important;
	gap: 12px !important;
	overflow-x: auto;
	scroll-snap-type: x mandatory;
	scroll-behavior: smooth;
	padding: 0 0 6px !important;
	scrollbar-width: none;
	grid-template-columns: none !important;
}
.kr-insta #sbi_images::-webkit-scrollbar { display: none; }
.kr-insta #sbi_images .sbi_item {
	flex: 0 0 calc((100% - 5 * 12px) / 6) !important;
	width: auto !important;
	max-width: none !important;
	padding: 0 !important;
	scroll-snap-align: start;
}
.kr-insta .sbi_photo_wrap, .kr-insta .sbi_photo { border-radius: 14px; overflow: hidden; }
.kr-insta .sbi_photo img { transition: transform 0.25s ease; }
.kr-insta .sbi_item:hover .sbi_photo img { transform: scale(1.04); }
.kr-insta #sb_instagram { padding: 0 !important; width: 100% !important; }
@media (max-width: 1000px) { .kr-insta #sbi_images .sbi_item { flex-basis: calc((100% - 3 * 12px) / 4) !important; } }
@media (max-width: 781px) {
	.kr-insta #sbi_images .sbi_item { flex-basis: 62% !important; }
	.kr-insta-setas { display: none; }
}
.kr-insta-acoes { text-align: center; margin: 1.4rem 0 0; }
.kr-insta-btn {
	display: inline-flex;
	align-items: center;
	gap: 0.5rem;
	padding: 0.75rem 1.4rem;
	border-radius: 10px;
	color: #fff !important;
	font-weight: 600;
	text-decoration: none !important;
	background: linear-gradient(90deg, #EC008B 0%, #0F414D 55%, #00A0E3 100%);
}
.kr-insta-btn:hover { filter: brightness(0.95); }
/* esconde cabeçalho e botões próprios do plugin (usamos os nossos) */
.kr-insta .sb_instagram_header,
.kr-insta #sbi_load,
.kr-insta .sbi_load_btn,
.kr-insta .sbi_follow_btn { display: none !important; }
.kr-insta #sb_instagram { padding-bottom: 0 !important; }

/* Aviso de cookies */
.kr-cookies {
	position: fixed;
	left: 16px;
	right: 16px;
	bottom: 16px;
	z-index: 100;
	max-width: 760px;
	margin: 0 auto;
	display: flex;
	align-items: center;
	gap: 1rem;
	padding: 0.9rem 1.1rem;
	background: #212120;
	color: #fff;
	border-radius: 14px;
	box-shadow: 0 12px 30px rgba(0, 0, 0, 0.25);
	font-size: 0.9rem;
	line-height: 1.45;
}
.kr-cookies[hidden] { display: none; }
.kr-cookies p { margin: 0; }
.kr-cookies a { color: #00A0E3; }
.kr-cookies-ok {
	flex: none;
	padding: 0.55rem 1.1rem;
	border: 0;
	border-radius: 8px;
	background: var(--wp--preset--color--accent-1);
	color: #fff;
	font-weight: 600;
	cursor: pointer;
}
@media (max-width: 600px) { .kr-cookies { flex-direction: column; align-items: stretch; text-align: left; } }
/* Páginas institucionais: largura de leitura confortável */
.page .entry-content h2, .wp-block-post-content h2 { margin-top: 2rem; font-size: 1.3rem; }

/* Aviso do modelo no campo do carimbo + contador */
.kr-modelo-info { display: flex; align-items: center; gap: 0.75rem; margin: 0 0 0.75rem; padding: 0.6rem 0.75rem; background: #fff; border: 1px dashed #BFD6DB; border-radius: 10px; font-size: 0.9rem; line-height: 1.45; }
.kr-modelo-area { flex: none; display: inline-block; border: 2px solid var(--wp--preset--color--accent-1); border-radius: 3px; background: #E8F1F3; }
.kr-contador { margin: 0.35rem 0 0; font-size: 0.85rem; font-weight: 600; }
.kr-contador.is-ok { color: #2E7D32; }
.kr-contador.is-alerta { color: #B45309; }

/* Guia de tamanhos de carimbos */
.kr-guia { overflow-x: auto; }
.kr-guia-tabela { width: 100%; border-collapse: collapse; font-size: 0.95rem; }
.kr-guia-tabela th { text-align: left; background: #212120; color: #fff; padding: 0.6rem 0.75rem; font-weight: 600; }
.kr-guia-tabela td { padding: 0.7rem 0.75rem; border-bottom: 1px solid #E6E6E3; vertical-align: middle; }
.kr-guia-tabela tr:nth-child(even) td { background: #F9F9F8; }
.kr-guia-area { border: 2px solid var(--wp--preset--color--accent-1); border-radius: 3px; background: #E8F1F3; }

/* Cards das três categorias principais na página inicial */
.kr-cat-principal { height: 100%; }
.kr-cat-principal .kr-cat-cta { margin-top: 1rem; font-weight: 600; color: var(--wp--preset--color--accent-1); }
.kr-cat-principal .kr-cat-cta a::after { display: none; }

/* Conta no cabeçalho: ícone + "Entrar / ou Cadastre-se" */
.wc-block-customer-account__link { display: flex; align-items: center; gap: .45rem; text-decoration: none; color: inherit; }
.kr-conta-texto { display: flex; flex-direction: column; line-height: 1.15; white-space: nowrap; }
.kr-conta-l1 { font-weight: 600; font-size: .9rem; }
.kr-conta-l2 { font-size: .75rem; color: var(--wp--preset--color--accent-4); }
.wc-block-customer-account__link:hover .kr-conta-l1 { color: var(--wp--preset--color--accent-1); }
@media (max-width: 781px) { .kr-conta-texto { display: none; } }

/* Aviso da busca de CEP */
.kr-cep-aviso { display: block; margin-top: .3rem; font-size: .8rem; color: var(--wp--preset--color--accent-4); }

/* "A partir de" antes do preço dos produtos com opções */
.kr-a-partir { font-size: .78em; font-weight: 400; color: var(--wp--preset--color--accent-4); margin-right: .15em; }

/* Vitrine "Destaques" na página inicial */
.kr-destaques { padding: var(--wp--preset--spacing--60) var(--wp--preset--spacing--40); background: var(--wp--preset--color--accent-6); }
.kr-destaques-inner { max-width: 1240px; margin: 0 auto; }
.kr-destaques-topo { display: flex; align-items: baseline; justify-content: space-between; gap: 1rem; margin-bottom: 1.5rem; }
.kr-destaques-topo h2 { margin: 0; font-size: clamp(1.6rem, 3vw, 2.2rem); }
.kr-destaques-todos { font-weight: 600; color: var(--wp--preset--color--accent-1); text-decoration: none; white-space: nowrap; }
.kr-destaques .woocommerce ul.products { display: grid; grid-template-columns: repeat(4, 1fr); gap: 1.25rem; margin: 0; }
.kr-destaques .woocommerce ul.products::before, .kr-destaques .woocommerce ul.products::after { display: none; }
.kr-destaques .woocommerce ul.products li.product { width: auto; margin: 0; float: none; background: #fff; border-radius: 14px; padding: .75rem .75rem 1rem; box-shadow: 0 2px 10px rgba(0,0,0,.05); display: flex; flex-direction: column; }
.kr-destaques .woocommerce ul.products li.product img { border-radius: 10px; margin-bottom: .6rem; }
.kr-destaques .woocommerce ul.products li.product .woocommerce-loop-product__title { font-size: .95rem; line-height: 1.3; }
.kr-destaques .woocommerce ul.products li.product .price { color: var(--wp--preset--color--contrast); font-weight: 700; }
.kr-destaques .woocommerce ul.products li.product .button { margin-top: auto; border-radius: 999px; background: var(--wp--preset--color--accent-1); color: #fff; text-align: center; }
@media (max-width: 1000px) { .kr-destaques .woocommerce ul.products { grid-template-columns: repeat(2, 1fr); } }
/* celular: vira carrossel deslizando para o lado */
@media (max-width: 600px) {
	.kr-destaques .woocommerce ul.products { display: flex; overflow-x: auto; scroll-snap-type: x mandatory; gap: .9rem; padding-bottom: .5rem; }
	.kr-destaques .woocommerce ul.products li.product { flex: 0 0 72%; scroll-snap-align: start; }
}

/* Resumo curto ao lado da foto + link para a descrição completa */
.kr-resumo .wp-block-post-excerpt__excerpt { color: var(--wp--preset--color--accent-4); }
.kr-ver-mais { font-weight: 600; color: var(--wp--preset--color--accent-1); text-decoration: none; white-space: nowrap; }
.kr-ver-mais:hover { text-decoration: underline; }
.kr-descricao-completa { max-width: 820px; line-height: 1.7; }

/* Escolha da arte (produtos de Gráfica) */
.kr-arte { border: 1px solid #E6E6E3; border-radius: 14px; padding: 1rem 1.1rem; margin: 0 0 1.2rem; background: #fff; }
.kr-arte legend { padding: 0 .4rem; }
.kr-arte-opcao { display: flex; align-items: center; gap: .6rem; padding: .55rem .7rem; border: 1px solid #E6E6E3; border-radius: 10px; margin-bottom: .45rem; cursor: pointer; }
.kr-arte-opcao:has(input:checked) { border-color: var(--wp--preset--color--accent-1); background: var(--wp--preset--color--accent-5); }
.kr-arte-opcao span { flex: 1; font-weight: 600; }
.kr-arte-opcao em { font-style: normal; font-size: .85rem; color: var(--wp--preset--color--accent-4); white-space: nowrap; }
.kr-arte-arquivo, .kr-arte-obs { margin-top: .8rem; display: flex; flex-direction: column; gap: .3rem; }
.kr-arte-arquivo small { color: var(--wp--preset--color--accent-4); font-size: .8rem; }
.kr-arte textarea { width: 100%; border: 1px solid #D9D9D6; border-radius: 10px; padding: .6rem .7rem; font: inherit; }
.kr-arte .kr-ajuda { margin: .8rem 0 0; font-size: .85rem; color: var(--wp--preset--color--accent-4); }

/* ---------- Assistente de arte (cartões de visita) ---------- */
.kr-assist { margin: 0.8rem 0 0.4rem; padding: 0.9rem; border: 1px solid #BFD6DB; border-radius: 12px; background: #F7FAFB; }
.kr-assist-previa { display: grid; grid-template-columns: 1fr 1fr; gap: 0.7rem; }
.kr-assist-lado > span { display: block; font-size: 0.75rem; color: #5E656B; margin-bottom: 0.2rem; }
.kr-assist-svg svg { display: block; width: 100%; height: auto; border-radius: 4px; box-shadow: 0 3px 12px rgba(0, 0, 0, 0.16); background: #fff; }
.kr-assist-aviso-4x0 { grid-column: 1 / -1; margin: 0; font-size: 0.8rem; color: #8A5A00; }
.kr-assist-titulo { margin: 0.9rem 0 0.35rem; font-size: 0.85rem; font-weight: 600; }
.kr-assist-modelos { display: flex; flex-wrap: wrap; gap: 0.35rem; }
.kr-assist-modelos button { display: inline-flex; align-items: center; gap: 0.25rem; padding: 0.3rem 0.6rem; border: 1px solid #D5D5D2; border-radius: 999px; background: #fff; font-size: 0.78rem; cursor: pointer; }
.kr-assist-modelos button i { width: 0.7rem; height: 0.7rem; border-radius: 50%; display: inline-block; }
.kr-assist-modelos button.ativo { border-color: #0F414D; box-shadow: 0 0 0 2px #DCEBEE; font-weight: 600; }
.kr-assist-chat { margin-top: 0.8rem; border: 1px solid #E6E6E3; border-radius: 10px; background: #fff; }
.kr-assist-msgs { max-height: 240px; overflow-y: auto; padding: 0.6rem; display: flex; flex-direction: column; gap: 0.4rem; }
.kr-assist-msg { margin: 0; padding: 0.45rem 0.7rem; border-radius: 12px; font-size: 0.86rem; line-height: 1.4; max-width: 88%; white-space: pre-wrap; }
.kr-assist-msg.de-kr { background: #F4F4F2; align-self: flex-start; }
.kr-assist-msg.de-cliente { background: #DCEBEE; align-self: flex-end; }
.kr-assist-msg.digitando { color: #8A9096; font-style: italic; }
.kr-assist-envio { display: flex; gap: 0.4rem; padding: 0.5rem; border-top: 1px solid #E6E6E3; }
.kr-assist-envio textarea { flex: 1; resize: vertical; min-height: 2.6rem; border: 1px solid #D5D5D2; border-radius: 8px; padding: 0.45rem 0.6rem; font: inherit; font-size: 0.88rem; }
.kr-assist-enviar { padding: 0 1rem; border: 0; border-radius: 8px; background: #0F414D; color: #fff; font-weight: 600; cursor: pointer; }
.kr-assist-enviar:disabled, .kr-assist-envio textarea:disabled { opacity: 0.5; cursor: not-allowed; }
.kr-assist-contador { margin: 0; padding: 0 0.6rem 0.5rem; font-size: 0.74rem; color: #5E656B; }
.kr-assist-ferramentas { display: flex; flex-wrap: wrap; gap: 0.4rem; margin-top: 0.7rem; }
.kr-assist-ferramentas > label, .kr-assist-ferramentas > button { padding: 0.35rem 0.75rem; border: 1px solid #D5D5D2; border-radius: 8px; background: #fff; font-size: 0.8rem; cursor: pointer; }
.kr-assist-editar { margin-top: 0.6rem; font-size: 0.85rem; }
.kr-assist-editar summary { cursor: pointer; font-weight: 600; }
.kr-assist-campos { display: grid; grid-template-columns: 1fr 1fr; gap: 0.45rem 0.7rem; margin-top: 0.5rem; }
.kr-assist-campos label { display: flex; flex-direction: column; font-size: 0.75rem; color: #5E656B; }
.kr-assist-campos input { margin-top: 0.15rem; padding: 0.35rem 0.5rem; border: 1px solid #D5D5D2; border-radius: 6px; font-size: 0.85rem; color: #23272B; }
.kr-assist-aprovar { display: flex; gap: 0.5rem; align-items: flex-start; margin-top: 0.8rem; padding: 0.6rem 0.7rem; border-radius: 8px; background: #E8F1F3; font-size: 0.86rem; cursor: pointer; }
.kr-assist-aprovar input { margin-top: 0.2rem; }
@media (max-width: 600px) {
	.kr-assist { padding: 0.7rem; }
	.kr-assist-previa, .kr-assist-campos { grid-template-columns: 1fr; }
}
.kr-arte-vetor { display: flex; gap: 0.5rem; align-items: flex-start; margin: 0.7rem 0 0.2rem; font-size: 0.88rem; cursor: pointer; }
.kr-arte-vetor input { margin-top: 0.25rem; }
.kr-arte-vetor em { margin-left: auto; font-style: normal; font-weight: 600; color: #0F414D; white-space: nowrap; }
.kr-arte-vetor-incluso { margin: 0.7rem 0 0.2rem; font-size: 0.85rem; color: #2E7D32; }
.kr-arte-vetor[hidden], .kr-arte-vetor-incluso[hidden] { display: none; }
.kr-assist-receituario .kr-assist-previa { grid-template-columns: 1fr; max-width: 340px; margin: 0 auto; }
.kr-assist-envelope .kr-assist-previa, .kr-assist-pasta .kr-assist-previa { grid-template-columns: 1fr; }
.kr-assist-envelope .kr-assist-previa { max-width: 440px; margin: 0 auto; }
.kr-assist-pasta .kr-assist-aviso-4x0 { color: #5E656B; }
.kr-assist-previa { -webkit-user-select: none; user-select: none; }
.kr-assist-img { display: block; width: 100%; height: auto; border-radius: 4px; box-shadow: 0 3px 12px rgba(0, 0, 0, 0.16); background: #fff; -webkit-touch-callout: none; }
.kr-assist-carregando { margin: 0; padding: 2.5rem 0.5rem; text-align: center; font-size: 0.8rem; color: #8A9096; background: #F4F4F2; border-radius: 4px; }

/* Pix Inter (página do pedido) */
.kr-pix { border: 2px solid #32BCAD; border-radius: 12px; padding: 1.2rem 1.4rem; margin: 1.5rem 0; background: #F4FBFA; }
.kr-pix h2 { margin: 0 0 0.8rem; font-size: 1.3rem; }
.kr-pix-grade { display: flex; gap: 1.5rem; align-items: flex-start; flex-wrap: wrap; }
.kr-pix-qr { width: 220px; max-width: 100%; aspect-ratio: 1; background: #fff; border-radius: 8px; padding: 6px; transition: opacity .3s; }
.kr-pix-qr svg { width: 100%; height: 100%; display: block; }
.kr-pix-info { flex: 1 1 260px; min-width: 0; }
.kr-pix-info ol { padding-left: 1.2rem; margin: 0.4rem 0 0.8rem; font-size: 0.92rem; }
.kr-pix-info label { font-weight: 600; font-size: 0.9rem; }
.kr-pix-info textarea { width: 100%; font: 0.78rem/1.3 monospace; word-break: break-all; resize: none; margin: 0.3rem 0 0.5rem; }
.kr-pix-copiar, .kr-pix-novo { background: #0F414D; color: #fff; border: 0; border-radius: 6px; padding: 0.6rem 1.1rem; font-weight: 600; cursor: pointer; }
.kr-pix-status { font-size: 0.9rem; color: #555; }
.kr-pix-valor { font-size: 1.05rem; margin: 0; }
@media (max-width: 600px) { .kr-pix-qr { margin: 0 auto; } }

/* Página inicial: vitrine por categoria */
.kr-vitrine .kr-vitrine-cat + .kr-vitrine-cat { margin-top: 2.6rem; padding-top: 2.2rem; border-top: 1px solid rgba(0,0,0,.08); }
.kr-vitrine .kr-destaques-topo { align-items: flex-end; }
.kr-vitrine .kr-destaques-topo h2 { font-size: clamp(1.35rem, 2.4vw, 1.8rem); }
.kr-vitrine-frase { margin: .25rem 0 0; color: var(--wp--preset--color--accent-4); font-size: .95rem; }

/* Formas de pagamento (produto e rodapé) */
.kr-pag-produto { margin: .35rem 0 .9rem; font-size: .92rem; line-height: 1.6; color: var(--wp--preset--color--contrast); }
.kr-pag-produto strong { color: #1E7B3A; }
.kr-pag-selos { display: inline-flex; flex-wrap: wrap; gap: .4rem; }
.kr-pag-selo { display: inline-block; padding: .2rem .55rem; border-radius: 6px; font-size: .75rem; font-weight: 700; letter-spacing: .02em; background: #fff; border: 1px solid #DDDDD8; color: #333; }
.kr-pag-pix { color: #32BCAD; border-color: #32BCAD; }
.kr-pag-visa { color: #1A1F71; }
.kr-pag-master { color: #EB001B; }
.kr-pag-elo { color: #000; }
.kr-pag-hiper { color: #B3131B; }
.kr-pag-amex { color: #006FCF; }
.kr-pag-faixa { display: flex; flex-wrap: wrap; align-items: center; gap: .6rem 1rem; margin-top: var(--wp--preset--spacing--40); }
.kr-pag-faixa-rotulo { font-weight: 600; font-size: .9rem; }
.kr-pag-rodape { display: flex; flex-wrap: wrap; align-items: center; gap: .5rem .9rem; }
.kr-pag-titulo { margin: 0; font-size: .88rem; color: var(--wp--preset--color--accent-4); }

/* menu lateral: número não fica embaixo da seta; produtos e opções da Gráfica */
.kr-cat-menu details > summary .kr-cat-qtd { margin-right: 1.5rem; }
.kr-cat-produtos .kr-cat-barra { font-size: .9rem; }
.kr-cat-opcao { font-size: .85rem; font-weight: 400 !important; color: #5E656B !important; padding: .3rem .7rem !important; }
.kr-cat-opcao:hover { color: var(--wp--preset--color--accent-1) !important; }

/* Checkout: escolha da entrega em largura total, com opções em caixas */
.woocommerce-checkout-review-order-table tr.woocommerce-shipping-totals,
.woocommerce-checkout-review-order-table tr.kr-entrega-dica { display: block; }
.woocommerce-checkout-review-order-table tr.woocommerce-shipping-totals > th,
.woocommerce-checkout-review-order-table tr.woocommerce-shipping-totals > td,
.woocommerce-checkout-review-order-table tr.kr-entrega-dica > td { display: block; width: 100%; text-align: left !important; padding-left: 0; padding-right: 0; }
.woocommerce-checkout-review-order-table tr.woocommerce-shipping-totals > th { font-size: 1.05rem; padding-bottom: .4rem; border: 0; }
.kr-entrega-dica td { background: #E8F1F3; border-radius: 10px; padding: .7rem .9rem !important; font-size: .9rem; }
#shipping_method { margin: 0; padding: 0; list-style: none; }
#shipping_method li { display: flex; align-items: flex-start; gap: .55rem; margin: 0 0 .45rem; padding: .65rem .8rem; border: 1px solid #E2E2DE; border-radius: 10px; background: #fff; text-align: left; line-height: 1.35; }
#shipping_method li input { margin: .2rem 0 0; flex: none; width: 18px; height: 18px; accent-color: var(--wp--preset--color--accent-1); }
#shipping_method li label { flex: 1; cursor: pointer; margin: 0; }
#shipping_method li:has(input:checked) { border-color: var(--wp--preset--color--accent-1); background: #EEF5F6; box-shadow: 0 0 0 1px var(--wp--preset--color--accent-1); }
#shipping_method li .woocommerce-Price-amount { font-weight: 700; white-space: nowrap; }
.woocommerce-checkout-review-order-table tr.woocommerce-shipping-totals,
.woocommerce-checkout-review-order-table tr.kr-entrega-dica { width: 100%; }
.woocommerce-checkout-review-order-table tr.woocommerce-shipping-totals > td { padding-top: 0 !important; }
/* simulação de frete na página do produto (Melhor Envio): deixa claro que a escolha é no checkout */
.containerCalculator::after { content: "Você escolhe a forma de entrega ao finalizar a compra."; display: block; margin-top: .6rem; padding: .5rem .7rem; border-radius: 8px; background: #E8F1F3; font-size: .85rem; font-weight: 600; color: #8A3B12; }
/* resumo do pedido como blocos (a tabela prendia a linha de entrega na largura da coluna) */
table.woocommerce-checkout-review-order-table,
table.woocommerce-checkout-review-order-table > thead,
table.woocommerce-checkout-review-order-table > tbody,
table.woocommerce-checkout-review-order-table > tfoot { display: block; width: 100%; }
table.woocommerce-checkout-review-order-table tr { display: flex; justify-content: space-between; align-items: baseline; gap: 1rem; width: 100%; }
table.woocommerce-checkout-review-order-table tr > th,
table.woocommerce-checkout-review-order-table tr > td { flex: 1 1 auto; }
table.woocommerce-checkout-review-order-table tr > td:last-child { text-align: right; }
table.woocommerce-checkout-review-order-table tr.woocommerce-shipping-totals,
table.woocommerce-checkout-review-order-table tr.kr-entrega-dica { display: block; }
table.woocommerce-checkout-review-order-table tr.woocommerce-shipping-totals > td,
table.woocommerce-checkout-review-order-table tr.kr-entrega-dica > td { text-align: left; }
.kr-carrinho-entrega { margin: 0 0 1rem; padding: .75rem .9rem; border-radius: 10px; background: #E8F1F3; font-size: .9rem; line-height: 1.45; }

/* Selos de confiança */
.kr-selos { display: grid; grid-template-columns: repeat(auto-fit, minmax(200px, 1fr)); gap: .6rem; margin: var(--wp--preset--spacing--40) 0 0; }
.kr-selo { display: flex; align-items: center; gap: .6rem; padding: .65rem .8rem; border-radius: 10px; background: #fff; border: 1px solid #E6E6E3; color: inherit !important; text-decoration: none !important; }
a.kr-selo:hover { border-color: var(--wp--preset--color--accent-1); }
.kr-selo-icone { font-size: 1.4rem; line-height: 1; }
.kr-selo-texto { display: flex; flex-direction: column; line-height: 1.25; font-size: .88rem; }
.kr-selo-texto small { color: #6B7178; font-size: .76rem; }
.kr-selos-compacto { grid-template-columns: repeat(2, minmax(0, 1fr)); gap: .4rem; margin: .9rem 0 0; }
.kr-selos-compacto .kr-selo { padding: .45rem .6rem; background: #F7F7F5; border-color: transparent; }
.kr-selos-compacto .kr-selo-icone { font-size: 1.05rem; }
.kr-selos-compacto .kr-selo-texto { font-size: .8rem; }

/* Aviso de cookies (Analytics) */
.kr-cookies{position:fixed;left:16px;right:16px;bottom:16px;z-index:9999;max-width:560px;margin:0 auto;background:#1f1f1f;color:#fff;border-radius:12px;padding:14px 16px;box-shadow:0 8px 24px rgba(0,0,0,.25);display:flex;gap:12px;align-items:center;flex-wrap:wrap;font-size:14px;line-height:1.4}
.kr-cookies[hidden]{display:none}
.kr-cookies p{margin:0;flex:1 1 260px}
.kr-cookies a{color:#7FB3BF}
.kr-cookies-botoes{display:flex;gap:8px}
.kr-cookies button{border:0;border-radius:8px;padding:8px 14px;font:inherit;cursor:pointer}
.kr-cookies-recusar{background:transparent;color:#ddd;text-decoration:underline}
.kr-cookies-ok{background:#e85d24;color:#fff;font-weight:600}

/* Botão flutuante do WhatsApp */
.kr-wa-flutuante{position:fixed;right:16px;bottom:16px;z-index:9998;display:flex;align-items:center;gap:8px;background:#25d366;color:#fff;text-decoration:none;font-weight:600;font-size:15px;padding:10px 16px 10px 12px;border-radius:999px;box-shadow:0 6px 18px rgba(0,0,0,.22)}
.kr-wa-flutuante:hover{background:#1ebe5b;color:#fff}
@media (max-width:600px){.kr-wa-flutuante span{display:none}.kr-wa-flutuante{padding:12px}}
body:has(.kr-cookies:not([hidden])) .kr-wa-flutuante{bottom:96px}
@media (max-width:600px){body:has(.kr-cookies:not([hidden])) .kr-wa-flutuante{bottom:150px}}
@media (max-width:600px){.kr-cookies p{flex:0 0 auto}.kr-cookies-botoes{justify-content:flex-end}}

/* Nome do produto nas grades (loja, categorias, vitrine): menor e no máximo 3 linhas */
.woocommerce ul.products li.product .woocommerce-loop-product__title,
.wp-block-woocommerce-product-collection .wp-block-post-title,
.wc-block-grid__product-title {
	font-size: 1.05rem !important;
	line-height: 1.3 !important;
	font-weight: 600;
	display: -webkit-box;
	-webkit-line-clamp: 3;
	-webkit-box-orient: vertical;
	overflow: hidden;
	min-height: calc(1.05rem * 1.3 * 3);
	margin-bottom: .4rem;
}
@media (max-width: 600px) {
	.woocommerce ul.products li.product .woocommerce-loop-product__title,
	.wp-block-woocommerce-product-collection .wp-block-post-title,
	.wc-block-grid__product-title { font-size: .95rem !important; min-height: calc(.95rem * 1.3 * 3); }
}

/* Anexo do logo/desenho nos carimbos personalizados */
.kr-logo-upload { margin: .2rem 0 1rem; padding: .8rem; border: 1px dashed #E7B9A1; border-radius: 10px; background: #F1F7F8; }
.kr-logo-upload input[type=file] { max-width: 100%; }
.kr-logo-upload .kr-check { margin-top: .3rem; font-size: .9rem; }
.kr-logo-opcoes { border: 0; padding: 0; margin: 0 0 .6rem; display: flex; flex-direction: column; gap: .35rem; }
.kr-logo-obs { margin-top: .6rem; display: flex; flex-direction: column; gap: .3rem; }
.kr-logo-pb { margin: .2rem 0 0; font-size: .85rem; }

/* Carrossel de destaques no hero da página inicial */
.kr-banners { position: relative; background: #fff; border-radius: 24px; overflow: hidden; box-shadow: 0 18px 40px rgba(0, 0, 0, .28); color: #212120; }
.kr-banners-trilho { display: flex; overflow-x: auto; scroll-snap-type: x mandatory; scrollbar-width: none; }
.kr-banners-trilho::-webkit-scrollbar { display: none; }
.kr-banner { flex: 0 0 100%; scroll-snap-align: start; display: flex; flex-direction: column; color: inherit; text-decoration: none; }
.kr-banner img { display: block; width: 100%; height: auto; aspect-ratio: 16 / 10; object-fit: cover; }
.kr-banner-corpo { display: flex; flex-direction: column; gap: .3rem; padding: 1rem 1.25rem 2.4rem; }
.kr-banner-selo { align-self: flex-start; background: #E8F1F3; color: #0F414D; font-size: .75rem; font-weight: 700; letter-spacing: .06em; text-transform: uppercase; padding: .2rem .6rem; border-radius: 999px; }
.kr-banner-titulo { font-size: 1.35rem; line-height: 1.2; }
.kr-banner-texto { color: #5E656B; font-size: .95rem; }
.kr-banner-botao { align-self: flex-start; margin-top: .4rem; background: #0F414D; color: #fff; font-weight: 600; font-size: .95rem; padding: .5rem 1.1rem; border-radius: 8px; }
.kr-banner:hover .kr-banner-botao, .kr-banner:focus-visible .kr-banner-botao { background: #0A2E37; }
.kr-banners-seta { position: absolute; top: 0; margin-top: calc(31.25% - 1.2rem); width: 2.4rem; height: 2.4rem; border: 0; border-radius: 50%; background: rgba(255, 255, 255, .92); color: #212120; font-size: 1.6rem; line-height: 1; cursor: pointer; box-shadow: 0 2px 8px rgba(0, 0, 0, .2); }
.kr-banners-seta.is-ant { left: .6rem; }
.kr-banners-seta.is-prox { right: .6rem; }
.kr-banners-pontos { position: absolute; left: 0; right: 0; bottom: .8rem; display: flex; justify-content: center; gap: .45rem; }
.kr-banners-pontos button { width: .6rem; height: .6rem; padding: 0; border: 0; border-radius: 999px; background: #d6d2cc; cursor: pointer; transition: width .2s; }
.kr-banners-pontos button[aria-current] { width: 1.5rem; background: #0F414D; }

/* Promoção dos temáticos */
.kr-promo-topo { background: linear-gradient(135deg, #E8F1F3, #D3E5E9); border-radius: 16px; padding: 1.4rem 1.6rem; margin: 0 0 1.5rem; }
.kr-promo-topo h2 { margin: .4rem 0 .5rem; font-size: clamp(1.5rem, 3vw, 2.1rem); line-height: 1.15; }
.kr-promo-topo h2 strong { color: #0F414D; }
.kr-promo-topo p { margin: 0 0 .6rem; }
.kr-promo-topo ul { margin: 0; padding-left: 1.2rem; }
.kr-promo-tag { display: inline-block; background: #0F414D; color: #fff; font-size: .75rem; font-weight: 700; letter-spacing: .06em; text-transform: uppercase; padding: .25rem .7rem; border-radius: 999px; }
.kr-promo-selo { background: #0F414D !important; color: #fff !important; font-weight: 700; }
.kr-promo-aviso { background: #E8F1F3; border-left: 4px solid #0F414D; padding: .6rem .9rem; border-radius: 8px; font-size: .95rem; }
.kr-promo-topo .kr-promo-extra { font-size: 1.1rem; font-weight: 600; color: #212120; }
.kr-assist-modelos .kr-assist-modelo-pdf { display: inline-flex; align-items: center; gap: .4rem; }
.kr-assist-modelos .kr-assist-modelo-pdf img { height: 40px; width: auto; border: 1px solid #ddd; border-radius: 3px; background: #fff; }
.kr-assist-ferramentas > .kr-assist-logo-btn { border: 1.5px dashed #0F414D; color: #0A2E37; font-weight: 600; background: #F1F7F8; }
.kr-assist-logo-btn small { font-weight: 400; color: #5E656B; }
