/*
 * CognitiShop - Propriete ITaiB.fr.
 * Copyright (c) 2026 ITaiB.fr. Tous droits reserves.
 * Logiciel proprietaire et confidentiel.
 */

body.cs-public-encros .cs-encros-menu-toggle,
body.cs-public-encros .cs-encros-mobile-drawer-head,
body.cs-public-encros .cs-encros-mobile-search,
body.cs-public-encros .cs-encros-menu-backdrop {
	display: none;
}

@media (min-width: 761px) {
	body.cs-public-encros .cs-encros-nav .cs-encros-mobile-search,
	body.cs-public-encros.home-v33 .cs-encros-nav .cs-encros-mobile-search {
		display: none !important;
	}
}

@media (max-width: 760px) {
	html,
	body.cs-public-encros {
		width: 100%;
		max-width: 100%;
		overflow-x: hidden;
	}

	body.cs-public-encros[data-encros-menu-open="true"] {
		overflow: hidden;
		touch-action: none;
	}

	body.cs-public-encros .cs-encros-header {
		position: sticky;
		top: 0;
		z-index: 95;
		border-bottom-color: rgba(134, 189, 0, 0.22);
		background: rgba(255, 255, 255, 0.98);
		backdrop-filter: blur(10px);
	}

	body.cs-public-encros .cs-encros-topbar {
		display: block;
		padding: 7px 12px;
		font-size: 0.78rem;
		line-height: 1.25;
	}

	body.cs-public-encros .cs-encros-topbar > div:first-child {
		display: block;
		white-space: nowrap;
		overflow: hidden;
		text-overflow: ellipsis;
	}

	body.cs-public-encros .cs-encros-mini-links {
		display: none;
	}

	body.cs-public-encros .cs-encros-mainbar,
	body.cs-public-encros.home-v33 .cs-encros-mainbar {
		display: grid !important;
		grid-template-columns: minmax(116px, 1fr) auto auto !important;
		gap: 8px !important;
		align-items: center !important;
		width: 100% !important;
		max-width: 100vw !important;
		margin: 0 !important;
		padding: 10px 12px !important;
	}

	body.cs-public-encros .cs-encros-logo img {
		width: auto !important;
		max-width: 158px !important;
		height: 44px !important;
		object-fit: contain !important;
	}

	body.cs-public-encros .cs-encros-mainbar > .cs-encros-search,
	body.cs-public-encros.home-v33 .cs-encros-mainbar > .cs-encros-search,
	body.cs-public-encros .cs-encros-phone {
		display: none !important;
	}

	body.cs-public-encros .cs-encros-actions {
		justify-content: flex-end !important;
		gap: 6px !important;
	}

	body.cs-public-encros .cs-encros-actions a {
		position: relative;
		display: inline-flex !important;
		justify-content: center !important;
		width: 42px !important;
		min-width: 42px !important;
		min-height: 42px !important;
		padding: 0 !important;
		border-radius: 999px !important;
	}

	body.cs-public-encros .cs-encros-actions a::before {
		margin: 0 !important;
	}

	body.cs-public-encros .cs-encros-actions strong,
	body.cs-public-encros .cs-encros-actions span {
		position: absolute !important;
		width: 1px !important;
		height: 1px !important;
		overflow: hidden !important;
		clip: rect(0 0 0 0) !important;
		white-space: nowrap !important;
	}

	body.cs-public-encros .cs-encros-actions a[data-encros-client-action="cart"]::after {
		position: absolute;
		top: -4px;
		right: -2px;
		display: inline-flex !important;
		min-width: 18px;
		height: 18px;
		font-size: 0.66rem;
	}

	body.cs-public-encros .cs-encros-menu-toggle {
		display: inline-grid;
		place-items: center;
		gap: 2px;
		width: 42px;
		min-width: 42px;
		height: 42px;
		border: 1px solid var(--cs-encros-line);
		border-radius: 999px;
		background: #ffffff;
		color: var(--cs-encros-ink);
		box-shadow: 0 8px 18px rgba(39, 97, 12, 0.08);
		cursor: pointer;
	}

	body.cs-public-encros .cs-encros-menu-toggle-lines {
		display: grid;
		gap: 3px;
		width: 18px;
	}

	body.cs-public-encros .cs-encros-menu-toggle-lines span {
		display: block;
		height: 2px;
		border-radius: 999px;
		background: currentColor;
	}

	body.cs-public-encros .cs-encros-menu-toggle-label {
		font-size: 0.58rem;
		font-weight: 900;
		line-height: 1;
	}

	body.cs-public-encros .cs-encros-nav[data-encros-mobile-drawer] {
		position: fixed;
		top: 0;
		right: 0;
		bottom: 0;
		z-index: 120;
		display: flex;
		flex-direction: column;
		gap: 10px;
		width: min(88vw, 370px);
		height: 100dvh;
		max-width: 100vw;
		padding: 14px;
		border: 0;
		background: #ffffff;
		box-shadow: -24px 0 55px rgba(23, 33, 18, 0.28);
		overflow-y: auto;
		overscroll-behavior: contain;
		visibility: hidden;
		pointer-events: none;
		transform: translateX(104%);
		transition: transform 180ms ease, visibility 180ms ease;
	}

	body.cs-public-encros[data-encros-menu-open="true"] .cs-encros-nav[data-encros-mobile-drawer] {
		visibility: visible;
		pointer-events: auto;
		transform: translateX(0);
	}

	body.cs-public-encros .cs-encros-mobile-drawer-head {
		display: flex;
		align-items: center;
		justify-content: space-between;
		gap: 10px;
		padding-bottom: 8px;
		border-bottom: 1px solid var(--cs-encros-line);
	}

	body.cs-public-encros .cs-encros-mobile-drawer-head strong {
		color: var(--cs-encros-green-dark);
		font-size: 1.05rem;
		font-weight: 1000;
	}

	body.cs-public-encros .cs-encros-menu-close {
		min-height: 38px;
		padding: 0 12px;
		border: 0;
		border-radius: 999px;
		background: var(--cs-encros-anthracite);
		color: #ffffff;
		font-weight: 900;
	}

	body.cs-public-encros .cs-encros-mobile-search {
		display: grid !important;
		grid-template-columns: minmax(0, 1fr) 50px !important;
		width: 100% !important;
		margin: 2px 0 8px !important;
		overflow: hidden !important;
		border: 2px solid #dfeec5 !important;
		border-radius: 16px !important;
		background: #ffffff !important;
		box-shadow: none !important;
	}

	body.cs-public-encros .cs-encros-mobile-search input[type="search"] {
		height: 46px !important;
		padding: 0 12px !important;
		font-size: 0.94rem !important;
	}

	body.cs-public-encros .cs-encros-mobile-search button {
		width: 50px !important;
		min-width: 50px !important;
		min-height: 46px !important;
		padding: 0 !important;
		font-size: 0 !important;
	}

	body.cs-public-encros .cs-encros-mobile-search button::before {
		width: 20px !important;
		height: 20px !important;
	}

	body.cs-public-encros .cs-encros-nav[data-encros-mobile-drawer] .nav-inner {
		display: grid;
		gap: 8px;
		width: 100%;
	}

	body.cs-public-encros .cs-encros-nav[data-encros-mobile-drawer] a {
		display: flex;
		align-items: center;
		width: 100%;
		min-height: 48px;
		padding: 12px 14px;
		border: 1px solid #e4efd3;
		border-radius: 14px;
		background: #f7fbef;
		color: #17330a;
		font-size: 0.98rem;
		line-height: 1.2;
		white-space: normal;
		scroll-snap-align: none;
		box-shadow: none;
	}

	body.cs-public-encros .cs-encros-nav[data-encros-mobile-drawer] a[aria-current="page"],
	body.cs-public-encros .cs-encros-nav[data-encros-mobile-drawer] a.active,
	body.cs-public-encros .cs-encros-nav[data-encros-mobile-drawer] a[data-encros-nav-item="finder"] {
		border-color: rgba(134, 189, 0, 0.38);
		background: #edf8d7;
		color: var(--cs-encros-green-dark);
	}

	body.cs-public-encros .cs-encros-menu-backdrop {
		position: fixed;
		inset: 0;
		z-index: 115;
		border: 0;
		background: rgba(23, 33, 18, 0.42);
	}

	body.cs-public-encros[data-encros-menu-open="true"] .cs-encros-menu-backdrop {
		display: block;
	}

	body.cs-public-encros .cs-encros-hero,
	body.cs-public-encros .cs-product-hero,
	body.cs-public-encros .cs-product-list-hero,
	body.cs-public-encros .cs-category-list-hero,
	body.cs-public-encros .cs-category-hero,
	body.cs-public-encros .cs-cart-hero,
	body.cs-public-encros .cs-checkout-hero,
	body.cs-public-encros .cs-checkout-return-hero,
	body.cs-public-encros .cs-product-encros-story,
	body.cs-public-encros .cs-encros-category-rail,
	body.cs-public-encros .cs-encros-proof-strip,
	body.cs-public-encros :is(.cs-product-list-encros-strip, .cs-category-list-encros-strip, .cs-category-encros-strip, .cs-product-encros-strip, .cs-cart-encros-strip, .cs-checkout-encros-strip) {
		width: min(100% - 20px, var(--cs-encros-max)) !important;
		max-width: calc(100vw - 20px) !important;
	}

	body.cs-public-encros .cs-product-encros-story {
		grid-template-columns: 1fr !important;
		align-items: start !important;
		gap: 12px !important;
		padding: 12px !important;
		border-radius: 18px !important;
	}

	body.cs-public-encros .cs-product-encros-story strong {
		display: block !important;
		font-size: 1.15rem !important;
		line-height: 1.25 !important;
		white-space: normal !important;
		overflow-wrap: anywhere !important;
	}

	body.cs-public-encros .cs-product-encros-story span {
		font-size: 0.95rem !important;
		line-height: 1.45 !important;
	}

	body.cs-public-encros .cs-encros-category-rail,
	body.cs-public-encros .cs-encros-proof-strip,
	body.cs-public-encros :is(.cs-product-list-encros-strip, .cs-category-list-encros-strip, .cs-category-encros-strip, .cs-product-encros-strip, .cs-cart-encros-strip, .cs-checkout-encros-strip) {
		grid-template-columns: 1fr !important;
		gap: 10px !important;
	}

	body.cs-public-encros.home-v33 .home-hero-v3.home-hero-v33 {
		padding-top: 18px !important;
		overflow: hidden !important;
	}

	body.cs-public-encros.home-v33 .home-hero-v33-inner {
		width: min(100% - 20px, 1180px) !important;
		max-width: calc(100vw - 20px) !important;
		gap: 18px !important;
	}

	body.cs-public-encros.home-v33 .hero-title {
		font-size: clamp(2rem, 11vw, 3rem) !important;
		line-height: 1.04 !important;
		letter-spacing: 0 !important;
	}

	body.cs-public-encros.home-v33 .lead {
		font-size: 1.03rem !important;
		line-height: 1.55 !important;
	}

	body.cs-public-encros .encros-3clics {
		width: 100% !important;
		max-width: 100% !important;
		min-height: 0 !important;
		padding: 14px !important;
		border-radius: 18px !important;
	}

	body.cs-public-encros .encros-3clics .layer-title {
		max-height: 86px !important;
		object-fit: contain !important;
	}

	body.cs-public-encros .encros-3clics .clean-subtitle {
		font-size: clamp(1rem, 5vw, 1.35rem) !important;
		line-height: 1.18 !important;
	}

	body.cs-public-encros .encros-3clics .layer-form {
		gap: 12px !important;
	}

	body.cs-public-encros .encros-3clics .step {
		height: auto !important;
		min-height: 130px !important;
		padding: 34px 12px 14px 62px !important;
		border-radius: 18px !important;
	}

	body.cs-public-encros .encros-3clics .step-badge {
		width: 50px !important;
		font-size: 1.55rem !important;
	}

	body.cs-public-encros .encros-3clics .step-label {
		margin-bottom: 10px !important;
		font-size: 1.25rem !important;
		line-height: 1.1 !important;
		white-space: normal !important;
	}

	body.cs-public-encros .encros-3clics .select-zone {
		height: 50px !important;
	}

	body.cs-public-encros .encros-3clics .select-zone select {
		min-height: 50px !important;
		font-size: 1rem !important;
	}

	body.cs-public-encros .encros-3clics .clean-guarantee {
		min-height: 54px !important;
	}

	body.cs-public-encros .encros-3clics .clean-guarantee-text {
		font-size: clamp(1rem, 5vw, 1.3rem) !important;
		line-height: 1.15 !important;
	}
}

@media (max-width: 420px) {
	body.cs-public-encros .cs-encros-topbar {
		font-size: 0.74rem;
	}

	body.cs-public-encros .cs-encros-logo img {
		max-width: 140px !important;
		height: 40px !important;
	}

	body.cs-public-encros .cs-encros-mainbar,
	body.cs-public-encros.home-v33 .cs-encros-mainbar {
		grid-template-columns: minmax(104px, 1fr) auto auto !important;
		padding-inline: 10px !important;
	}

	body.cs-public-encros .cs-encros-nav[data-encros-mobile-drawer] {
		width: min(92vw, 360px);
	}
}
