@media (max-width: 640px) {
	/* Cabecera: conserva cinco accesos claros sin consumir media pantalla. */
	.navbar {
		padding: 6px 0;
	}

	.container-fluid {
		position: relative;
		display: block;
		min-height: 138px;
		padding-right: 8px;
		padding-left: 8px;
	}

	.logo {
		top: 25px;
	}

	.logo > a > img {
		width: 120px;
	}

	.nav-btns {
		top: 7px;
		right: 4px;
		gap: .2rem;
	}

	.nav-btns > div,
	.nav-btns > divv {
		width: 44px;
		height: 44px;
		display: flex;
		align-items: center;
		justify-content: center;
		padding: 0;
	}

	.nav-btns > div > a,
	.nav-btns > divv > div {
		width: 100%;
		height: 100%;
		display: flex;
		align-items: center;
		justify-content: center;
	}

	.nav-btns img {
		height: 22px;
	}

	.lemare-composer-resume-link {
		top: 55px;
		right: 6px;
		bottom: auto;
		width: 128px;
		padding: 5px 7px;
		font-size: 10px;
		line-height: 1.08;
	}

	.offcanvasNavbar {
		top: 103px;
	}

	.navbar-nav > div > a {
		min-height: 44px;
		align-items: center;
		padding: 7px 5px;
		font-size: clamp(15px, 4.1vw, 17px);
		white-space: nowrap;
	}

	.lemare-cart-count {
		top: -8px;
		right: -9px;
	}

	/* Compensa la cabecera fija en todas las rutas públicas incluidas. */
	.banner_lemare {
		padding-top: 150px;
	}

	.lemare-featured-collections {
		padding: 158px 12px 14px;
	}

	.lemare-collection-intro,
	.lemare-collection-detail {
		margin-top: 158px;
	}

	.lemare-product-main,
	.lemare-standard-page {
		padding: 158px 14px 40px;
	}

	.woocommerce-account .lemare-standard-page {
		padding-top: 168px;
	}

	.hero-figure {
		margin-top: 150px;
	}

	/* Inicio: contenido escaneable, sin huecos de texto ni repeticiones gigantes. */
	.banner_lemare > img {
		height: min(54vw, 210px);
		object-fit: cover;
	}

	.container-text-center > h3 {
		margin: .65rem 0;
		font-size: 1.05rem;
		letter-spacing: .16em;
	}

	.container-text-center > h3 > span > span > span {
		padding: 0 1.35rem;
	}

	.container-2 > div > div {
		padding: 0;
	}

	.container-2 > div > div > div {
		width: calc(100% - 40px);
		padding: 24px 0;
	}

	.container-2 > div > div > div > span {
		font-size: .9rem;
		letter-spacing: .08em;
	}

	.container-2 > div > div > div > img {
		width: min(235px, 78%);
		margin-bottom: 1rem;
	}

	.container-2 > div > div > div > h4 {
		margin-bottom: .9rem;
		font-size: 1.05rem;
		font-weight: 500;
		line-height: 1.48;
		text-align: left;
	}

	.container-2 > div > div > div > h4:last-child {
		margin: 0;
		font-size: .98rem;
		font-style: italic;
	}

	.container-2 > div > divv {
		display: none;
	}

	.container-4prod,
	.container-prducts {
		padding: 18px 12px;
	}

	.container-4prod > div,
	.lemare-featured-collections > div,
	.row1,
	.row2-2,
	.lemare-category-cards,
	.lemare-momentos-more .lemare-category-cards {
		display: grid;
		grid-template-columns: repeat(2, minmax(0, 1fr));
		gap: 10px;
	}

	.container-4prod > div > a > div,
	.lemare-featured-collections > div > a > div,
	.row1 > a > div,
	.row2-1 > div,
	.row2-2 > a > div,
	.lemare-category-cards > div > a > div {
		padding: 0 0 12px;
		border-radius: 12px;
	}

	.container-4prod img,
	.lemare-featured-collections img,
	.row1 img,
	.row2 img,
	.lemare-category-cards img {
		margin-bottom: 8px;
	}

	.container-4prod h5,
	.lemare-featured-collections h5,
	.row1 h5,
	.row2 h5,
	.lemare-category-cards h5 {
		min-height: 2.4em;
		margin: 0 8px 4px;
		font-size: .95rem;
		line-height: 1.2;
	}

	.container-4prod span,
	.lemare-featured-collections span,
	.row1 span,
	.row2 span,
	.lemare-category-cards span {
		font-size: 1.15rem;
	}

	.container-prducts > h2 {
		margin-bottom: 12px;
		font-size: 1.25rem;
		letter-spacing: .14em;
		text-align: left;
	}

	.container-prducts .row1 {
		margin: 0;
		padding: 0;
	}

	.container-prducts .row2,
	.container-prducts .row1 ~ .row1 {
		display: none;
	}

	.row-video > div > div {
		gap: 14px;
		padding: 18px;
	}

	.row-video video {
		max-height: 240px;
	}

	.row-video-logo {
		display: none;
	}

	.row-video-copy {
		width: 100%;
	}

	.row-video p {
		margin: 0 0 12px;
		font-size: 1rem;
		line-height: 1.55;
		text-align: left;
	}

	.row-color {
		grid-template-columns: 1fr;
	}

	.row-color > div > div {
		width: auto;
		padding: 24px 20px;
		align-items: flex-start;
	}

	.row-color h2 {
		font-size: 1.65rem;
		letter-spacing: .12em;
	}

	.row-color p {
		font-size: 1rem;
		line-height: 1.5;
		text-align: left;
	}

	.row-color > div > div > div {
		width: 70px;
	}

	/* Álbumes: dos opciones comparables por fila y paneles de colección compactos. */
	.container-4prod > div > a:last-child,
	.lemare-featured-collections > div > a:last-child {
		grid-column: 1 / -1;
		width: calc(50% - 5px);
		justify-self: center;
	}

	.row-1 {
		grid-template-columns: 1fr;
		gap: 12px;
		margin: 12px;
		padding: 0 0 14px;
	}

	.row-1.is-first {
		margin-top: 12px;
	}

	/* Travel: en móvil la foto de colección presenta sus modelos, como Rayas y Momentos. */
	.lemare-category-row.is-first + .lemare-category-row > div:nth-child(2) {
		order: -1;
	}

	.lemare-category-panel {
		min-height: 210px;
		border-radius: 12px;
	}

	.lemare-category-panel > span {
		padding: 10px;
		font-size: 1.2rem;
		letter-spacing: .16em;
	}

	.lemare-category-copy {
		padding: 14px 0;
	}

	.lemare-category-copy p {
		font-size: 1rem;
		line-height: 1.5;
		text-align: left;
	}

	/* Colecciones: primero la decisión Basic/Premium y después la explicación. */
	.lemare-collection-intro {
		margin-bottom: 14px;
		padding: 0 18px;
	}

	.lemare-collection-intro p {
		margin: 0;
		font-size: 1rem;
		line-height: 1.48;
	}

	.lemare-collection-intro + .lemare-collection-detail {
		margin-top: 0;
	}

	.lemare-collection-detail {
		margin-right: 14px;
		margin-bottom: 28px;
		margin-left: 14px;
	}

	.lemare-collection-detail > div {
		display: grid;
		grid-template-columns: repeat(2, minmax(0, 1fr));
		gap: 12px;
	}

	.lemare-collection-detail article {
		min-width: 0;
		gap: 8px;
		transition: none;
	}

	.lemare-collection-detail article.is-mobile-expanded {
		grid-column: 1 / -1;
		padding: 12px;
		border: 1px solid rgb(141 140 96 / .22);
		background: #faf6ed;
	}

	.lemare-collection-action {
		width: 100%;
		flex-direction: column;
		gap: 5px;
	}

	.option-badge {
		width: 100%;
		min-height: 44px;
		padding: 9px 7px;
		font-size: .82rem;
	}

	.option-cta {
		font-size: .82rem;
		line-height: 1.25;
		text-align: center;
	}

	.lemare-collection-image {
		width: 100%;
		border-radius: 12px;
	}

	.lemare-collection-detail article.is-mobile-expanded .lemare-collection-image {
		width: min(260px, 78vw);
	}

	.stamp0,
	.stamp1 {
		width: 72px !important;
	}

	.lemare-collection-detail h3 {
		min-height: 2.4em;
		display: flex;
		align-items: center;
		justify-content: center;
		margin: 8px 0;
		font-size: .98rem;
		letter-spacing: .12em;
		line-height: 1.2;
	}

	.lemare-collection-detail-finishes .lemare-collection-copy {
		width: 100%;
	}

	.lemare-collection-detail-finishes .lemare-collection-copy p,
	.lemare-collection-copy p {
		margin: 0 0 10px;
		font-size: .98rem;
		line-height: 1.55;
		text-align: left;
		text-align-last: auto;
	}

	.lemare-collection-detail article.is-mobile-expanded .lemare-collection-copy p {
		font-size: 1rem;
		line-height: 1.6;
	}

	.lemare-mobile-disclosure {
		margin-top: 8px;
		border-top: 1px solid rgb(141 140 96 / .25);
	}

	.lemare-mobile-disclosure > summary {
		display: flex;
		align-items: center;
		justify-content: space-between;
		min-height: 44px;
		color: var(--lemare-green-dark);
		cursor: pointer;
		font-family: GaramondPro-Regular, serif;
		font-size: .95rem;
		font-style: italic;
		list-style: none;
	}

	.lemare-mobile-disclosure > summary::-webkit-details-marker {
		display: none;
	}

	.lemare-mobile-disclosure > summary::after {
		content: "+";
		font-family: Montserrat-Regular, sans-serif;
		font-size: 1.15rem;
		font-style: normal;
	}

	.lemare-mobile-disclosure[open] > summary::after {
		content: "−";
	}

	.lemare-mobile-disclosure > :not(summary) {
		margin-top: 8px;
	}

	.lemare-collection-open-albums-image {
		display: none;
	}

	.lemare-revista-footer {
		width: calc(100% - 24px);
		display: block;
		margin: 24px auto 32px;
		border-radius: 12px;
	}

	/* Ficha: la decisión de compra precede a la galería y a los detalles. */
	.lemare-product-breadcrumb {
		margin-bottom: 10px;
		font-size: .9rem;
	}

	.lemare-product-layout {
		display: flex;
		flex-direction: column;
		gap: 10px;
	}

	.lemare-product-page5 .lemare-product-layout {
		gap: 10px;
	}

	.lemare-product-summary {
		display: contents;
	}

	.lemare-product-kicker {
		order: 1;
		margin: 0;
		font-size: .95rem;
	}

	.lemare-product-summary h1 {
		order: 2;
		font-size: 1.55rem;
		letter-spacing: .12em;
		line-height: 1.12;
	}

	.lemare-product-price {
		order: 3;
		margin-top: 0;
		margin-bottom: 8px;
		font-size: 1.15rem;
	}

	.lemare-product-short {
		order: 4;
		margin: 0;
		font-size: 1rem;
		line-height: 1.5;
	}

	.lemare-product-form {
		margin: 0;
		padding: 0;
		border-top: 0;
	}

	.lemare-mobile-purchase-panel {
		order: 5;
		width: 100%;
		margin-top: 4px;
		padding: 14px;
		border: 1px solid rgb(141 140 96 / .25);
		background: #faf6ed;
	}

	.lemare-mobile-purchase-panel > h2 {
		margin: 0 0 12px;
		color: var(--lemare-green);
		font-family: GaramondPro-Regular, serif;
		font-size: 1.08rem;
		font-weight: 500;
		letter-spacing: .14em;
		text-transform: uppercase;
	}

	.lemare-size-options {
		margin-bottom: 10px;
	}

	.lemare-size-options > span {
		margin-bottom: 7px;
		font-size: 1rem;
	}

	.lemare-size-options > div {
		grid-template-columns: repeat(auto-fit, minmax(92px, 1fr));
		gap: 7px;
	}

	.lemare-size-option {
		min-height: 44px;
		padding: 7px 9px;
		font-size: .82rem;
	}

	.lemare-design-options {
		margin: 12px 0 0;
		padding: 12px;
		background: #fff;
	}

	.lemare-mobile-purchase-panel > .lemare-design-options {
		display: none;
	}

	.lemare-design-options-head {
		margin-bottom: 8px;
		font-size: .98rem;
	}

	.lemare-revista-product-page .lemare-design-categories {
		grid-template-columns: repeat(2, minmax(0, 1fr));
		gap: 6px;
		margin-bottom: 9px;
	}

	.lemare-revista-product-page .lemare-design-category-tab {
		min-height: 42px;
		padding: 7px 9px;
		font-size: .65rem;
	}

	.lemare-revista-product-page .lemare-design-options-grid {
		grid-template-columns: repeat(2, minmax(0, 1fr));
		gap: 7px;
	}

	.lemare-design-option {
		min-height: 40px;
		font-size: .74rem;
	}

	.lemare-composer-entry {
		order: 6;
		position: sticky;
		bottom: 8px;
		z-index: 15;
		width: 100%;
		margin: 0 !important;
		padding: 6px;
		background: #fff;
		box-shadow: 0 10px 30px rgb(23 23 23 / .16);
	}

	.lemare-product-page .lemare-composer-entry a {
		width: 100% !important;
		min-height: 46px;
		font-size: .9rem;
		letter-spacing: .14em;
		white-space: normal;
	}

	.lemare-product-gallery {
		order: 6;
		margin-top: 6px;
	}

	.lemare-mobile-gallery-title {
		width: min(300px, 100%);
		margin: 0 auto 9px;
		color: var(--lemare-green);
		font-family: GaramondPro-Regular, serif;
		font-size: 1.08rem;
		font-weight: 500;
		letter-spacing: .14em;
		text-transform: uppercase;
	}

	.lemare-product-hero-image {
		position: relative;
		width: min(300px, 100%);
		margin: 0 auto;
		border-radius: 14px;
	}

	.lemare-product-hero-image > .lemare-composer-entry {
		position: absolute;
		left: 10px;
		right: 10px;
		bottom: 10px;
		z-index: 3;
		width: auto;
		margin: 0 !important;
		padding: 0;
		background: transparent;
		box-shadow: none;
	}

	.lemare-product-hero-image > .lemare-composer-entry a {
		min-height: 44px;
	}

	.lemare-product-thumbs-carousel {
		gap: 6px;
		margin-top: 8px;
	}

	.lemare-product-thumbs {
		grid-template-columns: repeat(4, minmax(0, 1fr));
		gap: 6px;
	}

	.lemare-product-thumbs-nav {
		width: 44px;
		height: 44px;
	}

	.lemare-product-description {
		order: 7;
		width: 100%;
		margin-top: 12px;
		padding-top: 0;
		border-top: 0;
		font-size: .96rem;
		line-height: 1.55;
	}

	.lemare-product-description .lemare-mobile-disclosure {
		width: 100%;
		margin: 0;
		border-top: 1px solid rgb(141 140 96 / .25);
		border-bottom: 1px solid rgb(141 140 96 / .25);
	}

	.lemare-product-description .lemare-mobile-disclosure > summary {
		width: 100%;
		padding: 2px 0;
	}

	.lemare-product-description h2 {
		font-size: 1.2rem;
		letter-spacing: .16em;
	}

	.lemare-product-similar {
		margin-top: 28px;
	}

	.lemare-product-similar h2 {
		font-size: 1.2rem;
		letter-spacing: .14em;
	}

	.lemare-product-similar-grid {
		grid-template-columns: repeat(2, minmax(0, 1fr));
		gap: 10px;
	}

	.lemare-product-similar-card {
		border-radius: 12px;
	}

	.lemare-product-similar-card-body {
		padding: 9px;
	}

	.lemare-product-similar-card h3 {
		font-size: 1rem;
	}

	.lemare-product-similar-card p {
		font-size: .72rem;
	}

	/* Quiénes somos y páginas generales. */
	.hero-figure > img {
		height: 180px;
		object-fit: cover;
	}

	.hero-figure span {
		max-width: 320px;
		font-size: 14px;
		line-height: 1.4;
		letter-spacing: .22em;
		white-space: normal;
	}

	.hero-figure spann {
		font-size: 15px;
	}

	.lemare-about-intro {
		padding: 24px 18px;
	}

	.lemare-about-intro > img {
		width: 125px;
		margin-bottom: 10px;
	}

	.lemare-about-intro h2,
	.lemare-standard-page h1 {
		font-size: 1.55rem;
		letter-spacing: .14em;
	}

	.lemare-about-intro p,
	.lemare-standard-page,
	.lemare-page-content {
		font-size: 1rem;
		line-height: 1.55;
	}

	.lemare-about-intro p {
		width: 100%;
		text-align: left;
	}

	.lemare-revistas-intro p {
		font-size: 1rem;
		line-height: 1.55;
	}

	.lemare-about-grid {
		grid-template-columns: repeat(2, minmax(0, 1fr));
		gap: 8px;
		padding: 8px;
	}

	.lemare-about-grid img:last-child {
		grid-column: 1 / -1;
		max-height: 240px;
	}

	.woocommerce-account .woocommerce form.login,
	.woocommerce-account .woocommerce form.register,
	.woocommerce-account .woocommerce-MyAccount-content {
		padding: 18px;
		border-radius: 12px;
	}

	/* Landing Copias: dos decisiones compactas y una entrada inequívoca al pedido clásico. */
	body.tax-product_cat.term-copias .lemare-copias {
		padding: 158px 14px 32px;
	}

	body.tax-product_cat.term-copias .lemare-copias > div {
		grid-template-columns: repeat(2, minmax(0, 1fr));
		gap: 10px;
	}

	body.tax-product_cat.term-copias .lemare-copias article {
		height: 100%;
		display: flex;
		flex-direction: column;
		overflow: hidden;
		border: 1px solid rgb(141 140 96 / .2);
		border-radius: 14px;
		background: #faf6ed;
	}

	body.tax-product_cat.term-copias .lemare-copias figure {
		height: 132px;
		border-radius: 0;
	}

	body.tax-product_cat.term-copias .lemare-copias h4 {
		min-height: 2.4em;
		display: flex;
		align-items: center;
		margin: 11px 10px 6px;
		font-size: .92rem;
		letter-spacing: .12em;
		line-height: 1.2;
		text-align: center;
	}

	body.tax-product_cat.term-copias .lemare-copias p {
		max-width: none;
		margin: 0;
		padding: 0 10px 10px;
		font-size: .78rem;
		line-height: 1.4;
		text-align: left;
	}

	.lemare-copias-mobile-cta,
	.lemare-copias-mobile-status {
		display: flex;
		align-items: center;
		justify-content: center;
		min-height: 48px;
		margin: auto 10px 10px;
		padding: 8px;
		border: 1px solid var(--lemare-green);
		font-family: Montserrat-Regular, sans-serif;
		font-size: .68rem;
		font-weight: 700;
		letter-spacing: .08em;
		text-align: center;
		text-transform: uppercase;
	}

	.lemare-copias-mobile-cta {
		background: var(--lemare-green);
		color: #fff;
	}

	.lemare-copias-mobile-cta::after {
		content: "→";
		margin-left: 8px;
	}

	.lemare-copias-mobile-status {
		border-color: rgb(141 140 96 / .28);
		color: var(--lemare-green-dark);
		background: #fff;
	}

	/* Footer general móvil: contacto directo y dos grupos plegables. */
	.footer_lemare.is-mobile-simplified {
		display: block;
		padding: 10px 12px 8px;
		font-family: Montserrat-Regular, sans-serif;
		font-size: .8rem;
		text-align: left;
	}

	.lemare-mobile-footer-contact {
		display: grid;
		grid-template-columns: minmax(105px, 1.15fr) repeat(2, minmax(0, 1fr));
		align-items: center;
		gap: 6px;
		width: 100%;
		padding-bottom: 8px;
	}

	.lemare-mobile-footer-logo {
		display: flex;
		align-items: center;
		justify-content: flex-start;
		min-width: 0;
		min-height: 44px;
	}

	.lemare-mobile-footer-logo img {
		display: block;
		width: min(100%, 118px);
		height: 42px;
		object-fit: contain;
		object-position: left center;
		filter: brightness(0) invert(1);
	}

	.lemare-mobile-footer-contact a:not(.lemare-mobile-footer-logo) {
		display: flex;
		align-items: center;
		justify-content: center;
		min-height: 44px;
		padding: 7px 6px;
		border: 1px solid rgb(255 255 255 / .45);
		border-radius: 9px;
		font-weight: 700;
		font-size: .72rem;
		letter-spacing: .025em;
		text-transform: uppercase;
	}

	.lemare-mobile-footer-links {
		display: grid;
		grid-template-columns: repeat(2, minmax(0, 1fr));
		width: 100%;
		border-top: 1px solid rgb(255 255 255 / .3);
	}

	.lemare-mobile-footer-group {
		margin: 0;
		min-width: 0;
	}

	.lemare-mobile-footer-group + .lemare-mobile-footer-group {
		border-left: 1px solid rgb(255 255 255 / .3);
	}

	.lemare-mobile-footer-group summary {
		position: relative;
		display: flex;
		align-items: center;
		justify-content: center;
		min-height: 44px;
		padding: 7px 28px 7px 8px;
		font-weight: 700;
		letter-spacing: .04em;
		list-style: none;
		cursor: pointer;
	}

	.lemare-mobile-footer-group summary::-webkit-details-marker {
		display: none;
	}

	.lemare-mobile-footer-group summary::after {
		content: "+";
		position: absolute;
		right: 9px;
		font-size: 1.2rem;
		font-weight: 400;
	}

	.lemare-mobile-footer-group[open] summary::after {
		content: "−";
	}

	.lemare-mobile-footer-group nav {
		display: grid;
		padding: 0 8px 6px;
	}

	.lemare-mobile-footer-group nav a {
		display: flex;
		align-items: center;
		min-height: 44px;
		padding: 6px 0;
		border-top: 1px solid rgb(255 255 255 / .22);
	}

	.lemare-mobile-footer-copy {
		margin: 5px 0 0;
		padding-top: 7px;
		border-top: 1px solid rgb(255 255 255 / .3);
		font-size: .7rem;
		letter-spacing: .05em;
		text-transform: uppercase;
	}
}
