/*
 * Animalart UI refresh — adaptação do DESIGN-apple.md para a identidade
 * oficial Animalart. Brandon Grotesque, amarelo/preto/branco e markup atual
 * permanecem intactos; esta camada só refina ritmo, superfícies e estados.
 */

:root {
	color-scheme: light;
}

html {
	scroll-behavior: smooth;
	overflow-x: hidden;
}

body {
	overflow-x: hidden;

	background: var(--animalart-paper, #fff);
	color: var(--animalart-ink, #171717);
	font-family: var(--animalart-font-body, 'Brandon Grotesque', Arial, sans-serif);
	font-size: 16px;
	line-height: 1.47;
}

::selection {
	background: var(--animalart-yellow, #ffcd00);
	color: var(--animalart-ink, #171717);
}

:is(h1, h2, h3, h4, h5, h6) {
	color: var(--animalart-ink, #171717);
	font-family: var(--animalart-font-display, 'Brandon Grotesque', Arial, sans-serif);
	font-weight: 900;
	letter-spacing: -0.018em;
}

:is(a, button, input, select, textarea, summary):focus-visible {
	outline: 3px solid var(--animalart-focus, #171717);
	outline-offset: 3px;
}

:is(a, button, input, select, textarea) {
	transition-duration: 0.18s;
	transition-timing-function: var(--animalart-ui-ease, cubic-bezier(0.2, 0.8, 0.2, 1));
}

/* Shared page rhythm ------------------------------------------------------ */
.page-container {
	box-sizing: border-box;
	max-width: var(--animalart-content-max, 1440px);
	padding: clamp(3.5rem, 7vw, 6rem) 2rem;
}

.page-container__title,
.page-container__content,
.animalart-page-shell__header,
.animalart-page-shell__content {
	max-width: var(--animalart-content-reading, 800px);
}

.page-container__title,
.animalart-page-shell__header .page-container__title {
	margin-bottom: 1.15rem;
	font-size: clamp(2.25rem, 5vw, 4.2rem);
	line-height: 1.04;
}

.page-container__content,
.animalart-page-shell__content {
	font-size: 1.0625rem;
	line-height: 1.62;
}

.animalart-page-shell {
	max-width: var(--animalart-content-max, 1440px);
}

.animalart-page-shell__header {
	margin-bottom: clamp(2.5rem, 5vw, 4.5rem);
}

.animalart-page-shell__eyebrow,
.animalart-breadcrumbs {
	font-family: var(--animalart-font-body, 'Brandon Grotesque', Arial, sans-serif);
}

.animalart-page-shell__eyebrow {
	margin-bottom: 0.8rem;
	color: var(--animalart-muted, #666);
	font-size: 0.75rem;
	font-weight: 900;
	letter-spacing: 0.12em;
}

.animalart-breadcrumbs {
	color: var(--animalart-muted, #666);
	font-size: 0.8rem;
}

.animalart-breadcrumbs a,
.animalart-page-shell__content a,
.page-container__content a {
	color: var(--animalart-ink, #171717);
	font-weight: 900;
	text-underline-offset: 0.24em;
}

.animalart-page-shell__content :is(h2, h3, h4),
.page-container__content :is(h2, h3, h4) {
	margin-top: 2.8em;
	margin-bottom: 0.8em;
	line-height: 1.12;
}

/* Shared Animalart controls ---------------------------------------------- */
.studioalmadolar-btn,
.animalart-height-cta,
.site-header__account-cta,
.studioalmadolar-shop-search__submit,
.studioalmadolar-pre-footer__newsletter-form .forminator-button,
.studioalmadolar-pre-footer__newsletter-form button[type='submit'] {
	font-family: var(--animalart-font-display, 'Brandon Grotesque', Arial, sans-serif);
	font-weight: 900;
	letter-spacing: 0.025em;
}

.studioalmadolar-btn,
.animalart-height-cta,
.site-header__account-cta,
.studioalmadolar-shop-search__submit {
	min-height: 44px;
	border-radius: var(--animalart-ui-radius-control, 999px);
}

.studioalmadolar-btn--primary,
.animalart-height-cta,
.site-header__account-cta {
	background: var(--animalart-yellow, #ffcd00);
	border-color: var(--animalart-yellow, #ffcd00);
	color: var(--animalart-ink, #171717);
}

.studioalmadolar-btn--primary:hover,
.animalart-height-cta:hover,
.site-header__account-cta:hover,
.studioalmadolar-btn--primary:focus-visible,
.animalart-height-cta:focus-visible,
.site-header__account-cta:focus-visible {
	background: var(--animalart-ink, #171717);
	border-color: var(--animalart-ink, #171717);
	color: var(--animalart-yellow, #ffcd00);
	filter: none;
	transform: translateY(-1px);
}

/* Header: quiet chrome, same three-row structure ------------------------- */
.site-header {
	background: var(--animalart-paper, #fff);
	border-bottom: 1px solid var(--animalart-line, #e5e5e5);
	box-shadow: none;
}

.site-header__section--utility {
	background: var(--animalart-paper, #fff);
	border-bottom-color: var(--animalart-line, #e5e5e5);
}

.site-header__section--secondary {
	background: var(--animalart-surface-muted, #f7f7f7);
	border-top-color: var(--animalart-line, #e5e5e5);
}

.site-header__utility-bar {
	min-height: 48px;
}

.site-header__utility-height,
.site-header__utility-link,
.site-header__cart-total {
	color: var(--animalart-ink, #171717);
	font-weight: 900;
}

.site-header__utility-height:hover,
.site-header__utility-height:focus-visible,
.site-header__utility-link:hover,
.site-header__utility-link:focus-visible {
	color: var(--animalart-ink, #171717);
	text-decoration-thickness: 2px;
}

.site-header__row--primary {
	min-height: 132px;
	gap: 20px;
}

.site-header__search > .studioalmadolar-shop-search,
.site-header__mobile-search > .studioalmadolar-shop-search,
.site-header__floating-search-dialog > .studioalmadolar-shop-search {
	border-color: var(--animalart-line, #e5e5e5);
	box-shadow: none;
}

.site-header__search > .studioalmadolar-shop-search:focus-within,
.site-header__mobile-search > .studioalmadolar-shop-search:focus-within,
.site-header__floating-search-dialog > .studioalmadolar-shop-search:focus-within {
	border-color: var(--animalart-ink, #171717);
	box-shadow: 0 0 0 3px rgba(255, 205, 0, 0.28);
}

.site-header__action {
	min-width: 44px;
	min-height: 44px;
	box-sizing: border-box;
	color: var(--animalart-ink, #171717);
}

.site-header__action:hover,
.site-header__action:focus-visible,
.site-header .site-header__action--cart:hover,
.site-header .site-header__action--cart:focus-visible {
	background: var(--animalart-yellow-soft, #fff9d6);
	color: var(--animalart-ink, #171717);
}

.site-header .site-header__action--cart .site-header__action-count {
	background: var(--animalart-yellow, #ffcd00);
	border-color: var(--animalart-ink, #171717);
	color: var(--animalart-ink, #171717);
}

.main-navigation a {
	color: var(--animalart-ink, #171717);
	font-weight: 400;
}

.main-navigation a::after {
	background: var(--animalart-yellow, #ffcd00);
	height: 3px;
}

.cep-widget__trigger {
	background: var(--animalart-paper, #fff);
	border-color: var(--animalart-line, #e5e5e5);
	border-radius: var(--animalart-ui-radius-card, 18px);
}

.cep-widget__trigger:hover,
.cep-widget__trigger:focus-visible {
	border-color: var(--animalart-ink, #171717);
}

/* Search, catalog and product cards -------------------------------------- */
.studioalmadolar-shop-search {
	border-color: var(--animalart-line, #e5e5e5);
	box-shadow: none;
}

.studioalmadolar-shop-search:hover,
.studioalmadolar-shop-search:focus-within {
	border-color: var(--animalart-ink, #171717);
}

.studioalmadolar-shop-search:focus-within {
	box-shadow: 0 0 0 3px rgba(255, 205, 0, 0.28);
}

.studioalmadolar-shop-search__input {
	color: var(--animalart-ink, #171717);
}

.studioalmadolar-shop-search__submit {
	background: var(--animalart-yellow, #ffcd00);
	border-color: var(--animalart-yellow, #ffcd00);
	color: var(--animalart-ink, #171717);
}

.studioalmadolar-shop-search__submit:hover,
.studioalmadolar-shop-search__submit:focus-visible {
	background: var(--animalart-ink, #171717);
	color: var(--animalart-yellow, #ffcd00);
	filter: none;
}

.studioalmadolar-shop-toprow,
.studioalmadolar-shop-catalog {
	width: min(var(--animalart-content-max, 1440px), calc(100% - 4rem));
	margin-inline: auto;
}

.studioalmadolar-shop-catalog {
	gap: clamp(1.5rem, 3vw, 2.5rem);
}

.studioalmadolar-shop-filter-sidebar,
.studioalmadolar-shop-filter-sidebar__header {
	background: var(--animalart-paper, #fff);
	border-color: var(--animalart-line, #e5e5e5);
}

.studioalmadolar-shop-filter-sidebar {
	border-radius: var(--animalart-ui-radius-card, 18px);
	box-shadow: none;
}

.studioalmadolar-shop-filter-sidebar .studioalmadolar-shop-filters__group {
	border-color: var(--animalart-line, #e5e5e5);
}

.studioalmadolar-shop-category-nav__link,
.studioalmadolar-shop-view-toggle {
	border-color: var(--animalart-line, #e5e5e5);
}

.studioalmadolar-shop-category-nav__link:hover,
.studioalmadolar-shop-category-nav__link:focus-visible,
.studioalmadolar-shop-view-toggle__btn:hover,
.studioalmadolar-shop-view-toggle__btn:focus-visible {
	border-color: var(--animalart-ink, #171717);
	background: var(--animalart-yellow-soft, #fff9d6);
}

.woocommerce ul.products li.product.animalart-product-card {
	padding: 0;
	background: transparent;
	border: 0;
	border-radius: 0;
	box-shadow: none;
	transform: none;
}

.woocommerce ul.products li.product.animalart-product-card:hover,
.woocommerce ul.products li.product.animalart-product-card:focus-within {
	border-color: transparent;
	box-shadow: none;
	transform: none;
}

.animalart-product-card__image,
.studioalmadolar-shop-catalog .studioalmadolar-product-card__image {
	background: var(--animalart-surface-muted, #f7f7f7);
	border-radius: var(--animalart-ui-radius-card, 18px);
}

.animalart-product-card__img {
	transition: transform 0.35s var(--animalart-ui-ease, cubic-bezier(0.2, 0.8, 0.2, 1));
}

.animalart-product-card__title {
	margin-top: 1.1rem !important;
	color: var(--animalart-ink, #171717);
	font-family: var(--animalart-font-display, 'Brandon Grotesque', Arial, sans-serif);
	font-size: clamp(1rem, 1.4vw, 1.15rem) !important;
	font-weight: 900;
	letter-spacing: 0.015em;
	line-height: 1.18;
}

.animalart-product-card__price {
	color: var(--animalart-muted, #666);
	font-size: 1rem;
	font-weight: 400;
	line-height: 1.47;
}

.animalart-product-card__price ins {
	color: var(--animalart-ink, #171717);
	font-weight: 900;
}

.animalart-product-card__cta {
	background: var(--animalart-yellow, #ffcd00) !important;
	border-color: var(--animalart-yellow, #ffcd00) !important;
	border-radius: var(--animalart-ui-radius-control, 999px) !important;
	color: var(--animalart-ink, #171717) !important;
	font-family: var(--animalart-font-display, 'Brandon Grotesque', Arial, sans-serif);
	font-weight: 900;
}

.animalart-product-card__cta:hover,
.animalart-product-card__cta:focus-visible {
	background: var(--animalart-ink, #171717) !important;
	border-color: var(--animalart-ink, #171717) !important;
	color: var(--animalart-yellow, #ffcd00) !important;
}

/* Product card parity ----------------------------------------------------- */
/*
 * Padrão único baseado no primeiro card da referência enviada: todos os
 * cards têm a mesma moldura, raio, área de imagem, hierarquia de preço e CTA.
 * A integração de favoritos continua no PHP; somente a sua apresentação é
 * suprimida nos loops de catálogo. A grade de favoritos da conta mantém o
 * controle para que o usuário possa gerenciar a própria lista.
 */
ul.products:not(.studioalmadolar-favorites-grid) li.product.animalart-product-card,
.animalart-reference-products ul.products li.animalart-reference-product-card {
	box-sizing: border-box;
	display: flex;
	flex-direction: column;
	min-width: 0;
	min-height: 292px;
	height: auto;
	padding: 10px 0;
	border: 1px solid var(--animalart-line, #e5e5e5);
	border-radius: var(--animalart-ui-radius-card, 18px);
	background: var(--animalart-paper, #fff);
	box-shadow: none;
	transform: none;
}

ul.products:not(.studioalmadolar-favorites-grid) li.product.animalart-product-card:hover,
ul.products:not(.studioalmadolar-favorites-grid) li.product.animalart-product-card:focus-within,
.animalart-reference-products ul.products li.animalart-reference-product-card:hover,
.animalart-reference-products ul.products li.animalart-reference-product-card:focus-within {
	border-color: var(--animalart-line, #e5e5e5);
	box-shadow: none;
	transform: none;
}

ul.products:not(.studioalmadolar-favorites-grid) li.product.animalart-product-card .animalart-product-card__link,
.animalart-reference-products .animalart-reference-product-card__link {
	display: flex;
	flex: 1 1 auto;
	flex-direction: column;
	min-width: 0;
}

ul.products:not(.studioalmadolar-favorites-grid) li.product.animalart-product-card .animalart-product-card__image,
.animalart-reference-products .animalart-reference-product-card__image {
	flex: 0 0 auto;
	background: var(--animalart-paper, #fff);
	border-radius: 14px;
}

ul.products:not(.studioalmadolar-favorites-grid) li.product.animalart-product-card .animalart-product-card__title,
.animalart-reference-products .animalart-reference-product-card__title {
	margin: 11px 10px 0 !important;
	font-family: var(--animalart-font-body, 'Brandon Grotesque', Arial, sans-serif);
	font-size: 0.9rem !important;
	font-weight: 400;
	letter-spacing: 0;
	line-height: 1.45;
	text-align: center;
	text-transform: none;
}

ul.products:not(.studioalmadolar-favorites-grid) li.product.animalart-product-card .animalart-product-card__price,
.animalart-reference-products .animalart-reference-product-card__price {
	margin-inline: 10px;
	font-family: var(--animalart-font-body, 'Brandon Grotesque', Arial, sans-serif);
	font-size: 0.9rem;
	font-weight: 400;
	line-height: 1.2;
}

ul.products:not(.studioalmadolar-favorites-grid) li.product.animalart-product-card .animalart-product-card__footer,
.animalart-reference-products .animalart-reference-product-card__meta {
	margin-top: auto;
	padding-top: 0.75rem;
}

ul.products:not(.studioalmadolar-favorites-grid) li.product.animalart-product-card .animalart-product-card__cta,
.animalart-reference-products .animalart-reference-product-card__cta {
	min-height: 44px;
	border: 0 !important;
	border-radius: var(--animalart-ui-radius-control, 999px) !important;
	background: var(--animalart-yellow, #ffcd00) !important;
	color: var(--animalart-ink, #171717) !important;
	font-family: var(--animalart-font-display, 'Brandon Grotesque', Arial, sans-serif);
	font-size: 0.62rem !important;
	font-weight: 900;
	letter-spacing: 0.025em;
	line-height: 1;
	text-transform: uppercase;
}

ul.products:not(.studioalmadolar-favorites-grid) li.product.animalart-product-card .animalart-product-card__cta:hover,
ul.products:not(.studioalmadolar-favorites-grid) li.product.animalart-product-card .animalart-product-card__cta:focus-visible,
.animalart-reference-products .animalart-reference-product-card__cta:hover,
.animalart-reference-products .animalart-reference-product-card__cta:focus-visible {
	background: var(--animalart-ink, #171717) !important;
	color: var(--animalart-yellow, #ffcd00) !important;
	filter: none;
	transform: none;
}

/* Composição vertical ----------------------------------------------------- */
/* A ordem visual final é sempre: imagem → título → preço → botão. */
ul.products:not(.studioalmadolar-favorites-grid) li.product.animalart-product-card .animalart-product-card__link,
.animalart-reference-products .animalart-reference-product-card__link {
	display: flex;
	flex-direction: column;
	align-items: stretch;
	justify-content: flex-start;
}

ul.products:not(.studioalmadolar-favorites-grid) li.product.animalart-product-card .animalart-product-card__footer,
.animalart-reference-products .animalart-reference-product-card__meta {
	display: flex;
	flex-direction: column;
	align-items: center;
	justify-content: flex-start;
	width: 100%;
	gap: 0.6rem;
	margin: auto 0 0;
	padding-top: 0.75rem;
}

ul.products:not(.studioalmadolar-favorites-grid) li.product.animalart-product-card .animalart-product-card__cta,
.animalart-reference-products .animalart-reference-product-card__cta {
	width: 90%;
	max-width: 90%;
	min-width: 0;
}

.animalart-reference-products .animalart-reference-product-card__actions {
	display: flex;
	width: 100%;
	max-width: 100%;
	min-width: 0;
	align-items: center;
	justify-content: center;
	gap: 0;
	margin: 0;
}

.animalart-reference-products .animalart-reference-product-card__rating {
	display: none;
}

/* O overlay e o coração não fazem parte do padrão visual de catálogo. Os
 * hooks PHP/JS permanecem intactos e a grade de favoritos da conta mantém
 * seu botão para gerenciamento da lista. */
ul.products:not(.studioalmadolar-favorites-grid) li.product .studioalmadolar-product-card__hover-card,
ul.products:not(.studioalmadolar-favorites-grid) li.product > .studioalmadolar-favorite-btn,
.animalart-reference-products ul.products li.product .studioalmadolar-product-card__hover-card,
.animalart-reference-products ul.products li.product > .studioalmadolar-favorite-btn {
	display: none !important;
	visibility: hidden !important;
	pointer-events: none !important;
}

@media (max-width: 782px) {
	ul.products:not(.studioalmadolar-favorites-grid) li.product.animalart-product-card,
	.animalart-reference-products ul.products li.animalart-reference-product-card {
		min-height: 0;
		padding: 8px 0;
		border-radius: 14px;
	}

	ul.products:not(.studioalmadolar-favorites-grid) li.product.animalart-product-card .animalart-product-card__title,
	.animalart-reference-products .animalart-reference-product-card__title {
		font-size: 0.86rem !important;
	}

	ul.products:not(.studioalmadolar-favorites-grid) li.product.animalart-product-card .animalart-product-card__price {
		text-align: center;
	}

	ul.products:not(.studioalmadolar-favorites-grid) li.product.animalart-product-card .animalart-product-card__cta,
	.animalart-reference-products .animalart-reference-product-card__cta {
		width: 90%;
		max-width: 90%;
		min-height: 44px;
	}
}

/* Cards de produto no single --------------------------------------------- */
/*
 * `shop.css` só é carregado em arquivos de loja. Os loops nativos de
 * relacionados e upsells do produto individual continuam usando o mesmo
 * template compartilhado, mas precisam de uma base visual local para não
 * depender de regras que não foram enfileiradas nesse contexto.
 *
 * Esta camada completa somente os primitives ausentes (link, área de imagem
 * e imagem). Moldura, tipografia, espaçamento, CTA, foco e breakpoints já
 * são herdados das regras globais acima. O PHP e os hooks do WooCommerce
 * permanecem intactos.
 */
.single-product .related ul.products > li.product.animalart-product-card .animalart-product-card__link,
.single-product .up-sells ul.products > li.product.animalart-product-card .animalart-product-card__link {
	box-sizing: border-box;
	color: var(--animalart-ink, #171717);
	text-decoration: none;
}

.single-product .related ul.products > li.product.animalart-product-card .animalart-product-card__image,
.single-product .up-sells ul.products > li.product.animalart-product-card .animalart-product-card__image {
	position: relative;
	display: grid;
	place-items: center;
	aspect-ratio: 1;
	overflow: hidden;
	width: 100%;
	max-width: 100%;
	background: var(--animalart-paper, #fff);
	border-radius: 14px;
}

.single-product .related ul.products > li.product.animalart-product-card .animalart-product-card__img,
.single-product .up-sells ul.products > li.product.animalart-product-card .animalart-product-card__img {
	display: block;
	width: 100%;
	height: 100%;
	max-width: 100%;
	margin: 0 !important;
	object-fit: contain;
}

/* Footer and pre-footer --------------------------------------------------- */
.studioalmadolar-pre-footer {
	border-top-color: var(--animalart-line, #e5e5e5);
}

.studioalmadolar-pre-footer__benefits {
	background: var(--animalart-paper, #fff);
	border-bottom-color: var(--animalart-line, #e5e5e5);
}

.studioalmadolar-pre-footer__benefits-inner {
	max-width: var(--animalart-content-max, 1440px);
}

.studioalmadolar-pre-footer__benefit-icon {
	color: var(--animalart-yellow, #ffcd00);
}

.studioalmadolar-pre-footer__benefit-title,
.studioalmadolar-pre-footer__newsletter-title {
	font-family: var(--animalart-font-display, 'Brandon Grotesque', Arial, sans-serif);
	font-weight: 900;
}

.studioalmadolar-pre-footer__benefit-description,
.studioalmadolar-pre-footer__newsletter-text {
	line-height: 1.55;
}

.studioalmadolar-pre-footer__newsletter {
	background: var(--animalart-surface-muted, #f7f7f7);
}

.studioalmadolar-pre-footer__newsletter-form input[type='email'],
.studioalmadolar-pre-footer__newsletter-form input[type='text'] {
	border-bottom-color: var(--animalart-line-strong, rgba(23, 23, 23, 0.28));
}

.studioalmadolar-pre-footer__newsletter-form .forminator-button,
.studioalmadolar-pre-footer__newsletter-form button[type='submit'] {
	background: var(--animalart-yellow, #ffcd00);
	border-color: var(--animalart-yellow, #ffcd00);
	color: var(--animalart-ink, #171717);
}

.studioalmadolar-pre-footer__newsletter-form .forminator-button:hover,
.studioalmadolar-pre-footer__newsletter-form button[type='submit']:hover,
.studioalmadolar-pre-footer__newsletter-form .forminator-button:focus-visible,
.studioalmadolar-pre-footer__newsletter-form button[type='submit']:focus-visible {
	background: var(--animalart-ink, #171717);
	border-color: var(--animalart-ink, #171717);
	color: var(--animalart-yellow, #ffcd00);
	filter: none;
}

.site-footer {
	background: var(--animalart-surface-muted, #f7f7f7);
	border-top-color: var(--animalart-line, #e5e5e5);
}

.site-footer__main {
	max-width: var(--animalart-content-max, 1440px);
}

.site-footer__menu-title {
	font-weight: 900;
}

.site-footer__menu-slot a {
	color: var(--animalart-ink, #171717);
}

.site-footer__menu-slot a:hover,
.site-footer__menu-slot a:focus-visible {
	color: var(--animalart-ink, #171717);
	text-decoration-thickness: 2px;
}

.site-footer__account-button {
	background: var(--animalart-yellow, #ffcd00);
	border-color: var(--animalart-yellow, #ffcd00);
	color: var(--animalart-ink, #171717);
	font-family: var(--animalart-font-display, 'Brandon Grotesque', Arial, sans-serif);
	font-weight: 900;
}

.site-footer__account-button:hover,
.site-footer__account-button:focus-visible {
	background: var(--animalart-ink, #171717);
	border-color: var(--animalart-ink, #171717);
	color: var(--animalart-yellow, #ffcd00);
}

.site-footer__bottom {
	background: var(--animalart-paper, #fff);
	border-top-color: var(--animalart-line, #e5e5e5);
}

/* Floating widgets stay independent; only their shared chrome is quieted. */
.studioalmadolar-minicart-fab {
	background: var(--animalart-ink, #171717);
	border: 2px solid var(--animalart-paper, #fff);
	box-shadow: none;
}

.studioalmadolar-minicart-fab:hover,
.studioalmadolar-minicart-fab:focus-visible {
	background: var(--animalart-yellow, #ffcd00);
	color: var(--animalart-ink, #171717);
	filter: none;
}

.studioalmadolar-minicart__panel {
	border-left: 1px solid var(--animalart-line, #e5e5e5);
	box-shadow: none;
}

.studioalmadolar-whatsapp-fab {
	border: 2px solid var(--animalart-paper, #fff);
	box-shadow: none;
}

/* Responsive rhythm ------------------------------------------------------ */
@media (max-width: 1068px) {
	.page-container {
		padding-block: clamp(3rem, 7vw, 5rem);
	}

	.studioalmadolar-shop-toprow,
	.studioalmadolar-shop-catalog {
		width: min(var(--animalart-content-max, 1440px), calc(100% - 3rem));
	}
}

@media (max-width: 833px) {
	.animalart-page-shell__header {
		margin-bottom: 3rem;
	}

	.studioalmadolar-shop-toprow,
	.studioalmadolar-shop-catalog {
		width: calc(100% - 2rem);
	}
}

@media (max-width: 640px) {
	body {
		font-size: 15px;
	}

	.page-container {
		padding: 3rem 1rem;
	}

	.page-container__title,
	.animalart-page-shell__header .page-container__title {
		font-size: clamp(2rem, 9vw, 2.8rem);
	}

	.page-container__content,
	.animalart-page-shell__content {
		font-size: 1rem;
	}

	.studioalmadolar-shop-toprow,
	.studioalmadolar-shop-catalog {
		width: calc(100% - 2rem);
	}

	.animalart-product-card__image,
	.studioalmadolar-shop-catalog .studioalmadolar-product-card__image {
		border-radius: 14px;
	}
}

@media (max-width: 480px) {
	.animalart-page-shell__header {
		margin-bottom: 2.5rem;
	}

	.site-footer__account-button {
		min-height: 44px;
	}
}

@supports (overflow: clip) {
	html,
	body {
		overflow-x: clip;
	}
}

@media (prefers-reduced-motion: reduce) {
	html {
		scroll-behavior: auto;
	}

	:is(a, button, input, select, textarea),
	.animalart-product-card__img,
	.studioalmadolar-minicart-fab,
	.studioalmadolar-whatsapp-fab {
		transition: none;
	}
}

/* Rings original parity: this scoped guard runs after the global card refresh
 * so the legacy listing can keep its flat, compact card composition. */
.animalart-rings-original-products ul.products:not(.studioalmadolar-favorites-grid) li.product.animalart-rings-product-card {
	min-height: 557px;
	padding: 0 10px 28px;
	border: 0 !important;
	border-radius: 0 !important;
	background: transparent !important;
	box-shadow: none !important;
	transform: none !important;
}

.animalart-rings-original-products ul.products:not(.studioalmadolar-favorites-grid) li.product.animalart-rings-product-card:hover,
.animalart-rings-original-products ul.products:not(.studioalmadolar-favorites-grid) li.product.animalart-rings-product-card:focus-within {
	border: 0 !important;
	box-shadow: none !important;
	transform: none !important;
}

.animalart-rings-original-products ul.products li.product.animalart-rings-product-card .animalart-rings-product-card__link {
	flex: 0 0 auto !important;
}

.animalart-rings-original-products ul.products li.product.animalart-rings-product-card .animalart-rings-product-card__image {
	background: transparent !important;
	border-radius: 0 !important;
}

.animalart-rings-original-products ul.products li.product.animalart-rings-product-card .animalart-rings-product-card__title {
	margin: 4px 0 0 !important;
	font-family: var(--animalart-font-body, 'Brandon Grotesque', Arial, sans-serif) !important;
	font-size: 0.86rem !important;
	font-weight: 400 !important;
	line-height: 1.25;
	text-align: center;
	text-transform: none;
}

.animalart-rings-original-products ul.products li.product.animalart-rings-product-card .animalart-rings-product-card__price {
	margin: 4px 0 0 !important;
	font-family: var(--animalart-font-body, 'Brandon Grotesque', Arial, sans-serif) !important;
	font-size: 0.9rem !important;
	font-weight: 400 !important;
	line-height: 1.2;
	text-align: center;
}

@media (max-width: 782px) {
	.animalart-rings-original-products ul.products:not(.studioalmadolar-favorites-grid) li.product.animalart-rings-product-card {
		min-height: 520px;
		padding: 0 10px 28px;
		border-radius: 0 !important;
	}
}

@media (max-width: 600px) {
	.animalart-rings-original-products ul.products:not(.studioalmadolar-favorites-grid) li.product.animalart-rings-product-card {
		min-height: 410px;
		padding-inline: 4px;
	}
}

@media (max-width: 380px) {
	.animalart-rings-original-products ul.products:not(.studioalmadolar-favorites-grid) li.product.animalart-rings-product-card {
		min-height: 0;
		padding-bottom: 34px;
	}
}
