/* MEGAPNEUS - couche responsive publique v1
   Aucun style ci-dessous ne s'applique au-dela de 760 px. */

.mp-mobile-menu-toggle,
.mp-mobile-quick {
	display: none;
}

@media screen and (max-width: 760px) {
	html {
		width: 100%;
		max-width: 100%;
		overflow-x: hidden;
		-webkit-text-size-adjust: 100%;
	}

	body.mp-site {
		box-sizing: border-box;
		width: 100%;
		min-width: 0;
		max-width: 100%;
		margin: 0;
		padding: 0 8px 24px;
		overflow-x: hidden;
		background-attachment: scroll !important;
	}

	body.mp-site *,
	body.mp-site *:before,
	body.mp-site *:after {
		box-sizing: border-box;
	}

	body.mp-site img,
	body.mp-site video,
	body.mp-site iframe {
		max-width: 100%;
	}

	.mp-site-shell,
	table.mp-site-shell,
	body.mp-site > table[width="1000"],
	body.mp-site > table[width="1040"] {
		width: 100% !important;
		max-width: 100% !important;
		margin-right: auto !important;
		margin-left: auto !important;
	}

	/* En-tete et navigation */
	.mp-site-header-shell {
		border-spacing: 0 !important;
		border-radius: 0 0 12px 12px;
	}

	.mp-site-header-shell > tbody,
	.mp-site-header-shell > tbody > tr,
	.mp-site-header-shell > tbody > tr > td,
	.mp-header-main,
	.mp-header-main > tbody,
	.mp-header-main > tbody > tr {
		display: block;
		width: 100% !important;
	}

	.mp-site-nav {
		position: relative;
		width: 100% !important;
		padding: 7px !important;
	}

	.mp-mobile-menu-toggle {
		display: flex;
		align-items: center;
		justify-content: center;
		gap: 9px;
		width: 100%;
		min-height: 46px;
		padding: 8px 14px;
		color: #ffffff;
		font: 900 14px/1 Arial, Helvetica, sans-serif;
		letter-spacing: .5px;
		text-transform: uppercase;
		background: linear-gradient(180deg, #303034, #171719);
		border: 1px solid #505055;
		border-bottom: 3px solid #d71920;
		border-radius: 8px;
		cursor: pointer;
	}

	.mp-mobile-menu-icon,
	.mp-mobile-menu-icon:before,
	.mp-mobile-menu-icon:after {
		display: block;
		width: 21px;
		height: 2px;
		content: "";
		background: #ffffff;
		border-radius: 2px;
	}

	.mp-mobile-menu-icon {
		position: relative;
	}

	.mp-mobile-menu-icon:before {
		position: absolute;
		top: -7px;
		left: 0;
	}

	.mp-mobile-menu-icon:after {
		position: absolute;
		top: 7px;
		left: 0;
	}

	.mp-site-nav.mp-menu-open .mp-mobile-menu-icon {
		background: transparent;
	}

	.mp-site-nav.mp-menu-open .mp-mobile-menu-icon:before,
	.mp-site-nav.mp-menu-open .mp-mobile-menu-icon:after {
		top: 0;
		transform: rotate(45deg);
	}

	.mp-site-nav.mp-menu-open .mp-mobile-menu-icon:after {
		transform: rotate(-45deg);
	}

	.mp-site-nav-table {
		display: none;
		width: 100% !important;
		margin-top: 7px;
	}

	.mp-site-nav.mp-menu-open .mp-site-nav-table {
		display: block !important;
		padding: 6px;
		background: #111113;
		border: 1px solid #3b3b40;
		border-radius: 10px;
		box-shadow: 0 12px 26px rgba(0, 0, 0, .38);
	}

	.mp-site-nav-table > tbody,
	.mp-site-nav-table > tbody > tr {
		display: block !important;
		width: 100% !important;
	}

	.mp-site-nav-table td {
		display: block !important;
		width: 100% !important;
		margin: 0 0 5px;
		padding: 0 !important;
	}

	.mp-site-nav-table td:last-child {
		margin-bottom: 0;
	}

	.mp-site-nav .styleBOUTONTOP {
		justify-content: flex-start !important;
		width: 100% !important;
		min-height: 50px;
		padding: 10px 13px !important;
		font-size: 13px !important;
		line-height: 17px !important;
		text-align: left !important;
		white-space: normal;
		border: 1px solid #45454a !important;
		border-left: 4px solid #d71920 !important;
		border-bottom-width: 1px !important;
		border-radius: 8px !important;
		box-shadow: none !important;
	}

	.mp-site-nav .styleBOUTONTOP:after {
		margin-left: auto;
		content: "\203A";
		color: #ff4a50;
		font-size: 24px;
		font-weight: 400;
		line-height: 18px;
	}

	.mp-site-nav .mp-nav-tyres {
		background: linear-gradient(180deg, #303034, #1b1b1e) !important;
		border-color: #45454a !important;
		border-left-color: #d71920 !important;
	}

	.mp-header-business-line {
		display: block;
		width: 100% !important;
	}

	.styleENTREPRISE {
		box-sizing: border-box !important;
		width: 100% !important;
		padding: 8px 10px !important;
		font-size: 10px !important;
		line-height: 1.45 !important;
		white-space: normal !important;
	}

	.mp-header-main {
		border-spacing: 0 !important;
	}

	.mp-header-main td {
		display: block;
		width: 100% !important;
	}

	.mp-header-brand {
		padding: 15px 8px 10px !important;
	}

	.mp-header-brand img {
		width: 184px !important;
	}

	.mp-header-promo {
		display: none !important;
	}

	.mp-header-payment {
		padding: 4px 10px 9px !important;
	}

	.mp-header-cart {
		display: flex !important;
		align-items: center;
		justify-content: center;
		gap: 16px;
		padding: 5px 10px 10px !important;
	}

	.mp-header-cart br {
		display: none;
	}

	.mp-mini-cart-frame,
	.mp-header-cart iframe {
		width: 210px !important;
		max-width: 62vw !important;
		height: 82px !important;
		margin: 0 !important;
	}

	.mp-header-cart > img {
		width: 78px !important;
		height: 78px !important;
		margin: 0 !important;
	}

	.mp-header-contact-strip {
		padding: 2px 8px 10px !important;
	}

	.mp-header-contact-strip .styleTEL {
		box-sizing: border-box !important;
		width: 100% !important;
		font-size: 12px !important;
		line-height: 1.55 !important;
		white-space: normal !important;
	}

	.mp-mobile-quick {
		position: sticky;
		top: 0;
		z-index: 80;
		display: grid;
		grid-template-columns: repeat(3, minmax(0, 1fr));
		gap: 1px;
		width: 100%;
		margin: 7px auto 0;
		padding: 4px;
		background: #111113;
		border: 1px solid #3b3b3e;
		border-radius: 10px;
		box-shadow: 0 7px 20px rgba(0, 0, 0, .28);
	}

	.mp-mobile-quick a {
		display: flex;
		align-items: center;
		justify-content: center;
		gap: 5px;
		min-height: 44px;
		padding: 6px 3px;
		color: #ffffff !important;
		font: 800 11px/1.15 Arial, Helvetica, sans-serif;
		text-align: center;
		text-decoration: none !important;
		background: #242427;
		border-radius: 6px;
	}

	.mp-mobile-quick a:nth-child(2) {
		background: #d71920;
	}

	/* Accroche d'accueil */
	.mp-home-lead-shell {
		margin-top: 9px !important;
	}

	.mp-home-hero {
		margin: 3px !important;
		padding: 22px 18px 18px !important;
		border-radius: 9px !important;
	}

	.mp-home-hero h1 {
		font-size: 27px !important;
		line-height: 1.08 !important;
	}

	.mp-home-hero-lead {
		font-size: 14px !important;
		line-height: 1.5 !important;
	}

	.mp-home-trust {
		display: grid !important;
		grid-template-columns: 1fr !important;
		gap: 7px !important;
		padding-top: 11px !important;
	}

	.mp-home-trust span {
		width: 100%;
		padding: 8px 10px;
		background: rgba(255, 255, 255, .06);
		border-radius: 7px;
	}

	/* Recherche de pneus */
	.mp-tyre-search-shell {
		margin-top: 9px !important;
		border-radius: 10px !important;
	}

	.mp-tyre-search-shell > tbody > tr > td {
		padding: 12px 10px 10px !important;
	}

	.mp-tyre-search-grid,
	.mp-tyre-search-grid > tbody,
	.mp-tyre-search-form {
		display: block;
		width: 100% !important;
	}

	.mp-tyre-search-form {
		margin: 0;
	}

	.mp-tyre-search-labels {
		display: none !important;
	}

	.mp-tyre-search-fields {
		display: grid !important;
		grid-template-columns: repeat(2, minmax(0, 1fr));
		gap: 9px;
		width: 100%;
	}

	.mp-tyre-search-fields td {
		display: block !important;
		width: auto !important;
		padding: 0 !important;
		text-align: left !important;
	}

	.mp-tyre-search-fields td:first-child {
		grid-column: 1 / -1;
		width: 100% !important;
		padding: 10px 12px !important;
		font-size: 16px !important;
		line-height: 1.2 !important;
	}

	.mp-tyre-search-fields td:not(:first-child):before {
		display: block;
		margin: 0 0 4px 2px;
		color: #393939;
		font: 800 11px/1.2 Arial, Helvetica, sans-serif;
	}

	.mp-tyre-search-fields td:nth-child(2):before { content: "Type de pneu"; }
	.mp-tyre-search-fields td:nth-child(3):before { content: "Marque"; }
	.mp-tyre-search-fields td:nth-child(4):before { content: "Largeur"; }
	.mp-tyre-search-fields td:nth-child(5):before { content: "Hauteur"; }
	.mp-tyre-search-fields td:nth-child(6):before { content: "Diametre"; }
	.mp-tyre-search-fields td:nth-child(7):before { content: "Charge"; }
	.mp-tyre-search-fields td:nth-child(8):before { content: "Vitesse"; }

	.mp-tyre-search-grid select.select {
		height: 46px !important;
		padding: 7px 8px !important;
		font-size: 16px !important;
		border-radius: 7px !important;
	}

	.mp-tyre-search-submit-cell {
		grid-column: 1 / -1;
		width: 100% !important;
	}

	.mp-tyre-search-submit-cell:before {
		display: none !important;
	}

	.mp-tyre-search-submit {
		height: 48px !important;
		font-size: 14px !important;
		letter-spacing: .4px;
		border-radius: 8px !important;
	}

	.mp-tyre-search-options,
	.mp-tyre-range-row {
		display: block !important;
		width: 100%;
	}

	.mp-tyre-search-options > td:first-child,
	.mp-tyre-range-row > td:first-child {
		display: none !important;
	}

	.mp-tyre-search-options-cell,
	.mp-tyre-range-cell {
		display: flex !important;
		flex-wrap: wrap;
		align-items: center;
		gap: 7px;
		width: 100% !important;
		padding: 12px 1px 4px !important;
		white-space: normal !important;
	}

	.mp-tyre-range-cell {
		padding-top: 8px !important;
	}

	.mp-tyre-range-title {
		display: block;
		width: 100%;
		margin: 0 0 2px;
	}

	.mp-tyre-option,
	.mp-tyre-option-all,
	.mp-quality-badge {
		min-height: 40px;
		margin: 0 !important;
		padding: 7px 10px !important;
		font-size: 12px !important;
	}

	.mp-tyre-search-options-cell > .styleBOUTON_TAILLES {
		display: block;
		width: 100%;
		margin-top: 4px;
	}

	.mp-tyre-size-guide {
		display: none !important;
	}

	.mp-search-admin-table,
	.mp-search-alert {
		width: 100% !important;
		max-width: 100% !important;
	}

	.mp-search-admin-info {
		padding: 10px 11px !important;
		font-size: 11px !important;
	}

	/* Resultats : une fiche lisible par pneu */
	.mp-result-group-row,
	.mp-result-group-row > td,
	.mp-result-list,
	.mp-result-list > tbody {
		display: block !important;
		width: 100% !important;
	}

	.mp-result-group-heading {
		display: block !important;
		width: 100%;
		margin: 8px 0;
	}

	.mp-result-group-heading > td {
		display: block !important;
		width: 100% !important;
		padding: 10px !important;
	}

	.mp-result-row {
		display: grid !important;
		grid-template-columns: 82px minmax(0, 1fr);
		gap: 7px 10px;
		width: calc(100% - 4px);
		margin: 9px 2px;
		padding: 12px;
		background: #ffffff;
		border: 1px solid #d6d6d6;
		border-left: 4px solid #d71920;
		border-radius: 10px;
		box-shadow: 0 6px 16px rgba(0, 0, 0, .12);
	}

	.mp-result-row > td {
		display: block !important;
		width: auto !important;
		padding: 3px !important;
		text-align: left !important;
		white-space: normal !important;
		background: transparent !important;
	}

	.mp-result-image {
		grid-column: 1;
		grid-row: 1 / span 2;
		align-self: center;
		text-align: center !important;
	}

	.mp-result-image img {
		width: 70px !important;
		height: auto !important;
	}

	.mp-result-brand,
	.mp-result-description {
		grid-column: 2;
	}

	.mp-result-brand {
		font-size: 14px !important;
		font-weight: 800;
	}

	.mp-result-description {
		font-size: 12px !important;
		line-height: 1.4;
	}

	.mp-result-specs,
	.mp-result-price,
	.mp-result-order {
		grid-column: 1 / -1;
	}

	.mp-result-specs table,
	.mp-result-price table {
		width: 100% !important;
	}

	.mp-result-specs img[src$="soleil.gif"],
	.mp-result-specs img[src$="flocon.gif"] {
		display: inline-block !important;
		width: 22px !important;
		max-width: 22px !important;
		height: 22px !important;
		max-height: 22px !important;
		object-fit: contain;
		vertical-align: middle;
	}

	.mp-result-price {
		padding: 9px !important;
		background: #f3f3f3 !important;
		border-radius: 7px;
	}

	.mp-result-price b {
		font-size: 18px !important;
	}

	.mp-result-order {
		padding-top: 7px !important;
		text-align: center !important;
	}

	.mp-result-order input[type="image"] {
		display: block;
		width: auto;
		max-width: 100%;
		min-height: 44px;
		margin: 0 auto;
	}

	.mp-result-divider {
		display: none !important;
	}

	/* Accueil moderne */
	.mp-home-content,
	.mp-home-content > tbody,
	.mp-home-content > tbody > tr,
	.mp-home-content > tbody > tr > td {
		display: block !important;
		width: 100% !important;
	}

	.mp-home-content {
		margin: 10px auto 20px !important;
		padding: 0 !important;
		border-spacing: 0 !important;
	}

	.mp-home-redesign-cell {
		padding: 0 !important;
	}

	.mp-home-season-hero,
	.mp-home-panel,
	.mp-home-brands-panel,
	.mp-home-mini-slider,
	.mp-home-services {
		padding: 18px 14px !important;
	}

	.mp-home-season-hero h2,
	.mp-home-services h2 {
		font-size: 25px !important;
		line-height: 1.1 !important;
	}

	.mp-home-season-offers,
	.mp-home-dashboard-grid,
	.mp-home-service-grid {
		display: grid !important;
		grid-template-columns: 1fr !important;
		gap: 10px !important;
	}

	.mp-home-dashboard-main,
	.mp-home-dashboard-side {
		width: 100% !important;
		min-width: 0 !important;
	}

	.mp-home-brand-cloud {
		display: grid !important;
		grid-template-columns: repeat(2, minmax(0, 1fr)) !important;
		gap: 8px !important;
	}

	.mp-home-brand-card {
		min-width: 0 !important;
	}

	.mp-home-brand-card img {
		width: 100% !important;
		height: 38px !important;
		object-fit: contain;
	}

	.mp-map-consent,
	.mp-home-map-panel iframe {
		height: 270px !important;
		min-height: 270px !important;
	}

	.mp-home-slider-frame,
	.mp-home-slider-frame table,
	.mp-home-slider-frame img {
		max-width: 100% !important;
	}

	/* Pages et formulaires historiques */
	.styleCONTOUR {
		width: 100% !important;
		max-width: 100% !important;
	}

	body.mp-site input[type="text"],
	body.mp-site input[type="email"],
	body.mp-site input[type="tel"],
	body.mp-site input[type="password"],
	body.mp-site input[type="number"],
	body.mp-site select,
	body.mp-site textarea {
		max-width: 100% !important;
		font-size: 16px !important;
	}

	body.mp-site input[type="submit"],
	body.mp-site input[type="button"],
	body.mp-site button,
	body.mp-site a.styleBOUTON,
	body.mp-site a.styleBOUTON2 {
		min-height: 44px;
	}
}

@media screen and (max-width: 390px) {
	.mp-tyre-search-fields {
		grid-template-columns: 1fr;
	}

	.mp-tyre-search-fields td:first-child,
	.mp-tyre-search-submit-cell {
		grid-column: 1;
	}

	.mp-header-cart {
		gap: 8px;
	}

	.mp-header-cart > img {
		width: 64px !important;
		height: 64px !important;
	}

	.mp-mobile-quick a {
		font-size: 10px;
	}
}

/* V2 - pages publiques historiques, resultats et tunnel avant paiement */
@media screen and (max-width: 760px) {
	html.mp-responsive-page,
	html.mp-responsive-page body {
		width: 100%;
		min-width: 0 !important;
		max-width: 100%;
		margin: 0;
		overflow-x: hidden;
		-webkit-text-size-adjust: 100%;
	}

	html.mp-responsive-page body {
		box-sizing: border-box;
		padding-right: 8px;
		padding-left: 8px;
	}

	html.mp-responsive-page *,
	html.mp-responsive-page *:before,
	html.mp-responsive-page *:after {
		box-sizing: border-box;
	}

	html.mp-responsive-page img,
	html.mp-responsive-page iframe,
	html.mp-responsive-page video {
		max-width: 100%;
		height: auto;
	}

	html.mp-responsive-page body > table[width="1000"],
	.mp-legacy-page,
	.mp-legacy-page > table,
	.mp-legacy-page table[width="1000"],
	.mp-legacy-page table[width="900"],
	.mp-legacy-page table[width="800"],
	.mp-legacy-page table[width="700"],
	.mp-legacy-page table[width="600"],
	.mp-legacy-page table[width="500"],
	.mp-legacy-page table[width="480"],
	.mp-legacy-page table[width="430"],
	.mp-legacy-page table[width="425"],
	.mp-legacy-page table[width="400"] {
		width: 100% !important;
		max-width: 100% !important;
	}

	.mp-legacy-page {
		display: block;
		margin: 10px auto 22px;
		padding: 0;
		color: #252525;
		font-family: Arial, Helvetica, sans-serif;
		font-size: 14px;
		line-height: 1.45;
	}

	html.mp-responsive-page .styleCONTOUR,
	html.mp-responsive-page .mp-site-shell {
		width: 100% !important;
		max-width: 100% !important;
	}

	html.mp-responsive-page .styleBOUTONTOP {
		min-height: 44px;
		padding: 8px 6px !important;
		font-size: 12px !important;
		line-height: 1.25 !important;
		white-space: normal !important;
	}

	.mp-legacy-page td,
	.mp-legacy-page th,
	.mp-legacy-page font,
	.mp-legacy-page p,
	.mp-legacy-page div {
		max-width: 100%;
		white-space: normal !important;
		word-break: normal;
	}

	.mp-legacy-page input[type="text"],
	.mp-legacy-page input[type="email"],
	.mp-legacy-page input[type="tel"],
	.mp-legacy-page input[type="password"],
	.mp-legacy-page input[type="number"],
	.mp-legacy-page select,
	.mp-legacy-page textarea,
	.mp-legal-page input,
	.mp-legal-page textarea {
		width: 100% !important;
		max-width: 100% !important;
		min-height: 44px;
		padding: 9px 10px;
		font-size: 16px !important;
		border: 1px solid #bdbdbd;
		border-radius: 7px;
	}

	.mp-legacy-page textarea {
		min-height: 150px;
		resize: vertical;
	}

	.mp-legacy-page input[type="checkbox"],
	.mp-legacy-page input[type="radio"] {
		width: 22px !important;
		min-height: 22px;
		padding: 0;
	}

	.mp-legacy-page input[type="submit"],
	.mp-legacy-page input[type="button"],
	.mp-legacy-page .bouton {
		min-height: 46px;
		padding: 10px 14px !important;
		font-size: 14px !important;
		white-space: normal;
		border-radius: 8px;
	}

	/* Contact */
	.mp-contact-page {
		height: auto !important;
		background: #ffffff;
		border: 1px solid #d7d7d7;
		border-radius: 11px;
		box-shadow: 0 8px 22px rgba(0, 0, 0, .14);
	}

	.mp-contact-page > tbody,
	.mp-contact-page > tbody > tr {
		display: block;
		width: 100%;
	}

	.mp-contact-page > tbody > tr > td {
		display: block;
		width: 100% !important;
		height: auto !important;
		padding: 14px 12px !important;
		border-bottom: 1px solid #e3e3e3;
	}

	.mp-contact-page h3,
	.mp-contact-page h4 {
		margin: 5px 0 10px;
		font-size: 18px;
		line-height: 1.3;
	}

	.mp-contact-page iframe {
		display: block;
		width: 100% !important;
		height: 300px !important;
		border: 0;
		border-radius: 9px;
	}

	/* Tarifs, montage et geometrie */
	.mp-tariff-page {
		padding: 4px;
		background: #eeeeee;
		border-radius: 11px;
	}

	.mp-tariff-page > table,
	.mp-tariff-page table {
		border-collapse: separate;
		border-spacing: 0;
		background: #ffffff;
	}

	.mp-tariff-page td,
	.mp-tariff-page th {
		height: auto !important;
		padding: 9px 7px !important;
		font-size: 14px !important;
		line-height: 1.35 !important;
		white-space: normal !important;
	}

	.mp-tariff-page img {
		width: auto !important;
		max-width: 100% !important;
	}

	/* Tarifs et reservation : surcharge chargee apres tarifs-rdv.css */
	.mp-tariff-page .mp-rdv-page {
		width: 100% !important;
		max-width: 100% !important;
		margin: 7px auto 24px !important;
		overflow: hidden;
	}

	.mp-tariff-page .mp-rdv-hero {
		min-height: 0 !important;
		padding: 24px 18px 21px !important;
		border-radius: 11px !important;
	}

	.mp-tariff-page .mp-rdv-hero h1 {
		font-size: 27px !important;
		line-height: 1.08 !important;
	}

	.mp-tariff-page .mp-rdv-hero > p {
		font-size: 14px !important;
		line-height: 1.5 !important;
	}

	.mp-tariff-page .mp-rdv-hero-actions,
	.mp-tariff-page .mp-rdv-reassurance {
		flex-direction: column !important;
		gap: 8px !important;
	}

	.mp-tariff-page .mp-rdv-button {
		width: 100% !important;
		padding: 12px 14px !important;
		text-align: center !important;
	}

	.mp-tariff-page .mp-rdv-shortcuts {
		grid-template-columns: 1fr 1fr !important;
		gap: 7px !important;
	}

	.mp-tariff-page .mp-rdv-shortcut {
		min-height: 82px !important;
		padding: 13px 9px 11px 44px !important;
	}

	.mp-tariff-page .mp-rdv-shortcut:before {
		left: 10px !important;
	}

	.mp-tariff-page .mp-rdv-booking {
		margin-top: 10px !important;
		padding: 18px 11px 15px !important;
		border-radius: 11px !important;
	}

	.mp-tariff-page .mp-rdv-section-heading {
		align-items: flex-start !important;
		gap: 10px !important;
	}

	.mp-tariff-page .mp-rdv-section-heading h2,
	.mp-tariff-page .mp-rdv-footer-cta h2 {
		font-size: 23px !important;
	}

	.mp-tariff-page .mp-rdv-calendar-icon {
		flex: 0 0 34px !important;
		width: 34px !important;
		height: 36px !important;
		margin: 0 !important;
	}

	.mp-tariff-page .mp-rdv-calendar-icon:after {
		left: 8px !important;
		box-shadow: 11px 0 0 #d71920 !important;
	}

	.mp-tariff-page .mp-rdv-booking-table,
	.mp-tariff-page .mp-booking-list,
	.mp-tariff-page .mp-booking-list > tbody {
		display: block !important;
		width: 100% !important;
		max-width: 100% !important;
	}

	.mp-tariff-page .mp-booking-list {
		border-spacing: 0 !important;
	}

	.mp-tariff-page .mp-booking-row {
		display: grid !important;
		grid-template-columns: minmax(0, 1fr) 126px !important;
		align-items: center;
		gap: 10px 8px;
		width: 100% !important;
		max-width: 100% !important;
		margin: 0 0 10px !important;
		padding: 13px 12px !important;
		background: #ffffff !important;
		border: 1px solid #dddddf !important;
		border-left: 5px solid #d71920 !important;
		border-radius: 10px !important;
		box-shadow: 0 5px 13px rgba(0, 0, 0, .07);
	}

	.mp-tariff-page .mp-booking-row td {
		display: block !important;
		width: auto !important;
		min-width: 0 !important;
		height: auto !important;
		padding: 0 !important;
		background: transparent !important;
		border: 0 !important;
		border-radius: 0 !important;
	}

	.mp-tariff-page .mp-booking-name {
		grid-column: 1 / -1;
		font-size: 15px !important;
		line-height: 1.35 !important;
	}

	.mp-tariff-page .mp-booking-price {
		grid-column: 1;
		font-size: 18px !important;
		line-height: 1.2 !important;
		text-align: left !important;
		white-space: nowrap !important;
	}

	.mp-tariff-page .mp-booking-action {
		grid-column: 2;
		text-align: right !important;
	}

	.mp-tariff-page .mp-booking-action form,
	.mp-tariff-page .mp-booking-button {
		width: 100% !important;
		max-width: 100% !important;
	}

	.mp-tariff-page .mp-booking-button {
		min-height: 44px !important;
		padding: 10px 8px !important;
		font-size: 13px !important;
		border-radius: 8px !important;
	}

	.mp-tariff-page .mp-rdv-tariff-list {
		grid-template-columns: 1fr !important;
		padding: 10px !important;
	}

	.mp-tariff-page .mp-rdv-tariff-heading {
		padding: 20px 17px 17px 62px !important;
	}

	.mp-tariff-page .mp-rdv-tariff-heading:before {
		top: 21px !important;
		left: 16px !important;
	}

	.mp-tariff-page .mp-rdv-tariff-item {
		gap: 10px !important;
		min-width: 0 !important;
	}

	.mp-tariff-page .mp-rdv-tariff-name {
		min-width: 0 !important;
		padding-right: 0 !important;
	}

	.mp-tariff-page .mp-rdv-tariff-price {
		flex: 0 0 auto;
		min-width: 88px !important;
		white-space: nowrap !important;
	}

	.mp-tariff-page .mp-rdv-footer-cta {
		flex-direction: column !important;
		align-items: stretch !important;
		gap: 13px !important;
		padding: 20px 17px !important;
	}

	/* Demande de devis */
	.mp-quote-wrapper > table {
		padding: 12px !important;
		background: #ffffff !important;
		border: 1px solid #d7d7d7;
		border-radius: 11px;
		box-shadow: 0 8px 22px rgba(0, 0, 0, .12);
	}

	.mp-quote-wrapper table {
		max-width: 100% !important;
	}

	.mp-quote-wrapper td {
		padding: 6px 4px;
	}

	.mp-quote-wrapper form > tr > td,
	.mp-quote-wrapper > table > tbody > tr > td {
		width: 100% !important;
	}

	/* Compte client et historique */
	.mp-account-page > table {
		width: 100% !important;
		max-width: 100% !important;
		margin: 10px auto !important;
	}

	.mp-account-page > table > tbody > tr {
		display: block;
		width: 100%;
	}

	.mp-account-page > table > tbody > tr > td {
		display: block;
		width: 100% !important;
		margin: 0 0 10px;
		padding: 14px 10px !important;
	}

	.mp-account-page .decor2,
	.mp-account-page .decor3 {
		border: 1px solid #d5d5d5 !important;
		border-left: 4px solid #d71920 !important;
		border-radius: 9px !important;
		box-shadow: 0 6px 16px rgba(0, 0, 0, .1) !important;
	}

	.mp-account-page table.tableau {
		display: block;
		width: 100% !important;
		overflow-x: auto;
		-webkit-overflow-scrolling: touch;
	}

	.mp-account-page .oeil {
		width: 30px !important;
		max-width: 30px !important;
	}

	/* Liste des resultats pneus */
	.mp-results-wrapper,
	.mp-results-page,
	.mp-results-page > tbody {
		display: block;
		width: 100% !important;
		max-width: 100% !important;
		background: transparent !important;
	}

	.mp-result-message,
	.mp-results-disclaimer {
		width: 100% !important;
		margin: 9px auto;
		background: #ffffff !important;
		border: 1px solid #d9d9d9;
		border-radius: 9px;
	}

	.mp-result-message td,
	.mp-results-disclaimer td {
		padding: 13px 11px !important;
		font-size: 13px !important;
		line-height: 1.45;
		white-space: normal !important;
	}

	.mp-result-row {
		grid-template-columns: 104px minmax(0, 1fr) !important;
		gap: 7px 14px !important;
		margin: 14px 3px !important;
		padding: 16px 14px !important;
		border: 1px solid #d8d8dc !important;
		border-top: 5px solid #d71920 !important;
		border-left-width: 1px !important;
		border-radius: 15px !important;
		box-shadow: 0 9px 24px rgba(0, 0, 0, .14) !important;
		overflow: hidden;
	}

	.mp-result-image {
		min-height: 96px;
		padding: 8px !important;
		background: linear-gradient(145deg, #f8f8f8, #e9e9eb) !important;
		border: 1px solid #e1e1e3;
		border-radius: 12px;
		display: flex !important;
		align-items: center;
		justify-content: center;
	}

	.mp-result-image img {
		width: 88px !important;
		max-height: 105px !important;
		object-fit: contain;
	}

	.mp-result-image-empty {
		color: #777777;
		font-size: 10px !important;
	}

	.mp-result-brand {
		padding-top: 4px !important;
		font-size: 18px !important;
		line-height: 1.2 !important;
		text-transform: uppercase;
	}

	.mp-result-brand font,
	.mp-result-brand b {
		font-size: 16px !important;
	}

	.mp-result-description,
	.mp-result-description font {
		font-size: 14px !important;
		line-height: 1.4 !important;
		color: #333333 !important;
	}

	.mp-result-specs {
		margin-top: 7px;
		padding: 11px 9px !important;
		background: #f7f7f8 !important;
		border: 1px solid #e3e3e5;
		border-radius: 9px;
	}

	.mp-result-specs::before {
		content: "Caracteristiques";
		display: block;
		margin-bottom: 6px;
		color: #73737a;
		font-size: 10px;
		font-weight: 800;
		letter-spacing: .08em;
		text-transform: uppercase;
	}

	.mp-result-price {
		padding: 13px !important;
		color: #ffffff !important;
		background: linear-gradient(145deg, #28282b, #111113) !important;
		border-radius: 11px !important;
	}

	.mp-result-price table,
	.mp-result-price tbody {
		width: 100% !important;
		background: transparent !important;
	}

	.mp-result-price .mp-price-row {
		display: grid !important;
		grid-template-columns: minmax(0, 1fr) auto !important;
		align-items: center;
		gap: 12px;
		width: 100% !important;
		min-height: 48px;
		visibility: visible !important;
		opacity: 1 !important;
	}

	.mp-result-price .mp-price-row + .mp-price-row {
		margin-top: 7px;
		padding-top: 8px;
		border-top: 1px solid rgba(255, 255, 255, .18);
	}

	.mp-result-price .mp-price-label,
	.mp-result-price .mp-price-value {
		display: block !important;
		width: auto !important;
		padding: 0 !important;
		visibility: visible !important;
		opacity: 1 !important;
	}

	.mp-result-price .mp-price-value {
		text-align: right !important;
		white-space: nowrap !important;
	}

	.mp-result-price .mp-price-tyre,
	.mp-result-price .mp-price-tyre td,
	.mp-result-price .mp-price-tyre font,
	.mp-result-price .mp-price-tyre b {
		color: #ffffff !important;
	}

	.mp-result-price td,
	.mp-result-price font {
		color: #ffffff !important;
		font-size: 13px !important;
	}

	.mp-result-price tr:last-child td,
	.mp-result-price tr:last-child font,
	.mp-result-price tr:last-child b {
		color: #ff555b !important;
	}

	.mp-result-price b {
		font-size: 22px !important;
	}

	.mp-result-order {
		padding: 12px !important;
		font-size: 13px !important;
		font-weight: 800;
		text-align: center !important;
		color: #1d1d20;
		background: #fff4f4 !important;
		border: 1px solid #f2c8ca;
		border-radius: 11px;
	}

	.mp-stock-info {
		display: block;
		width: 100%;
		margin: 0 0 11px;
		padding: 10px 12px;
		color: #202126 !important;
		font-size: 14px !important;
		font-weight: 700;
		line-height: 1.35;
		text-align: left;
		background: #f4f6f8;
		border: 1px solid #dfe3e7 !important;
		border-left: 5px solid #36a148 !important;
		border-radius: 9px;
	}

	.mp-stock-info::before {
		content: "Disponibilite";
		display: block;
		margin-bottom: 4px;
		color: #6a6d74;
		font-size: 10px;
		font-weight: 800;
		letter-spacing: .08em;
		text-transform: uppercase;
	}

	.mp-stock-info table,
	.mp-stock-info tbody,
	.mp-stock-info tr,
	.mp-stock-info td,
	.mp-stock-info div,
	.mp-stock-info span,
	.mp-stock-info font {
		width: auto !important;
		max-width: 100% !important;
		margin: 0 !important;
		padding: 0 !important;
		font-size: 14px !important;
		line-height: 1.35 !important;
		background: transparent !important;
		border: 0 !important;
		box-shadow: none !important;
	}

	.mp-order-button {
		display: block !important;
		width: 100% !important;
		min-height: 52px !important;
		margin: 0 !important;
		padding: 13px 18px !important;
		color: #ffffff !important;
		font-family: Arial, Helvetica, sans-serif !important;
		font-size: 16px !important;
		font-weight: 900 !important;
		letter-spacing: .04em;
		text-align: center;
		background: linear-gradient(180deg, #ef262d, #c90f16) !important;
		border: 0 !important;
		border-radius: 10px !important;
		box-shadow: 0 7px 15px rgba(190, 12, 20, .26);
		cursor: pointer;
		-webkit-appearance: none;
		appearance: none;
	}

	.mp-order-button:active {
		transform: translateY(1px);
		box-shadow: 0 3px 8px rgba(190, 12, 20, .22);
	}

	.mp-result-order input[type="image"] {
		width: auto !important;
		max-width: min(100%, 250px) !important;
		height: auto !important;
		min-height: 50px;
		margin: 10px auto 0 !important;
		filter: drop-shadow(0 5px 8px rgba(160, 0, 6, .22));
	}

	/* Panier avant validation du paiement */
	.mp-cart-page,
	.mp-cart-items,
	.mp-cart-item,
	.mp-cart-summary,
	.mp-cart-options,
	.mp-cart-actions {
		width: 100% !important;
		max-width: 100% !important;
	}

	.mp-cart-page {
		padding: 5px;
		background: #eeeeee;
		border-radius: 11px;
	}

	.mp-cart-title,
	.mp-cart-total {
		display: block;
		width: 100% !important;
		padding: 13px 10px !important;
		color: #ffffff !important;
		font-size: 18px !important;
		background: linear-gradient(145deg, #29292c, #111113) !important;
		border-left: 4px solid #d71920;
		border-radius: 9px;
	}

	.mp-cart-item {
		margin: 10px 0;
		padding: 11px;
		background: #ffffff !important;
		border: 1px solid #d5d5d5 !important;
		border-radius: 11px;
		box-shadow: 0 6px 17px rgba(0, 0, 0, .11);
	}

	.mp-cart-item > tbody > tr {
		display: grid;
		grid-template-columns: 105px minmax(0, 1fr);
		gap: 10px;
		width: 100%;
	}

	.mp-cart-item-visual {
		display: block;
		width: 100% !important;
		padding: 5px !important;
	}

	.mp-cart-item-visual img {
		width: auto !important;
		max-width: 95px !important;
		height: auto !important;
	}

	.mp-cart-item-content {
		display: block;
		width: 100% !important;
		min-width: 0;
	}

	.mp-cart-summary tr {
		display: grid;
		grid-template-columns: repeat(2, minmax(0, 1fr));
		gap: 7px;
		width: 100%;
	}

	.mp-cart-summary td {
		display: block;
		width: 100% !important;
		padding: 7px !important;
		text-align: left !important;
		white-space: normal !important;
	}

	.mp-cart-description {
		grid-column: 1 / -1;
		font-size: 14px !important;
	}

	.mp-cart-line-total {
		color: #b20f15 !important;
		font-size: 15px !important;
		font-weight: 800;
	}

	.mp-cart-remove {
		text-align: right !important;
	}

	.mp-cart-options {
		margin-top: 9px;
		padding: 9px;
		background: #f3f3f3;
		border-radius: 8px;
	}

	.mp-cart-options td {
		padding: 7px 5px !important;
		font-size: 13px;
		white-space: normal !important;
	}

	.mp-cart-actions > tbody > tr {
		display: grid;
		grid-template-columns: 1fr;
		gap: 9px;
	}

	.mp-cart-actions td {
		display: block;
		width: 100% !important;
		padding: 4px !important;
		text-align: center !important;
	}

	.mp-cart-actions .bouton,
	.mp-cart-validate {
		display: block !important;
		width: 100% !important;
		max-width: 420px !important;
		margin: 0 auto !important;
	}

	.mp-cart-validate {
		color: #ffffff !important;
		font-weight: 900 !important;
		background: #d71920 !important;
		border-color: #ef3a41 !important;
	}

	/* Conditions generales */
	.mp-legal-page {
		box-sizing: border-box;
		margin: 0;
		padding: 12px;
		color: #252525;
		font: 14px/1.55 Arial, Helvetica, sans-serif;
		background: #f1f1f1;
	}

	.mp-legal-content {
		width: 100% !important;
		max-width: 760px !important;
		margin: 0 auto;
		background: #ffffff;
		border-radius: 10px;
		box-shadow: 0 6px 18px rgba(0, 0, 0, .1);
	}

	.mp-legal-content td {
		padding: 15px !important;
	}
}

@media screen and (max-width: 420px) {
	.mp-cart-item > tbody > tr {
		grid-template-columns: 1fr;
	}

	.mp-cart-item-visual {
		text-align: center !important;
	}

	.mp-cart-summary tr {
		grid-template-columns: 1fr;
	}

	.mp-result-row {
		grid-template-columns: 88px minmax(0, 1fr) !important;
		padding: 13px 11px !important;
	}
}
