/* Stolzl is registered in Elementor Custom Fonts and kept here as a global
   fallback so editorial paragraphs render consistently outside the builder. */
@font-face {
	font-family: "Stolzl";
	src: url("/wp-content/uploads/2026/10/The-Northern-Block-Ltd-Stolzl-Thin.woff2") format("woff2");
	font-style: normal;
	font-weight: 100;
	font-display: swap;
}

@font-face {
	font-family: "Stolzl";
	src: url("/wp-content/uploads/2026/10/The-Northern-Block-Ltd-Stolzl-Light.woff2") format("woff2");
	font-style: normal;
	font-weight: 300;
	font-display: swap;
}

@font-face {
	font-family: "Stolzl";
	src: url("/wp-content/uploads/2026/10/The-Northern-Block-Ltd-Stolzl-Book.woff2") format("woff2");
	font-style: normal;
	font-weight: 350;
	font-display: swap;
}

@font-face {
	font-family: "Stolzl";
	src: url("/wp-content/uploads/2026/10/The-Northern-Block-Ltd-Stolzl-Regular.woff2") format("woff2");
	font-style: normal;
	font-weight: 400;
	font-display: swap;
}

@font-face {
	font-family: "Stolzl";
	src: url("/wp-content/uploads/2026/10/The-Northern-Block-Ltd-Stolzl-Medium.woff2") format("woff2");
	font-style: normal;
	font-weight: 500;
	font-display: swap;
}

@font-face {
	font-family: "Stolzl";
	src: url("/wp-content/uploads/2026/10/The-Northern-Block-Ltd-Stolzl-Bold.woff2") format("woff2");
	font-style: normal;
	font-weight: 700;
	font-display: swap;
}

:root {
	--amplio-navy: #1a2e4a;
	--amplio-navy-deep: #112238;
	--amplio-gold: #b89968;
	--amplio-ivory: #f7f5f0;
	--amplio-white: #fff;
	--amplio-ink: #243142;
	--amplio-muted: #66717d;
	--amplio-line: rgba(26, 46, 74, .16);
	--amplio-display: var(--amplio-sans);
	--amplio-sans: "Stolzl", Arial, sans-serif;
	--amplio-paragraph: "Stolzl", Arial, sans-serif;
	--amplio-sans-weight: 300;
}

html { scroll-behavior: smooth; }
/* O Lenis assume sozinho a interpolacao. Mantemos o smooth nativo apenas
   como fallback para navegadores/dispositivos nos quais ele nao inicializa. */
html.lenis { scroll-behavior: auto; }
body.amplio-institucional { margin: 0; color: var(--amplio-ink); background: var(--amplio-white); font-family: var(--amplio-sans); font-weight: var(--amplio-sans-weight); font-synthesis: none; }
body.amplio-institucional, body.amplio-institucional * { box-sizing: border-box; }
body.amplio-institucional a { color: inherit; }
body.amplio-institucional :focus-visible { outline: 2px solid var(--amplio-gold); outline-offset: 4px; }
/* O clip contem o overflow horizontal das secoes, mas NAO pode valer para o
   popup: .elementor-location-popup tambem tem a classe .elementor, e cortado
   assim ele impedia o .dialog-message (que ja tem overflow:auto) de rolar --
   em telas baixas o botao de enviar ficava inalcancavel. */
body.amplio-institucional .elementor:not(.elementor-location-popup) { overflow: clip; }
body.amplio-institucional .elementor-popup-modal .dialog-message { overscroll-behavior: contain; }
body.amplio-institucional .elementor-widget-text-editor p:last-child { margin-bottom: 0; }
/* Only editorial paragraphs use Stolzl. Navigation, buttons, labels and
   headings retain their existing Elementor typography. */
body.amplio-institucional p,
body.amplio-institucional p *,
body.amplio-institucional .elementor-widget-text-editor .elementor-widget-container,
body.amplio-institucional .elementor-widget-text-editor .elementor-widget-container p,
body.amplio-institucional .elementor-widget-text-editor .elementor-widget-container p *,
body.amplio-institucional .elementor-widget-theme-post-excerpt,
body.amplio-institucional .elementor-widget-theme-post-excerpt * {
	font-family: var(--amplio-paragraph) !important;
	font-weight: var(--amplio-sans-weight) !important;
}
body.amplio-institucional :where(
	li,
	dt,
	dd,
	address,
	figcaption,
	blockquote,
	label,
	input,
	textarea,
	select,
	option,
	.elementor-icon-list-text,
	.elementor-widget-text-editor,
	.elementor-widget-text-editor *,
	.elementor-widget-theme-post-excerpt,
	.elementor-widget-theme-post-excerpt *,
	.amplio-ficha__value,
	.amplio-grade__vazio,
	.amplio-catalog-filter__empty
) {
	font-weight: var(--amplio-sans-weight) !important;
	font-synthesis: none;
}
body.amplio-institucional .elementor-widget-heading .elementor-heading-title { letter-spacing: 0; }
/* O Elementor ainda pode gravar Playfair diretamente no CSS de cada documento.
   Títulos devem sempre usar a família institucional Stolzl, acima dessas regras. */
body.amplio-institucional :where(h1, h2, h3, h4, h5, h6),
body.amplio-institucional .elementor-widget-heading .elementor-heading-title,
body.amplio-institucional .amplio-produto-card__title,
body.amplio-institucional .amplio-colecao-tile__nome {
	font-family: var(--amplio-sans) !important;
	font-weight: 300 !important;
	text-transform: uppercase !important;
}
body.amplio-institucional :where(
	.elementor-widget-text-editor,
	.elementor-widget-button .elementor-button,
	.elementor-widget-nav-menu .elementor-item,
	.elementor-widget-form .elementor-field,
	.elementor-widget-form .elementor-field-label,
	.elementor-widget-form .elementor-button,
	.elementor-widget-theme-post-excerpt,
	.amplio-wordmark .elementor-heading-title,
	.amplio-kicker .elementor-heading-title,
	.amplio-language-switcher
) {
	font-family: var(--amplio-sans) !important;
	font-weight: var(--amplio-sans-weight) !important;
}

/* Cadastro de produtos no painel do WordPress. */
.post-type-amplio_produto #wpcontent { background: #f2f3f5; }
.post-type-amplio_produto .wrap { max-width: 1560px; margin: 22px 28px 0 20px; }
.post-type-amplio_produto .wrap > h1.wp-heading-inline,
.post-type-amplio_produto .wrap > .page-title-action,
.post-type-amplio_produto #elementor-switch-mode { display: none !important; }
.post-type-amplio_produto #poststuff { padding-top: 0; }
.post-type-amplio_produto #post-body.columns-2 { margin-right: 362px; }
.post-type-amplio_produto #postbox-container-1 { width: 338px; margin-right: -362px; }

.amplio-product-admin-hero {
	display: flex;
	align-items: center;
	justify-content: space-between;
	gap: 32px;
	box-sizing: border-box;
	min-height: 174px;
	margin-bottom: 24px;
	padding: 32px 38px;
	color: #fff;
	background: linear-gradient(120deg, rgba(255, 255, 255, .035), transparent 55%), var(--amplio-navy);
	border-left: 5px solid var(--amplio-gold);
	box-shadow: 0 12px 30px rgba(20, 41, 66, .12);
}
.amplio-product-admin-hero__eyebrow {
	display: block;
	margin-bottom: 8px;
	color: #d8bd91;
	font-size: 11px;
	font-weight: 700;
	letter-spacing: .18em;
	text-transform: uppercase;
}
.amplio-product-admin-hero h2 {
	margin: 0;
	color: #fff;
	font-family: var(--amplio-display);
	font-size: 32px;
	font-weight: 500;
	line-height: 1.15;
}
.amplio-product-admin-hero p { margin: 10px 0 0; color: rgba(255, 255, 255, .74); font-size: 14px; }
.amplio-admin-steps { display: flex; gap: 6px; margin: 0; padding: 0; list-style: none; }
.amplio-admin-steps li {
	display: flex;
	align-items: center;
	gap: 8px;
	margin: 0;
	padding: 9px 12px;
	color: rgba(255, 255, 255, .8);
	font-size: 12px;
	white-space: nowrap;
	border: 1px solid rgba(255, 255, 255, .16);
}
.amplio-admin-steps span {
	display: grid;
	place-items: center;
	width: 22px;
	height: 22px;
	color: var(--amplio-navy);
	font-weight: 700;
	background: #d8bd91;
	border-radius: 50%;
}
.amplio-product-title-label { margin: 0 0 8px; }
.amplio-product-title-label label { display: block; color: var(--amplio-ink); font-size: 15px; font-weight: 700; }
.amplio-product-title-label label span { color: #b32d2e; }
.amplio-product-title-label p { margin: 4px 0 0; color: var(--amplio-muted); }

.post-type-amplio_produto #titlediv { margin-bottom: 22px; }
.post-type-amplio_produto #titlediv #title {
	box-sizing: border-box;
	height: 54px;
	padding: 0 16px;
	color: var(--amplio-ink);
	font-size: 22px;
	font-weight: 500;
	background: #fff;
	border: 1px solid #dce1e7;
	border-radius: 2px;
	box-shadow: 0 3px 12px rgba(28, 48, 73, .045);
}
.post-type-amplio_produto #titlediv #title:focus { border-color: var(--amplio-gold); box-shadow: 0 0 0 1px var(--amplio-gold); }
.post-type-amplio_produto #edit-slug-box { padding: 7px 2px 0; }

.post-type-amplio_produto .postbox {
	margin-bottom: 18px;
	background: #fff;
	border: 1px solid #dce1e7;
	border-radius: 2px;
	box-shadow: 0 4px 18px rgba(28, 48, 73, .045);
}
.post-type-amplio_produto .postbox .postbox-header { border-bottom: 1px solid #e8ebef; }
.post-type-amplio_produto .postbox .hndle { padding: 17px 20px; color: var(--amplio-ink); font-size: 15px; font-weight: 700; }
.post-type-amplio_produto .postbox .inside { margin: 0; padding: 20px; }
.post-type-amplio_produto #normal-sortables .postbox .inside { padding: 24px; }
.amplio-section-intro { max-width: 800px; margin: 0 0 22px; color: var(--amplio-muted); font-size: 14px; line-height: 1.55; }

.amplio-basic-fields {
	display: grid;
	grid-template-columns: minmax(220px, .8fr) minmax(360px, 1.8fr);
	gap: 24px;
	align-items: start;
}
.amplio-basic-fields small { display: block; margin-top: 6px; color: var(--amplio-muted); }
.amplio-product-description > label,
.post-type-amplio_produto .amplio-field-grid label > span,
.post-type-amplio_produto .amplio-color-body label > span,
.post-type-amplio_produto .amplio-block > span {
	display: block;
	margin-bottom: 7px;
	color: var(--amplio-ink);
	font-weight: 650;
}
.post-type-amplio_produto .amplio-field-grid { gap: 18px; }
.post-type-amplio_produto .amplio-field-grid--wide { margin-top: 20px; }
.post-type-amplio_produto .amplio-field-grid input,
.post-type-amplio_produto .amplio-field-grid select,
.post-type-amplio_produto .amplio-field-grid textarea,
.post-type-amplio_produto .amplio-color-body input[type="text"],
.post-type-amplio_produto .amplio-color-body select,
.post-type-amplio_produto .amplio-block input[type="text"],
.post-type-amplio_produto .amplio-block select,
.post-type-amplio_produto .amplio-block textarea {
	width: 100%;
	min-height: 40px;
	padding: 7px 10px;
	color: var(--amplio-ink);
	border-color: #cbd2da;
	border-radius: 2px;
}
.post-type-amplio_produto textarea { line-height: 1.55; resize: vertical; }
.post-type-amplio_produto input:focus,
.post-type-amplio_produto select:focus,
.post-type-amplio_produto textarea:focus { border-color: var(--amplio-gold); box-shadow: 0 0 0 1px var(--amplio-gold); }
.post-type-amplio_produto .wp-editor-wrap { border: 1px solid #cbd2da; }
.post-type-amplio_produto .wp-editor-tools { padding: 0 8px; background: #f5f6f7; }
.post-type-amplio_produto .wp-editor-container { border: 0; }

.amplio-taxonomy-grid { display: grid; grid-template-columns: repeat(2, minmax(0, 1fr)); gap: 16px; }
.amplio-taxonomy-group { min-width: 0; margin: 0; padding: 18px; background: #fafbfc; border: 1px solid #dce1e7; }
.amplio-taxonomy-group legend { padding: 0 5px; color: var(--amplio-ink); font-size: 14px; font-weight: 700; }
.amplio-taxonomy-group > p { margin: 0 0 13px; color: var(--amplio-muted); }
.amplio-taxonomy-group > a { display: inline-block; margin-top: 12px; color: var(--amplio-navy); font-size: 12px; text-decoration: none; }
.amplio-taxonomy-group > a:hover { color: #7f6235; }
.amplio-term-options { display: flex; flex-wrap: wrap; gap: 7px; max-height: 170px; overflow: auto; padding: 2px; }
.amplio-term-options label { position: relative; margin: 0; }
.amplio-term-options input { position: absolute; width: 1px; height: 1px; overflow: hidden; opacity: 0; }
.amplio-term-options label span {
	display: block;
	padding: 7px 10px;
	color: #506074;
	font-size: 12px;
	line-height: 1.2;
	background: #fff;
	border: 1px solid #d7dce2;
	border-radius: 18px;
	cursor: pointer;
	transition: color .15s ease, background-color .15s ease, border-color .15s ease;
}
.amplio-term-options input:checked + span { color: #fff; background: var(--amplio-navy); border-color: var(--amplio-navy); }
.amplio-term-options input:focus-visible + span { outline: 2px solid var(--amplio-gold); outline-offset: 2px; }
.amplio-empty-terms { color: var(--amplio-muted); font-style: italic; }

.post-type-amplio_produto h4 { margin: 24px 0 10px; color: var(--amplio-ink); font-size: 13px; }
.post-type-amplio_produto .amplio-extra-row,
.post-type-amplio_produto .amplio-size-row { gap: 9px; margin-bottom: 9px; }
.post-type-amplio_produto .amplio-extra-row .dashicons-move,
.post-type-amplio_produto .amplio-size-row .dashicons-move,
.post-type-amplio_produto .amplio-color-summary .dashicons-move { color: #8b96a4; cursor: move; }
.post-type-amplio_produto .amplio-color-row { overflow: hidden; border-color: #dce1e7; }
.post-type-amplio_produto .amplio-color-summary { padding: 13px 14px; background: #f5f6f7; }
.post-type-amplio_produto .amplio-summary-swatch { width: 27px; height: 27px; }
.post-type-amplio_produto .amplio-color-body { gap: 16px; padding: 18px; border-top: 1px solid #dce1e7; }
.post-type-amplio_produto .amplio-gallery-preview { gap: 10px; min-height: 24px; }
.post-type-amplio_produto .amplio-gallery-item { width: 96px; height: 96px; border-color: #cbd2da; }
.post-type-amplio_produto .amplio-remove-image { width: 22px; height: 22px; border: 2px solid #fff; }
.post-type-amplio_produto .amplio-single-preview img { max-width: 180px; }
.post-type-amplio_produto .amplio-media-field {
	display: inline-block;
	box-sizing: border-box;
	width: min(300px, 100%);
	margin: 0 24px 18px 0;
	padding: 16px;
	vertical-align: top;
	background: #f5f6f7;
	border: 1px solid #dce1e7;
}
.post-type-amplio_produto .amplio-media-field .button-link-delete { display: block; margin-top: 8px; }

.post-type-amplio_produto .button {
	min-height: 34px;
	padding: 2px 13px;
	color: var(--amplio-navy);
	background: #fff;
	border-color: #9ba7b5;
	border-radius: 2px;
}
.post-type-amplio_produto .button:hover,
.post-type-amplio_produto .button:focus { color: #fff; background: var(--amplio-navy); border-color: var(--amplio-navy); }
.post-type-amplio_produto .button-primary,
.post-type-amplio_produto #publish { color: #fff; background: var(--amplio-navy); border-color: var(--amplio-navy); }
.post-type-amplio_produto .button-primary:hover,
.post-type-amplio_produto #publish:hover { background: var(--amplio-navy-deep); border-color: var(--amplio-navy-deep); }
.post-type-amplio_produto #side-sortables .postbox .inside { padding: 16px; }
.post-type-amplio_produto #submitdiv { border-top: 3px solid var(--amplio-gold); }
.post-type-amplio_produto #major-publishing-actions { padding: 14px; background: #f8f9fa; }
.post-type-amplio_produto #publishing-action { width: 100%; float: none; }
.post-type-amplio_produto #publish { width: 100%; min-height: 42px; font-weight: 600; }
.post-type-amplio_produto #set-post-thumbnail {
	display: block;
	padding: 12px;
	text-align: center;
	text-decoration: none;
	background: #f5f6f7;
	border: 1px dashed #aeb7c2;
}
.post-type-amplio_produto #set-post-thumbnail img { display: block; max-width: 100%; height: auto; margin: 0 auto 10px; }
.amplio-admin-guide > p:first-child { margin-top: 0; color: var(--amplio-ink); font-weight: 600; }
.amplio-admin-guide ol { margin: 14px 0 16px 20px; }
.amplio-admin-guide li { margin-bottom: 10px; color: #4b5b6f; line-height: 1.4; }

@media (max-width: 1250px) {
	.amplio-admin-steps li { padding: 8px; font-size: 0; }
	.amplio-admin-steps span { font-size: 12px; }
}

@media (max-width: 1050px) {
	.post-type-amplio_produto #post-body.columns-2 { margin-right: 0; }
	.post-type-amplio_produto #postbox-container-1 { width: 100%; margin-right: 0; }
	.amplio-product-admin-hero { align-items: flex-start; }
	.amplio-basic-fields { grid-template-columns: 1fr; }
}

@media (max-width: 782px) {
	.post-type-amplio_produto .wrap { margin: 12px 10px 0 2px; }
	.amplio-product-admin-hero { display: block; min-height: 0; padding: 24px; }
	.amplio-product-admin-hero h2 { font-size: 26px; }
	.amplio-admin-steps { margin-top: 22px; }
	.amplio-admin-steps li { flex: 1; justify-content: center; }
	.amplio-taxonomy-grid { grid-template-columns: 1fr; }
}


.amplio-site-header { position: sticky; top: 0; z-index: 1000; background: rgba(17, 34, 56, .97); border-bottom: 1px solid rgba(255, 255, 255, .12); }
.amplio-site-header .elementor-nav-menu a { letter-spacing: 0; }
.amplio-site-header .amplio-primary-navigation .elementor-nav-menu--main > ul > li > a.elementor-item { font-weight: 700 !important; }
.amplio-site-header .elementor-nav-menu--main .elementor-item:after,
.amplio-site-header .elementor-nav-menu--dropdown .elementor-sub-item:after {
	content: none;
}
.amplio-wordmark a { text-decoration: none; }

/* Keep Elementor's tablet-extra navigation breakpoint stable even when its
 * generated widget stylesheet is rebuilt without the custom breakpoint map. */
@media (max-width: 1450px) {
	.elementor-nav-menu--dropdown-tablet_extra .elementor-nav-menu--main {
		display: none !important;
	}
	.elementor-nav-menu--dropdown-tablet_extra .elementor-menu-toggle {
		display: flex !important;
	}
}

@media (min-width: 1451px) {
	.elementor-nav-menu--dropdown-tablet_extra .elementor-menu-toggle,
	.elementor-nav-menu--dropdown-tablet_extra .elementor-nav-menu--dropdown {
		display: none !important;
	}

	.elementor-nav-menu--dropdown-tablet_extra nav.elementor-nav-menu--dropdown.elementor-nav-menu__container {
		overflow-y: hidden;
	}
}

.amplio-hero { isolation: isolate; }
.amplio-hero:after {
	content: "";
	position: absolute;
	inset: 0;
	z-index: 0;
	background: linear-gradient(
		to bottom,
		rgba(7, 15, 25, .7) 0,
		rgba(7, 15, 25, .42) 10%,
		rgba(7, 15, 25, .14) 22%,
		rgba(7, 15, 25, 0) 34%
	);
	pointer-events: none;
}
.amplio-hero > .e-con-inner,
.amplio-hero > .elementor-element,
.amplio-hero > .elementor-background-video-container { position: relative; z-index: 1; }
.amplio-hero .elementor-background-video-container { z-index: -1; }
.amplio-hero :where(
	.amplio-home-eyebrow,
	.amplio-home-title,
	.amplio-home-description,
	.amplio-home-button
) { display: none !important; }
.amplio-hero .elementor-widget-heading .elementor-heading-title,
.amplio-hero .elementor-widget-text-editor,
.amplio-hero .elementor-widget-text-editor p,
.amplio-display .elementor-heading-title,
.amplio-lead,
.amplio-lead p { text-wrap: balance; }
.amplio-kicker { align-self: flex-start; }
.amplio-kicker .elementor-heading-title {
	display: block;
	width: auto;
	max-width: 100%;
	padding: 0;
	background: none;
	border: 0;
	box-shadow: none;
	-webkit-backdrop-filter: none;
	backdrop-filter: none;
	font-family: var(--amplio-sans) !important;
	font-weight: var(--amplio-sans-weight) !important;
	letter-spacing: .22em !important;
	text-transform: uppercase;
	text-wrap: balance;
}
.amplio-kicker .elementor-heading-title:before { content: none; display: none; }
.amplio-hero .amplio-kicker .elementor-heading-title { color: rgba(255, 255, 255, .9) !important; }
.amplio-kicker .elementor-heading-title a { color: inherit; }
.amplio-display .elementor-heading-title { font-family: var(--amplio-display); font-weight: 500; }
.amplio-prose, .amplio-prose p { max-width: 68ch; }
.amplio-lead, .amplio-lead p { max-width: 58ch; }
/* O alinhamento editorial da marca e centralizado. Mantemos fora desta regra
   navegacao, filtros, formularios e fichas tecnicas, que exigem leitura funcional. */
body.amplio-institucional :where(.amplio-kicker, .amplio-display, .amplio-prose, .amplio-lead) {
	align-self: center !important;
	margin-right: auto;
	margin-left: auto;
	text-align: center !important;
}
body.amplio-institucional :where(.amplio-kicker, .amplio-display, .amplio-prose, .amplio-lead) :where(.elementor-heading-title, .elementor-widget-container, p) {
	margin-right: auto;
	margin-left: auto;
	text-align: center !important;
}
body.amplio-institucional .amplio-button {
	align-self: center !important;
	text-align: center !important;
}
body.amplio-institucional .amplio-button .elementor-button-wrapper { text-align: center !important; }
.amplio-hero .amplio-home-description {
	width: 100%;
	max-width: 48ch !important;
	text-wrap: balance;
}
.amplio-hero .amplio-home-description .elementor-widget-container,
.amplio-hero .amplio-home-description p {
	max-width: inherit;
	text-wrap: balance;
}

.amplio-button .elementor-button,
.amplio-form .elementor-button,
.amplio-orcamento,
.amplio-carregar-mais {
	position: relative;
	border-radius: 0;
	text-transform: uppercase;
	font-family: var(--amplio-sans);
	letter-spacing: 0;
	transition: color .2s ease, background-color .2s ease, border-color .2s ease;
}
.amplio-button-outline .elementor-button { background: transparent; border: 1px solid currentColor; }
.amplio-button .elementor-button:hover,
.amplio-button .elementor-button:focus-visible { transform: none; }
.amplio-button .elementor-button:before,
.amplio-form .elementor-button:before,
.amplio-orcamento:before,
.amplio-carregar-mais:before {
	content: "";
	position: absolute;
	right: 1.45em;
	bottom: .75em;
	left: 1.45em;
	height: 1px;
	background: currentColor;
	transform: scaleX(0);
	transform-origin: left;
	transition: transform .25s ease;
}
.amplio-button .elementor-button:hover:before,
.amplio-button .elementor-button:focus-visible:before,
.amplio-form .elementor-button:hover:before,
.amplio-form .elementor-button:focus-visible:before,
.amplio-orcamento:hover:before,
.amplio-orcamento:focus-visible:before,
.amplio-carregar-mais:hover:before,
.amplio-carregar-mais:focus-visible:before {
	transform: scaleX(1);
}

.amplio-editorial-image img { width: 100%; height: 100%; object-fit: cover; }
.amplio-image-landscape img { aspect-ratio: 16 / 10; }
.amplio-image-portrait img { aspect-ratio: 4 / 5; }
.amplio-image-detail img { aspect-ratio: 1 / 1; }
.amplio-collection-tile { position: relative; overflow: hidden; isolation: isolate; cursor: pointer; }
.amplio-collection-tile:before {
	content: "";
	position: absolute;
	top: 0;
	right: 0;
	bottom: 0;
	left: 0;
	z-index: 0;
	pointer-events: none;
	background: #fff;
	opacity: 0;
	transition: opacity .48s cubic-bezier(.22, .61, .36, 1);
	will-change: opacity;
}
.amplio-collection-tile:hover:before,
.amplio-collection-tile:focus-within:before {
	opacity: .30;
}
.amplio-collection-tile > .elementor-element { position: relative; z-index: 1; }
.amplio-collection-tile > .elementor-widget-button,
.amplio-home-collection-tile__link,
.amplio-colecao-tile__link { display: none !important; }
.amplio-collection-tile .elementor-button-link { position: static; }
.amplio-collection-tile .elementor-button-link:before { content: none; }
.amplio-collection-tile .elementor-button-link:after { content: ""; position: absolute; inset: 0; z-index: 3; }
.amplio-collection-tile .elementor-button-content-wrapper { position: relative; }
.amplio-collection-tile .elementor-button-content-wrapper:after {
	content: "";
	position: absolute;
	right: 0;
	bottom: -.35em;
	left: 0;
	height: 1px;
	background: currentColor;
	transform: scaleX(0);
	transform-origin: left;
	transition: transform .25s ease;
}
.amplio-collection-tile:hover .elementor-button-content-wrapper:after,
.amplio-collection-tile:focus-within .elementor-button-content-wrapper:after {
	transform: scaleX(1);
}
body.amplio-institucional .amplio-collection-tile > .elementor-widget-heading .elementor-heading-title,
body.amplio-institucional .amplio-home-collection-tile h3,
body.amplio-institucional .amplio-colecao-tile__nome {
	position: relative;
	display: inline-block;
	padding-bottom: .18em;
	font-size: clamp(32px, 3vw, 52px) !important;
	font-weight: 500 !important;
}
body.amplio-institucional .amplio-collection-tile > .elementor-widget-heading .elementor-heading-title:after,
body.amplio-institucional .amplio-home-collection-tile h3:after,
body.amplio-institucional .amplio-colecao-tile__nome:after {
	content: "";
	position: absolute;
	right: 50%;
	bottom: 0;
	left: 50%;
	height: clamp(2px, .16vw, 3px);
	background: currentColor;
	transition: right .38s cubic-bezier(.22, .61, .36, 1), left .38s cubic-bezier(.22, .61, .36, 1);
}
body.amplio-institucional .amplio-collection-tile:hover > .elementor-widget-heading .elementor-heading-title:after,
body.amplio-institucional .amplio-collection-tile:focus-within > .elementor-widget-heading .elementor-heading-title:after,
body.amplio-institucional .amplio-home-collection-tile:hover h3:after,
body.amplio-institucional .amplio-home-collection-tile:focus-within h3:after,
body.amplio-institucional .amplio-colecao-tile:hover .amplio-colecao-tile__nome:after,
body.amplio-institucional .amplio-colecao-tile:focus-visible .amplio-colecao-tile__nome:after {
	right: 0;
	left: 0;
}
.amplio-collection-tile:focus-within { outline: 1px solid rgba(255, 255, 255, .82); outline-offset: -5px; }
.amplio-home-collection-tile {
	position: relative;
	display: flex;
	min-height: 520px;
	flex-direction: column;
	align-items: center;
	justify-content: flex-end;
	gap: 24px;
	padding: 36px 32px;
	background-position: center;
	background-size: cover;
	color: var(--amplio-white);
	text-align: center;
}
.amplio-home-collections-grid {
	display: grid !important;
	grid-template-columns: minmax(0, 1fr) !important;
	width: calc(100vw - 16px) !important;
	max-width: none !important;
	margin-right: calc(50% - 50vw + 8px) !important;
	margin-left: calc(50% - 50vw + 8px) !important;
	gap: 8px !important;
}
.amplio-home-collections-grid > .amplio-collection-tile {
	--align-items: center;
	--justify-content: flex-end;
	--gap: 24px;
	width: 100% !important;
	min-height: clamp(340px, 44vw, 640px) !important;
	align-items: center !important;
	justify-content: flex-end !important;
	text-align: center !important;
}
.amplio-home-collections-grid > .amplio-collection-tile > .elementor-widget-heading,
.amplio-home-collections-grid > .amplio-collection-tile > .elementor-widget-button {
	align-self: center !important;
	text-align: center !important;
}
.amplio-home-collections-grid > .amplio-collection-tile .elementor-heading-title { text-align: center !important; }
.amplio-home-collection-tile h3 {
	position: relative;
	z-index: 3;
	margin: 0;
	color: inherit;
	font-family: var(--amplio-display);
	font-size: 30px;
	font-weight: 500;
	line-height: 1.2;
}
.amplio-home-collection-tile__link {
	position: relative;
	z-index: 3;
	display: inline-flex;
	align-items: center;
	justify-content: center;
	padding: 15px 22px;
	border: 1px solid currentColor;
	color: inherit;
	font-family: var(--amplio-sans);
	font-size: 12px;
	font-weight: var(--amplio-sans-weight);
	letter-spacing: .08em;
	text-decoration: none;
	text-transform: uppercase;
	transition: color .25s ease, background-color .25s ease;
}
.amplio-home-collection-tile__hit {
	position: absolute;
	inset: 0;
	z-index: 2;
	font-size: 0;
}
.amplio-home-collection-tile__link span {
	position: relative;
	z-index: 3;
	display: inline-flex;
	align-items: center;
	gap: 12px;
}
.amplio-home-collection-tile__link span:after {
	position: absolute;
	bottom: -.4em;
	left: 0;
	width: 100%;
	height: 1px;
	background: currentColor;
	content: "";
	transform: scaleX(0);
	transform-origin: left;
	transition: transform .25s ease;
}
.amplio-home-collection-tile:hover .amplio-home-collection-tile__link span:after,
.amplio-home-collection-tile:focus-within .amplio-home-collection-tile__link span:after { transform: scaleX(1); }
.amplio-home-collection-tile:hover .amplio-home-collection-tile__link,
.amplio-home-collection-tile:focus-within .amplio-home-collection-tile__link {
	background: var(--amplio-white);
	color: var(--amplio-navy);
}
.amplio-home-collections-control {
	display: flex;
	flex-wrap: wrap;
	justify-content: center;
	gap: 16px;
	margin-top: 48px;
}
.amplio-home-collections-control[hidden] { display: none; }

/* Página de coleções: títulos centralizados e o mesmo hover claro da home. */
body.page-id-973 .amplio-colecao-tile {
	align-items: center !important;
	text-align: center !important;
}
body.page-id-973 .amplio-colecao-tile:before {
	background: #fff !important;
	opacity: 0 !important;
	transition: opacity .48s cubic-bezier(.22, .61, .36, 1) !important;
}
body.page-id-973 .amplio-colecao-tile:hover:before,
body.page-id-973 .amplio-colecao-tile:focus-visible:before {
	opacity: .30 !important;
}
.amplio-home-collections-control__button {
	display: inline-flex;
	align-items: center;
	justify-content: center;
	gap: 12px;
	padding: 15px 22px;
	border: 1px solid var(--amplio-navy);
	border-radius: 0;
	background: transparent;
	color: var(--amplio-navy);
	font-family: var(--amplio-sans);
	font-size: 12px;
	font-weight: var(--amplio-sans-weight);
	letter-spacing: .08em;
	line-height: 1.2;
	text-transform: uppercase;
	text-decoration: none;
	cursor: pointer;
	transition: color .25s ease, background-color .25s ease;
}
.amplio-home-collections-control__button:hover,
.amplio-home-collections-control__button:focus-visible { background: var(--amplio-navy); color: var(--amplio-white); }
.amplio-home-collections-control__button:disabled { cursor: wait; opacity: .65; }
.amplio-home-collections-control__button span { flex: 0 0 auto; }
@media (max-width: 767px) {
	.amplio-home-collection-tile { min-height: 90vw; padding: 8vw 6vw; }
	.amplio-home-collections-grid {
		width: calc(100vw - 8px) !important;
		margin-right: calc(50% - 50vw + 4px) !important;
		margin-left: calc(50% - 50vw + 4px) !important;
		gap: 4px !important;
	}
	.amplio-home-collections-control { margin-top: 8vw; }
}

.amplio-rule { border-top: 1px solid var(--amplio-line); }
.amplio-metric { border-left: 1px solid var(--amplio-gold); }
.amplio-path { border-top: 1px solid var(--amplio-line); cursor: pointer; }
.amplio-path:last-child { border-bottom: 1px solid var(--amplio-line); }
.amplio-path .elementor-heading-title a { text-decoration: none; }
.amplio-path:hover { background: var(--amplio-ivory); }
.amplio-path:focus-visible { outline: 1px solid var(--amplio-gold); outline-offset: -1px; }
.amplio-path:hover .elementor-heading-title a .amplio-click-label-current,
.amplio-path:focus-visible .elementor-heading-title a .amplio-click-label-current {
	opacity: 0;
	transform: translateY(-115%);
}
.amplio-path:hover .elementor-heading-title a .amplio-click-label-copy,
.amplio-path:focus-visible .elementor-heading-title a .amplio-click-label-copy {
	opacity: 1;
	transform: translateY(0);
	transition-delay: .04s;
}
.amplio-path-list { gap: 0 !important; }
.amplio-path-list > .amplio-path {
	display: grid;
	grid-template-columns: minmax(230px, 30%) minmax(320px, 1fr) max-content;
	column-gap: clamp(24px, 4vw, 72px);
	align-items: center;
	width: 100%;
	padding-inline: clamp(18px, 1.8vw, 28px);
}

@media (max-width: 1200px) {
	.amplio-path-list > .amplio-path {
		display: flex;
		padding-inline: 0;
	}
}

.amplio-form .elementor-field-group { margin-bottom: 18px; }
.amplio-form .elementor-field-label { margin-bottom: 8px; color: var(--amplio-navy); font-size: 12px; font-weight: var(--amplio-sans-weight); text-transform: uppercase; }
.amplio-form .elementor-field { min-height: 52px; padding: 13px 0; color: var(--amplio-ink); background: transparent; border: 0; border-bottom: 1px solid rgba(26, 46, 74, .38); border-radius: 0; font-family: var(--amplio-sans); }
.amplio-form textarea.elementor-field { min-height: 130px; resize: vertical; }
.amplio-form .elementor-field:focus { border-color: var(--amplio-gold); box-shadow: none; }
.amplio-form .elementor-message { font-family: var(--amplio-sans); }

.amplio-grade { align-items: start; }
.amplio-produto-card { position: relative; background: transparent; cursor: pointer; }
.amplio-produto-card__image-link { display: block; position: relative; overflow: hidden; background: #FFFFFF; }
.amplio-produto-card__image { transition: transform .45s ease; }
.amplio-produto-card:hover .amplio-produto-card__image,
.amplio-produto-card:focus-within .amplio-produto-card__image { transform: scale(1.025); }

/* Velo claro sobre a foto para sinalizar o hover sem apagar os materiais. */
.amplio-produto-card__image-link:before {
	content: "";
	position: absolute;
	inset: 0;
	z-index: 1;
	background: rgba(9, 24, 39, 0);
	transition: background-color .25s ease;
	pointer-events: none;
}
.amplio-produto-card:hover .amplio-produto-card__image-link:before,
.amplio-produto-card:focus-within .amplio-produto-card__image-link:before { background: rgba(255, 255, 255, .18); }

/* O link do titulo se estende sobre o card inteiro: clicar em qualquer ponto abre o produto. */
.amplio-produto-card__title:after {
	content: "";
	position: absolute;
	inset: 0;
	z-index: 2;
}
/* Troca deslizante do rotulo, mesmo efeito dos itens do menu do cabecalho (doc 989):
   o titulo atual sobe e some enquanto a copia entra por baixo. */
.amplio-produto-card__title-label {
	position: relative;
	display: grid;
	overflow: hidden;
	padding-block: 2px;
	margin-block: -2px;
	line-height: 1.2;
}
.amplio-produto-card__title-label > span {
	grid-area: 1 / 1;
	transition: opacity .28s ease, transform .42s cubic-bezier(.22, 1, .36, 1);
}
.amplio-produto-card__title-copia { opacity: 0; transform: translateY(115%); }
.amplio-produto-card:hover .amplio-produto-card__title-atual,
.amplio-produto-card:focus-within .amplio-produto-card__title-atual { opacity: 0; transform: translateY(-115%); }
.amplio-produto-card:hover .amplio-produto-card__title-copia,
.amplio-produto-card:focus-within .amplio-produto-card__title-copia { opacity: 1; transform: translateY(0); transition-delay: .04s; }

/* Cards do widget nativo de posts (busca e arquivo do blog): mesmo comportamento do card da grade.
   O rotulo ja vem duplicado pelo sistema global .amplio-click-label; aqui so mudamos o gatilho
   do proprio link para o card inteiro, e acrescentamos o veu e o alvo de clique unico. */
.elementor-posts .elementor-post { position: relative; cursor: pointer; }
.elementor-posts .elementor-post__thumbnail__link { position: relative; display: block; overflow: hidden; }
.elementor-posts .elementor-post__thumbnail__link:before {
	content: "";
	position: absolute;
	inset: 0;
	z-index: 1;
	background: rgba(9, 24, 39, 0);
	transition: background-color .25s ease;
	pointer-events: none;
}
.elementor-posts .elementor-post:hover .elementor-post__thumbnail__link:before,
.elementor-posts .elementor-post:focus-within .elementor-post__thumbnail__link:before { background: rgba(255, 255, 255, .18); }
.elementor-posts .elementor-post__title a { position: static; }
.elementor-posts .elementor-post__title a:after {
	content: "";
	position: absolute;
	inset: 0;
	z-index: 2;
}
.elementor-posts .elementor-post:hover .elementor-post__title a .amplio-click-label-current,
.elementor-posts .elementor-post:focus-within .elementor-post__title a .amplio-click-label-current { opacity: 0; transform: translateY(-115%); }
.elementor-posts .elementor-post:hover .elementor-post__title a .amplio-click-label-copy,
.elementor-posts .elementor-post:focus-within .elementor-post__title a .amplio-click-label-copy { opacity: 1; transform: translateY(0); transition-delay: .04s; }
.elementor-posts .elementor-post:focus-within { outline: 1px solid var(--amplio-gold); outline-offset: 4px; }

/* Cards do blog no padrao do site: sem os defaults do Elementor (titulo em Roboto
   cinza, meta em Roboto Slab e o "ler mais" no verde #61CE70). */
.elementor-posts .elementor-post__thumbnail {
	aspect-ratio: 4 / 3;
	background: var(--amplio-ivory);
}

/* O widget posiciona a imagem em absoluto com altura automatica e a centraliza
   com translate(-50%,-50%). Fixamos a altura e ZERAMOS o translate: sem isso a
   imagem saltava de lugar no hover, quando o Elementor troca o transform. */
.elementor-posts .elementor-post__thumbnail img {
	position: absolute;
	top: 0 !important;
	left: 0 !important;
	right: auto;
	bottom: auto;
	width: 100% !important;
	height: 100% !important;
	max-height: none;
	object-fit: cover;
	transform: none !important;
	transition: transform .45s ease !important;
}

.elementor-posts .elementor-post:hover .elementor-post__thumbnail img,
.elementor-posts .elementor-post:focus-within .elementor-post__thumbnail img {
	transform: scale(1.04) !important;
}

/* Data colada no titulo. */
.elementor-posts .elementor-post__title { margin-bottom: 12px; }
.elementor-posts .elementor-post__meta-data { margin-top: 0; margin-bottom: 14px; }

.elementor-posts .elementor-post__text { padding-top: 4px; }

.elementor-posts .elementor-post__title,
.elementor-posts .elementor-post__title a {
	font-family: var(--amplio-display);
	font-size: 22px;
	font-weight: 500;
	line-height: 1.2em;
	letter-spacing: 0;
	text-transform: none;
	color: var(--amplio-navy);
}

.elementor-posts .elementor-post__meta-data,
.elementor-posts .elementor-post__meta-data span {
	font-family: var(--amplio-sans);
	font-size: 11px;
	font-weight: var(--amplio-sans-weight);
	letter-spacing: .12em;
	text-transform: uppercase;
	color: var(--amplio-muted);
}

.elementor-posts .elementor-post__excerpt p {
	font-family: var(--amplio-sans);
	font-size: 15px;
	font-weight: var(--amplio-sans-weight);
	line-height: 1.75;
	color: var(--amplio-muted);
}

/* O widget de posts grava a fonte do "ler mais" com especificidade alta;
   por isso este seletor precisa ser mais forte que o padrao. */
.elementor-posts .elementor-post .elementor-post__text .elementor-post__read-more,
.elementor-posts .elementor-post__read-more {
	display: inline-block;
	font-family: var(--amplio-sans) !important;
	font-size: 12px;
	font-weight: var(--amplio-sans-weight);
	letter-spacing: .12em;
	text-transform: uppercase;
	color: var(--amplio-navy);
	background-image: linear-gradient(currentColor, currentColor);
	background-repeat: no-repeat;
	background-position: 0 calc(100% - .04em);
	background-size: 0 1px;
	transition: background-size .25s ease;
}

.elementor-posts .elementor-post:hover .elementor-post__read-more,
.elementor-posts .elementor-post:focus-within .elementor-post__read-more { background-size: 100% 1px; }
.amplio-produto-card__title:focus-visible { outline: none; }
.amplio-produto-card:focus-within { outline: 1px solid var(--amplio-gold); outline-offset: 4px; }
.amplio-produto-card__body { padding: 16px 0 6px; }
.amplio-produto-card h3 { margin: 6px 0 0; }
.amplio-produto-card__title { font-family: var(--amplio-display); font-size: 22px; font-weight: 500; line-height: 1.2; }
.amplio-produto-card__meta { color: var(--amplio-muted); font-size: 11px; font-weight: var(--amplio-sans-weight); text-transform: uppercase; }
.amplio-catalog-filter {
	margin: clamp(34px, 4vw, 66px) 0 clamp(42px, 5vw, 78px);
	padding-top: clamp(22px, 2vw, 34px);
	border-top: 1px solid var(--amplio-line);
}
.amplio-catalog-filter__top {
	display: flex;
	align-items: flex-end;
	justify-content: space-between;
	gap: 28px;
	margin-bottom: clamp(24px, 2.5vw, 40px);
}
.amplio-catalog-filter__search {
	display: grid;
	grid-template-columns: minmax(0, 1fr) 44px;
	width: min(100%, 520px);
	border-bottom: 1px solid rgba(26, 46, 74, .42);
	transition: border-color .25s ease;
}
.amplio-catalog-filter__search:focus-within {
	border-color: var(--amplio-gold);
	box-shadow: inset 0 -1px 0 var(--amplio-gold);
}
.amplio-catalog-filter__search input {
	min-width: 0;
	padding: 13px 0;
	border: 0;
	outline: 0;
	background: transparent;
	color: var(--amplio-navy);
	font-family: var(--amplio-sans);
	font-size: 15px;
	font-weight: var(--amplio-sans-weight);
}
.amplio-catalog-filter__search input::placeholder { color: rgba(36, 49, 66, .58); opacity: 1; }
.amplio-catalog-filter__search input:focus,
.amplio-catalog-filter__search input:focus-visible,
.amplio-catalog-filter__search button:focus,
.amplio-catalog-filter__search button:focus-visible {
	outline: 0;
	box-shadow: none;
}
.amplio-catalog-filter__search button {
	display: grid;
	width: 44px;
	padding: 0;
	place-items: center;
	border: 0;
	background: transparent;
	color: var(--amplio-navy);
	cursor: pointer;
}
.amplio-catalog-filter__search button:hover,
.amplio-catalog-filter__search button:focus,
.amplio-catalog-filter__search button:focus-visible {
	border: 0;
	background: transparent;
	color: var(--amplio-gold);
}
.amplio-catalog-filter__search svg {
	width: 19px;
	height: 19px;
	fill: none;
	stroke: currentColor;
	stroke-width: 1.25;
	stroke-linecap: round;
}
.amplio-catalog-filter__status {
	margin: 0;
	color: var(--amplio-muted);
	font-family: var(--amplio-sans);
	font-size: 11px;
	font-weight: var(--amplio-sans-weight);
	letter-spacing: .18em;
	text-transform: uppercase;
	white-space: nowrap;
}
.amplio-catalog-filter__categories {
	display: flex;
	flex-wrap: wrap;
	gap: 8px clamp(18px, 2vw, 32px);
}
.amplio-catalog-filter__categories button {
	position: relative;
	padding: 7px 0 9px;
	border: 0;
	background: transparent;
	color: var(--amplio-muted);
	font-family: var(--amplio-sans);
	font-size: 11px;
	font-weight: var(--amplio-sans-weight);
	letter-spacing: .1em;
	text-transform: uppercase;
	cursor: pointer;
	transition: color .25s ease;
}
.amplio-catalog-filter__categories button:after {
	content: "";
	position: absolute;
	right: 0;
	bottom: 4px;
	left: 0;
	height: 1px;
	background: var(--amplio-gold);
	transform: scaleX(0);
	transform-origin: left;
	transition: transform .25s ease;
}
.amplio-catalog-filter__categories button:hover,
.amplio-catalog-filter__categories button:focus,
.amplio-catalog-filter__categories button:focus-visible,
.amplio-catalog-filter__categories button.is-active {
	border: 0;
	background: transparent;
	color: var(--amplio-navy);
}
body.amplio-institucional .amplio-catalog-filter__search button:hover,
body.amplio-institucional .amplio-catalog-filter__search button:focus,
body.amplio-institucional .amplio-catalog-filter__search button:focus-visible,
body.amplio-institucional .amplio-catalog-filter__categories button:hover,
body.amplio-institucional .amplio-catalog-filter__categories button:focus,
body.amplio-institucional .amplio-catalog-filter__categories button:focus-visible,
body.amplio-institucional .amplio-catalog-filter__categories button.is-active {
	border-color: transparent;
	background: transparent;
	box-shadow: none;
}
.amplio-catalog-filter__categories button:hover:after,
.amplio-catalog-filter__categories button:focus-visible:after,
.amplio-catalog-filter__categories button.is-active:after { transform: scaleX(1); }
.amplio-catalog-filter.is-loading + .amplio-grade-wrap .amplio-grade {
	opacity: .42;
	transform: translateY(4px);
}
.amplio-grade-wrap .amplio-grade {
	transition: opacity .2s ease, transform .2s ease;
}
.amplio-catalog-filter__empty {
	grid-column: 1 / -1;
	margin: 0;
	padding: clamp(42px, 7vw, 96px) 0;
	border-top: 1px solid var(--amplio-line);
	border-bottom: 1px solid var(--amplio-line);
	color: var(--amplio-muted);
	font-size: 16px;
	text-align: center;
}
.amplio-filtro-carregar {
	display: block;
	min-width: 190px;
	margin: clamp(38px, 4vw, 64px) auto 0;
	padding: 16px 28px;
	/* O reset do Hello Elementor arredonda todo <button> em 3px; os botoes do
	   site sao de canto reto. */
	border-radius: 0;
	border: 1px solid var(--amplio-navy);
	background: transparent;
	color: var(--amplio-navy);
	font-family: var(--amplio-sans);
	font-size: 12px;
	font-weight: var(--amplio-sans-weight);
	letter-spacing: .08em;
	text-transform: uppercase;
	cursor: pointer;
	transition: color .25s ease, border-color .25s ease, background-color .25s ease;
}
.amplio-filtro-carregar:hover,
.amplio-filtro-carregar:focus-visible {
	border-color: var(--amplio-gold);
	background: transparent;
	color: var(--amplio-gold);
}
.amplio-filtro-carregar:disabled { opacity: .48; cursor: wait; }
.amplio-paginacao .page-numbers { min-width: 36px; padding: 8px; border-bottom: 1px solid var(--amplio-line); text-align: center; text-decoration: none; }
.amplio-paginacao .current { border-color: var(--amplio-gold); color: var(--amplio-navy); }
/* Os stills de produto sao PNG com fundo transparente: quem pinta atras e o site.
   Branco, como no site antigo -- o bege dava a impressao de foto com fundo colorido. */
.amplio-galeria__image { background: #FFFFFF; }
.amplio-ficha > div { padding: 12px 0; border-bottom: 1px solid var(--amplio-line); }
.amplio-ficha__label { color: var(--amplio-muted); font-size: 11px; font-weight: var(--amplio-sans-weight); text-transform: uppercase; }
.amplio-ficha__value { font-size: 15px; }
.amplio-orcamento { border: 1px solid var(--amplio-navy); background: var(--amplio-navy); color: var(--amplio-white); }
.amplio-orcamento:hover { border-color: var(--amplio-gold); background: var(--amplio-gold); color: var(--amplio-navy-deep); }

.amplio-site-footer a { text-decoration-thickness: 1px; text-underline-offset: 4px; }
.amplio-site-footer .elementor-icon-list-item { align-items: flex-start; }

@media (prefers-reduced-motion: reduce) {
	html { scroll-behavior: auto; }
	*, *:before, *:after { scroll-behavior: auto !important; transition-duration: .01ms !important; animation-duration: .01ms !important; animation-iteration-count: 1 !important; }
}

@media (max-width: 1200px) {
	.amplio-site-header { border-bottom-width: .08vw; }
	.amplio-header-cta { display: none; }
	.amplio-site-header .elementor-nav-menu--dropdown { margin-top: 1.6vw; border: 0; }
	.amplio-site-header .elementor-nav-menu--dropdown a { padding: 1.5vw 2.4vw; }
	.amplio-metric { border-left-width: .08vw; }
	.amplio-path { border-top-width: .08vw; }
	.amplio-path:last-child { border-bottom-width: .08vw; }
	.amplio-form .elementor-field-group { margin-bottom: 1.5vw; }
	.amplio-form .elementor-field-label { margin-bottom: .7vw; font-size: 1vw; }
	.amplio-form .elementor-field { min-height: 4.4vw; padding: 1.1vw 0; border-bottom-width: .08vw; }
	.amplio-form textarea.elementor-field { min-height: 11vw; }
	.amplio-produto-card__body { padding: 1.4vw 0 .5vw; }
	.amplio-produto-card h3 { margin-top: .5vw; }
	.amplio-produto-card__title { font-size: 1.85vw; }
	.amplio-produto-card__meta { font-size: .9vw; }
	.amplio-ficha > div { padding: 1vw 0; border-bottom-width: .08vw; }
	.amplio-ficha__label { font-size: .9vw; }
	.amplio-ficha__value { font-size: 1.25vw; }
}

@media (max-width: 1024px) {
	.amplio-site-header .elementor-nav-menu--dropdown { margin-top: 1.9vw; }
	.amplio-site-header .elementor-nav-menu--dropdown a { padding: 1.8vw 2.8vw; }
	.amplio-form .elementor-field-label { font-size: 1.2vw; }
	.amplio-form .elementor-field { min-height: 5.1vw; padding: 1.3vw 0; }
	.amplio-form textarea.elementor-field { min-height: 13vw; }
	.amplio-produto-card__title { font-size: 2.2vw; }
	.amplio-produto-card__meta { font-size: 1.05vw; }
	.amplio-ficha__label { font-size: 1.05vw; }
	.amplio-ficha__value { font-size: 1.5vw; }
}

@media (max-width: 880px) {
	.amplio-site-header .elementor-nav-menu--dropdown { margin-top: 2.2vw; }
	.amplio-site-header .elementor-nav-menu--dropdown a { padding: 2.2vw 3.4vw; }
	.amplio-form .elementor-field-group { margin-bottom: 2vw; }
	.amplio-form .elementor-field-label { font-size: 1.5vw; }
	.amplio-form .elementor-field { min-height: 6.2vw; padding: 1.6vw 0; }
	.amplio-form textarea.elementor-field { min-height: 16vw; }
	.amplio-produto-card__body { padding: 1.8vw 0 .8vw; }
	.amplio-produto-card__title { font-size: 2.7vw; }
	.amplio-produto-card__meta { font-size: 1.3vw; }
	.amplio-ficha__label { font-size: 1.3vw; }
	.amplio-ficha__value { font-size: 1.8vw; }
}

@media (max-width: 767px) {
	.amplio-site-header { border-bottom-width: .13vw; }
	.amplio-site-header .elementor-nav-menu--dropdown { margin-top: 3vw; }
	.amplio-site-header .elementor-nav-menu--dropdown a { padding: 4.2vw 6vw; }
	.amplio-metric { border-left-width: .13vw; }
	.amplio-path { border-top-width: .13vw; }
	.amplio-path:last-child { border-bottom-width: .13vw; }
	.amplio-form .elementor-field-group { margin-bottom: 4vw; }
	.amplio-form .elementor-field-label { margin-bottom: 1.6vw; font-size: 2.7vw; }
	.amplio-form .elementor-field { min-height: 12vw; padding: 3vw 0; border-bottom-width: .13vw; font-size: 3.8vw; }
	.amplio-form textarea.elementor-field { min-height: 32vw; }
	.amplio-produto-card__body { padding: 3.6vw 0 1.5vw; }
	.amplio-produto-card h3 { margin-top: 1.2vw; }
	.amplio-produto-card__title { font-size: 5.4vw; }
	.amplio-produto-card__meta { font-size: 2.7vw; }
	.amplio-catalog-filter { margin: 8vw 0 11vw; padding-top: 6vw; }
	.amplio-catalog-filter__top { align-items: stretch; flex-direction: column; gap: 4.5vw; margin-bottom: 6vw; }
	.amplio-catalog-filter__search { width: 100%; grid-template-columns: minmax(0, 1fr) 12vw; }
	.amplio-catalog-filter__search input { padding: 3.5vw 0; font-size: 3.8vw; }
	.amplio-catalog-filter__search button { width: 12vw; }
	.amplio-catalog-filter__search svg { width: 5vw; height: 5vw; }
	.amplio-catalog-filter__status { font-size: 2.6vw; letter-spacing: .14em; }
	.amplio-catalog-filter__categories {
		flex-wrap: nowrap;
		gap: 7vw;
		overflow-x: auto;
		padding-bottom: 2vw;
		scrollbar-width: none;
		-webkit-overflow-scrolling: touch;
	}
	.amplio-catalog-filter__categories::-webkit-scrollbar { display: none; }
	.amplio-catalog-filter__categories button { flex: 0 0 auto; padding: 2vw 0 2.5vw; font-size: 2.7vw; }
	.amplio-catalog-filter__categories button:after { bottom: 1vw; }
	.amplio-catalog-filter__empty { padding: 16vw 4vw; font-size: 3.8vw; }
	.amplio-filtro-carregar { min-width: 48vw; margin-top: 10vw; padding: 4vw 6vw; font-size: 3vw; }
	.amplio-ficha > div { padding: 3vw 0; border-bottom-width: .13vw; }
	.amplio-ficha__label { font-size: 2.7vw; }
	.amplio-ficha__value { font-size: 3.8vw; }
	.amplio-galeria__thumb img { width: 16vw; height: 12vw; }
}

/* Loader real: aparece apenas quando o carregamento ultrapassa o limiar anti-piscada. */
.amplio-site-loader {
	visibility: hidden;
	position: fixed;
	inset: 0;
	z-index: 20000;
	display: grid;
	place-items: center;
	opacity: 0;
	pointer-events: none;
	background: var(--amplio-ivory);
	transition: opacity .26s ease, visibility 0s linear .26s;
}
html.amplio-loader-visible .amplio-site-loader {
	visibility: visible;
	opacity: 1;
	pointer-events: auto;
	transition-delay: 0s;
}
html.amplio-loader-visible,
html.amplio-loader-visible body { overflow: hidden; }
.amplio-site-loader .elementor,
.amplio-site-loader .e-con,
.amplio-site-loader .elementor-widget,
.amplio-site-loader .elementor-widget-container { width: auto; }
.amplio-loader-element { display: grid; place-items: center; }
.amplio-loader-track {
	position: relative;
	display: block;
	width: 56px;
	height: 1px;
	overflow: hidden;
	background: rgba(26, 46, 74, .16);
}
.amplio-loader-track:after {
	content: "";
	position: absolute;
	inset: 0;
	background: var(--amplio-gold);
	transform: translateX(-100%) scaleX(.42);
	transform-origin: left;
	animation: amplio-loader-line 1.05s cubic-bezier(.65, 0, .35, 1) infinite;
}
@keyframes amplio-loader-line {
	0% { transform: translateX(-100%) scaleX(.42); }
	50% { transform: translateX(35%) scaleX(.64); }
	100% { transform: translateX(135%) scaleX(.42); }
}
@media (prefers-reduced-motion: reduce) {
	.amplio-loader-track:after { animation: none; transform: scaleX(.42); }
}

/* Três matérias recentes na home, imediatamente antes do rodapé. */
.amplio-home-blog {
	padding: clamp(82px, 8vw, 132px) 8px;
	background: #fff;
	color: var(--amplio-navy);
}
.amplio-home-blog__inner { width: 100%; margin: 0 auto; }
.amplio-home-blog__header {
	margin: 0 auto clamp(42px, 5vw, 78px);
	text-align: center;
}
.amplio-home-blog__header p {
	margin: 0 0 22px;
	color: var(--amplio-gold);
	font-family: var(--amplio-sans);
	font-size: 11px;
	font-weight: 300;
	letter-spacing: .24em;
	text-transform: uppercase;
}
.amplio-home-blog__header h2 {
	margin: 0;
	color: var(--amplio-navy);
	font-family: var(--amplio-sans);
	font-size: clamp(34px, 4.2vw, 64px);
	font-weight: 300;
	line-height: 1.05;
	letter-spacing: .015em;
	text-transform: uppercase;
}
.amplio-home-blog__grid {
	display: grid;
	grid-template-columns: repeat(3, minmax(0, 1fr));
	gap: 8px;
}
.amplio-home-blog-card { position: relative; min-width: 0; }
.amplio-home-blog-card__image {
	display: block;
	position: relative;
	aspect-ratio: 4 / 3;
	overflow: hidden;
	background: var(--amplio-ivory);
}
.amplio-home-blog-card__image:after {
	content: "";
	position: absolute;
	inset: 0;
	background: rgba(255, 255, 255, 0);
	transition: background-color .35s ease;
}
.amplio-home-blog-card__image img {
	display: block;
	width: 100%;
	height: 100%;
	object-fit: cover;
	transition: transform .6s cubic-bezier(.22, 1, .36, 1);
}
.amplio-home-blog-card:hover .amplio-home-blog-card__image:after,
.amplio-home-blog-card:focus-within .amplio-home-blog-card__image:after { background: rgba(255, 255, 255, .18); }
.amplio-home-blog-card:hover .amplio-home-blog-card__image img,
.amplio-home-blog-card:focus-within .amplio-home-blog-card__image img { transform: scale(1.025); }
.amplio-home-blog-card__content { padding: 24px 8px 10px; }
.amplio-home-blog-card__content time {
	display: block;
	margin-bottom: 14px;
	color: var(--amplio-gold);
	font-family: var(--amplio-sans);
	font-size: 10px;
	font-weight: 300;
	letter-spacing: .16em;
}
.amplio-home-blog-card__content h3 { margin: 0 0 16px; }
.amplio-home-blog-card__content h3 a {
	color: var(--amplio-navy);
	font-family: var(--amplio-sans);
	font-size: clamp(20px, 1.7vw, 28px);
	font-weight: 400;
	line-height: 1.2;
	text-decoration: none;
	text-transform: uppercase;
}
.amplio-home-blog-card__excerpt {
	max-width: 54ch;
	color: var(--amplio-muted);
	font-family: var(--amplio-sans);
	font-size: 15px;
	font-weight: 300;
	line-height: 1.7;
}
.amplio-home-blog-card__link,
.amplio-home-blog__footer a {
	display: inline-flex;
	align-items: center;
	gap: 14px;
	color: var(--amplio-navy);
	font-family: var(--amplio-sans);
	font-size: 11px;
	font-weight: 300;
	letter-spacing: .1em;
	text-decoration: none;
	text-transform: uppercase;
}
.amplio-home-blog-card__link {
	margin-top: 20px;
	padding-bottom: 5px;
	background: linear-gradient(currentColor, currentColor) 50% 100% / 0 1px no-repeat;
	transition: background-size .3s ease;
}
.amplio-home-blog-card__link:hover,
.amplio-home-blog-card__link:focus-visible { background-size: 100% 1px; }
.amplio-home-blog__footer { margin-top: clamp(38px, 4vw, 64px); text-align: center; }
.amplio-home-blog__footer a {
	padding: 15px 22px;
	border: 1px solid rgba(26, 46, 74, .42);
	transition: color .25s ease, background-color .25s ease, border-color .25s ease;
}
.amplio-home-blog__footer a:hover,
.amplio-home-blog__footer a:focus-visible {
	border-color: var(--amplio-navy);
	background: var(--amplio-navy);
	color: #fff;
}
@media (max-width: 767px) {
	.amplio-home-blog { padding: 18vw 2vw; }
	.amplio-home-blog__header { margin-bottom: 12vw; }
	.amplio-home-blog__grid { grid-template-columns: 1fr; gap: 12vw; }
	.amplio-home-blog-card__content { padding: 5vw 2vw 0; }
	.amplio-home-blog-card__content h3 a { font-size: 5.4vw; }
	.amplio-home-blog-card__excerpt { font-size: 3.8vw; }
	.amplio-home-blog__footer { margin-top: 12vw; }
}
