/* 1001 Annonces Belgique — identité visuelle moderne inspirée du drapeau belge. */
:root {
  --ch-red: #e30613;
  --ch-red-dark: #b5000b;
  --ch-red-soft: #fff2f3;
  --ch-ink: #111111;
  --be-yellow: #ffd100;
  --be-black: #111111;
  --ch-muted: #626a73;
  --ch-line: #e3e6e8;
  --ch-bg: #f5f6f7;
  --ch-card: #ffffff;
  --ch-success: #147d4f;
  --ch-warning: #a35c00;
  --ch-radius-sm: 10px;
  --ch-radius: 16px;
  --ch-radius-lg: 24px;
  --ch-shadow-sm: 0 2px 10px rgba(22, 25, 29, .07);
  --ch-shadow: 0 14px 38px rgba(22, 25, 29, .11);
  --ch-focus: 0 0 0 3px rgba(255, 209, 0, .48);
}

/* Gestionnaire de cookies autonome — repli lorsque le composant historique
 * n'est pas initialisé par le moteur ou sa couche de cache. */
body.cookie-manager-open { overflow: hidden; }
.modern-cookie-manager-layer {
	position: fixed;
	inset: 0;
	z-index: 10000;
	display: grid;
	place-items: center;
	padding: 24px;
	background: rgba(17, 20, 24, .68);
}
.modern-cookie-manager {
	position: relative;
	width: min(920px, 100%);
	max-height: min(820px, calc(100vh - 48px));
	overflow: auto;
	padding: 36px;
	background: #fff;
	border-radius: 22px;
	box-shadow: 0 24px 70px rgba(0, 0, 0, .28);
}
.modern-cookie-manager-close {
	position: sticky;
	top: 0;
	float: right;
	z-index: 2;
	display: grid;
	place-items: center;
	width: 42px;
	height: 42px;
	margin: -18px -18px 8px 16px;
	padding: 0;
	color: #1d2024;
	background: #f1f3f5;
	border: 0;
	border-radius: 50%;
	font-size: 30px;
	line-height: 1;
	cursor: pointer;
}
.modern-cookie-manager-content .title { padding-right: 48px; font-size: 1.6rem; font-weight: 800; }
.modern-cookie-manager-content .description { color: #616975; }
@media (max-width: 600px) {
	.modern-cookie-manager-layer { align-items: end; padding: 0; }
	.modern-cookie-manager {
		width: 100%;
		max-height: 88vh;
		padding: 24px 18px calc(24px + env(safe-area-inset-bottom));
		border-radius: 22px 22px 0 0;
	}
	.modern-cookie-manager-close { margin: -10px -8px 6px 12px; }
}

html { scroll-behavior: smooth; }
body {
  background: var(--ch-bg);
  color: var(--ch-ink);
  font-family: "Roboto Regular", Arial, sans-serif;
  font-size: 16px;
  line-height: 1.55;
  -webkit-font-smoothing: antialiased;
}
body::before {
  content: "";
  display: block;
  height: 4px;
  background: linear-gradient(90deg, var(--be-black) 0 33.333%, var(--be-yellow) 33.333% 66.666%, var(--ch-red) 66.666% 100%);
}
a { color: var(--ch-red-dark); text-underline-offset: 3px; }
a:focus-visible, button:focus-visible, input:focus-visible, select:focus-visible, textarea:focus-visible,
[tabindex]:focus-visible { outline: none; box-shadow: var(--ch-focus); }
h1, h2, h3 { color: var(--ch-ink); letter-spacing: -.025em; }
img { max-width: 100%; height: auto; }
.container-100-child { max-width: 1240px; }
.button { min-height: 0; }

/* Entête */
.header {
  position: sticky;
  top: 0;
  z-index: 1000;
  height: auto;
  min-height: 76px;
  background: rgba(255, 255, 255, .97);
  border-bottom: 1px solid var(--ch-line);
  box-shadow: 0 4px 18px rgba(22, 25, 29, .06);
  backdrop-filter: blur(12px);
}
.header > .container-100-child { min-height: 76px; align-items: center; flex-wrap: nowrap; gap: 20px; }
.header-end { height: 0; }
.header-logo { flex: 0 0 auto; }
.header-logo p { line-height: 1; }
.header-logo img { width: auto; max-width: 190px; max-height: 52px; margin: 0; object-fit: contain; }
.header-links { min-width: 0; margin-top: 0; margin-left: auto; }
.header-links .menu { display: flex; align-items: center; flex-wrap: nowrap; gap: 4px; }
.header-links .menu > a { flex: 0 0 auto; white-space: nowrap; }
.header-links a {
  display: inline-flex;
  align-items: center;
  min-height: 44px;
  margin: 0;
  padding: 10px 12px;
  color: var(--ch-ink);
  border-radius: 10px;
  font-size: .91rem;
  font-weight: 700;
  text-decoration: none;
}
.header-links a:hover { background: #f1f2f3; color: var(--ch-red); }
.header-links .button {
  padding-inline: 18px;
  color: #fff;
  background: var(--ch-red);
  border: 1px solid var(--ch-red);
  box-shadow: 0 6px 15px rgba(216, 6, 33, .22);
}
.header-links .button:hover { background: var(--ch-red-dark); color: #fff; }
.header-links .ring, .header-links .selection, .header-links .connexion, .header-links .deconnexion {
  background-position: 10px center;
  padding-left: 38px;
}
.header-links .message-link { gap: 9px; }
.header-links .message-link::before {
  content: "";
  display: inline-block;
  width: 18px;
  height: 14px;
  flex: 0 0 18px;
  border: 2px solid currentColor;
  border-radius: 5px;
  background: linear-gradient(145deg, transparent 46%, currentColor 47% 52%, transparent 53%) left top / 50% 70% no-repeat,
              linear-gradient(215deg, transparent 46%, currentColor 47% 52%, transparent 53%) right top / 50% 70% no-repeat;
}
.toggle-menu { border-radius: 10px; }
.toggle-menu:focus-visible { box-shadow: var(--ch-focus); }
.header-compact-actions { display: none; align-items: center; gap: 8px; margin-left: auto; }
.header-compact-actions a { display: inline-flex; align-items: center; justify-content: center; min-height: 42px; padding: 9px 13px; border-radius: 9px; font-size: .82rem; font-weight: 800; text-decoration: none; }
.header-compact-actions .compact-deposit { color: #fff; background: var(--ch-red); box-shadow: 0 5px 14px rgba(216,6,33,.2); }
.header-compact-actions .compact-login { color: var(--ch-ink); background: #fff; border: 1px solid var(--ch-line); }
.header-language-switch { display: inline-flex; align-items: center; gap: 3px; margin-left: 8px; padding: 3px; background: #f3f4f5; border: 1px solid var(--ch-line); border-radius: 999px; }
.header-language-switch a { display: inline-grid; place-items: center; min-width: 38px; min-height: 34px; padding: 4px 8px; color: var(--ch-ink); border-radius: 999px; font-size: .78rem; font-weight: 900; text-decoration: none; }
.header-language-switch a[aria-current="page"] { color: #fff; background: var(--ch-red); }
.mobile-country-switch span { color: var(--ch-red); }

/* Accueil */
.swiss-home { overflow: hidden; }
.swiss-home .index-container { padding-top: 28px; }
.swiss-hero {
  position: relative;
  isolation: isolate;
  overflow: hidden;
  padding: clamp(26px, 4vw, 48px);
  color: #fff;
  background:
    radial-gradient(circle at 92% 15%, rgba(255,209,0,.28) 0 70px, transparent 71px),
    radial-gradient(circle at 84% 82%, rgba(227,6,19,.20) 0 170px, transparent 171px),
    linear-gradient(130deg, #080808, #171717 62%, #242424);
  border-radius: var(--ch-radius-lg);
  box-shadow: var(--ch-shadow);
}
.swiss-hero::after {
  content: "+";
  position: absolute;
  z-index: -1;
  right: clamp(10px, 7vw, 90px);
  top: -70px;
  color: rgba(255,255,255,.1);
  font: 700 clamp(230px, 32vw, 430px)/1 Arial, sans-serif;
}

.footer { border-top: 5px solid transparent; border-image: linear-gradient(90deg, var(--be-black) 0 33.333%, var(--be-yellow) 33.333% 66.666%, var(--ch-red) 66.666% 100%) 1; }
.swiss-hero-copy { max-width: 840px; margin: 0 auto 26px; text-align: center; }
.swiss-kicker, .swiss-eyebrow {
  margin-bottom: 8px;
  font-size: .78rem;
  font-weight: 700;
  letter-spacing: .11em;
  text-transform: uppercase;
}
.swiss-kicker span {
  display: inline-grid;
  place-items: center;
  width: 24px;
  height: 24px;
  margin-right: 7px;
  color: var(--ch-red);
  background: #fff;
  border-radius: 7px;
}
.swiss-hero h1 { margin: 8px 0 12px; padding: 0; color: #fff; font-size: clamp(2rem, 5vw, 3.8rem); line-height: 1.05; }
.swiss-hero h1 .first-color { color: #fff; }
.swiss-hero-intro { max-width: 670px; margin: auto; color: rgba(255,255,255,.91); font-size: clamp(1rem, 2vw, 1.2rem); }
.swiss-search-panel {
  max-width: 1135px;
  margin: auto;
  padding: 20px;
  color: var(--ch-ink);
  background: #fff;
  border: 1px solid rgba(255,255,255,.6);
  border-radius: var(--ch-radius);
  box-shadow: 0 16px 35px rgba(66, 0, 10, .2);
}
.swiss-search-title { margin: 0 0 10px; font-weight: 700; font-size: 1.05rem; }
.swiss-search-panel .search-form {
  display: grid;
  grid-template-columns: minmax(250px, 1.2fr) minmax(235px, 1fr) minmax(285px, 1.15fr) minmax(180px, .8fr);
  grid-template-areas:
    "keywords category region submit"
    "counties counties counties counties"
    "filters filters filters filters";
  gap: 10px;
  align-items: start;
  width: 100%;
  margin: 0;
  padding: 0;
  background: transparent;
  box-shadow: none;
}
.swiss-search-panel .search-form > .input-keywords { grid-area: keywords; width: 100%; margin: 0; }
.swiss-search-panel .search-form > select { grid-area: region; width: 100%; margin: 0; }
.swiss-search-panel .search-form > #cat-search { grid-area: category; width: 100%; }
.swiss-search-panel .search-form > #cat-search > select { width: 100%; margin: 0; }
.swiss-search-panel .search-form > #get_counties { grid-area: counties; width: 100%; }
.swiss-search-panel .search-form > #get_counties:empty { display: none; }
.swiss-search-panel .search-form > #get_counties > select { width: 100%; margin: 0; }
.swiss-search-panel .search-form > .search-all-filters { grid-area: filters; }
.swiss-search-panel .adv-banner-head { margin-top: 16px; }
.swiss-search-panel .search-form > input:not([type="submit"]),
.swiss-search-panel .search-form > select,
.swiss-search-panel .search-form > span > select {
  min-height: 52px;
  border: 1px solid #cbd0d4;
  border-radius: var(--ch-radius-sm);
}
.swiss-search-panel .search-form [type="submit"] {
  grid-area: submit;
  width: 100%;
  min-height: 52px;
  margin: 0 !important;
  padding-inline: 18px;
  background: var(--ch-red);
  border-color: var(--ch-red);
  border-radius: var(--ch-radius-sm);
  font-weight: 700;
}

.swiss-cantons { margin-top: 28px; }
.swiss-canton-links { display: flex; flex-wrap: wrap; gap: 9px; }
.swiss-canton-links a {
  display: inline-flex;
  align-items: center;
  min-height: 40px;
  padding: 8px 13px;
  color: var(--ch-ink);
  background: #fff;
  border: 1px solid var(--ch-line);
  border-radius: 999px;
  font-weight: 700;
  text-decoration: none;
}
.swiss-canton-links a:hover { color: var(--ch-red); border-color: var(--ch-red); background: #fff7f8; }
.search-form input:not([type="submit"]):focus, .search-form select:focus, textarea:focus, input:focus, select:focus {
  border-color: var(--ch-red) !important;
  outline: 0;
  box-shadow: var(--ch-focus);
}
.swiss-hero-actions { display: flex; justify-content: center; flex-wrap: wrap; gap: 12px; margin-top: 22px; }
.swiss-primary-cta, .swiss-secondary-cta {
  display: inline-flex;
  align-items: center;
  justify-content: center;
  min-height: 48px;
  padding: 12px 20px;
  border: 1px solid #fff;
  border-radius: var(--ch-radius-sm);
  font-weight: 700;
  text-decoration: none;
}
.swiss-primary-cta { color: var(--ch-red-dark); background: #fff; }
.swiss-primary-cta:hover { color: var(--ch-red); transform: translateY(-1px); }
.swiss-secondary-cta { color: #fff; background: transparent; }
.swiss-secondary-cta:hover { color: #fff; background: rgba(255,255,255,.12); }
.swiss-trust-inline { display: flex; justify-content: center; flex-wrap: wrap; gap: 10px 28px; margin-top: 22px; color: rgba(255,255,255,.94); font-size: .91rem; }
.swiss-trust-inline span { font-weight: 700; }
.swiss-section { padding: clamp(38px, 6vw, 76px) 0; }
.swiss-section-heading { display: flex; align-items: end; justify-content: space-between; gap: 24px; margin-bottom: 24px; }
.swiss-section-heading h2 { margin: 0; font-size: clamp(1.55rem, 3vw, 2.2rem); text-transform: none; }
.swiss-section-heading > a { flex: none; font-weight: 700; }
.swiss-eyebrow { color: var(--ch-red); }
.swiss-category-grid { display: grid; grid-template-columns: repeat(4, minmax(0, 1fr)); gap: 14px; }
.swiss-category-card {
  display: flex;
  flex-direction: column;
  align-items: center;
  min-width: 0;
  padding: 20px 10px;
  color: var(--ch-ink);
  background: var(--ch-card);
  border: 1px solid var(--ch-line);
  border-radius: var(--ch-radius);
  box-shadow: var(--ch-shadow-sm);
  text-align: center;
  text-decoration: none;
  transition: transform .18s ease, border-color .18s ease, box-shadow .18s ease;
}
.swiss-category-card:hover { color: var(--ch-red); border-color: #f2a4af; box-shadow: var(--ch-shadow); transform: translateY(-4px); }
.swiss-category-card > span:nth-child(2) { display: flex; align-items: center; justify-content: center; width: 100%; min-height: 2.8em; font-weight: 700; line-height: 1.35; overflow-wrap: anywhere; }
.swiss-category-card small { margin-top: 4px; color: var(--ch-muted); font-size: .72rem; }
.swiss-category-icon {
  display: grid;
  place-items: center;
  width: 52px;
  height: 52px;
  margin-bottom: 12px;
  color: var(--ch-red);
  background: var(--ch-red-soft);
  border-radius: 15px;
  font-size: 1.55rem;
}
.swiss-category-icon::before { content: "▦"; }
.icon-car .swiss-category-icon::before { content: "🚘"; }
.icon-home .swiss-category-icon::before { content: "⌂"; font-size: 2rem; }
.icon-work .swiss-category-icon::before { content: "▣"; }
.icon-tech .swiss-category-icon::before { content: "▤"; }
.icon-chair .swiss-category-icon::before { content: "◇"; }
.icon-service .swiss-category-icon::before { content: "⚙"; }
.icon-leisure .swiss-category-icon::before { content: "◎"; }
.icon-fashion .swiss-category-icon::before { content: "◆"; }
.icon-family .swiss-category-icon::before { content: "♥"; }
.icon-animal .swiss-category-icon::before { content: "●"; }
.icon-professional .swiss-category-icon::before { content: "▣"; }
.icon-grid .swiss-category-icon::before { content: "▦"; }

/* Annonces récentes de l'accueil */
.swiss-recent { padding-bottom: 20px; }
.swiss-recent-grid { display: grid; grid-template-columns: repeat(5, minmax(0, 1fr)); gap: 14px; }
.swiss-recent-card { min-width: 0; overflow: hidden; background: #fff; border: 1px solid var(--ch-line); border-radius: var(--ch-radius); box-shadow: var(--ch-shadow-sm); transition: transform .18s ease, border-color .18s ease, box-shadow .18s ease; }
.swiss-recent-card:hover { border-color: #f2a4af; box-shadow: var(--ch-shadow); transform: translateY(-3px); }
.swiss-recent-card > a { display: block; height: 100%; color: var(--ch-ink); text-decoration: none; }
.swiss-recent-photo { overflow: hidden; aspect-ratio: 4 / 3; background: #eceff1; }
.swiss-recent-photo img { display: block; width: 100%; height: 100%; object-fit: cover; transition: transform .25s ease; }
.swiss-recent-card:hover .swiss-recent-photo img { transform: scale(1.025); }
.swiss-recent-info { padding: 14px; }
.swiss-recent-info h3 { display: -webkit-box; overflow: hidden; min-height: 2.7em; margin: 0 0 9px; font-size: .95rem; line-height: 1.35; -webkit-box-orient: vertical; -webkit-line-clamp: 2; }
.swiss-recent-price { margin: 0 0 6px; color: var(--ch-ink); font-size: 1.05rem; font-weight: 800; }
.swiss-recent-location { overflow: hidden; margin: 0; color: var(--ch-muted); font-size: .8rem; text-overflow: ellipsis; white-space: nowrap; }
.swiss-recent-info time { color: var(--ch-muted); font-size: .72rem; }
.swiss-home-advertisement { width: 100%; max-width: 1240px; margin: 18px auto 34px; }
.swiss-how { padding-top: 24px; }
.swiss-benefit-grid { display: grid; grid-template-columns: repeat(4, 1fr); gap: 18px; }
.swiss-benefit-grid article {
  position: relative;
  padding: 26px;
  background: #fff;
  border: 1px solid var(--ch-line);
  border-radius: var(--ch-radius);
}
.swiss-benefit-grid article > span { display: grid; place-items: center; width: 34px; height: 34px; color: #fff; background: var(--ch-red); border-radius: 10px; font-weight: 700; }
.swiss-benefit-grid h3 { margin: 16px 0 8px; padding: 0; font-size: 1.08rem; text-align: left; }
.swiss-benefit-grid p { color: var(--ch-muted); font-size: .92rem; }
.swiss-seo-copy { max-width: 900px; margin: 0 auto 30px; padding: 26px; color: var(--ch-muted); background: #fff; border: 1px solid var(--ch-line); border-radius: var(--ch-radius); }

/* Catégories complètes */
.categories { margin-top: 32px; padding: 56px 0; background: #fff; border-top: 1px solid var(--ch-line); }
.categories nav { display: grid; grid-template-columns: repeat(4, minmax(0, 1fr)); gap: 28px; }
.categories ul { width: auto; margin: 0; padding: 0; border: 0; }
.categories nav .title-cat a { display: block; margin-bottom: 10px; color: var(--ch-ink); font-size: 1rem; font-weight: 700; }
.categories nav a { color: var(--ch-muted); line-height: 1.8; }
.categories nav a:hover { color: var(--ch-red); }

/* Recherche, formulaires, compte */
.search-form, .forms, .account-container, .dashboard-container, .payment-container {
  border-radius: var(--ch-radius);
}
.search-form { background: #fff; border: 1px solid var(--ch-line); box-shadow: var(--ch-shadow-sm); }
.search-form input:not([type="submit"]), .search-form select,
.forms input:not([type="submit"]):not([type="checkbox"]):not([type="radio"]), .forms select, .forms textarea {
  min-height: 48px;
  background-color: #fff;
  border: 1px solid #cbd0d4;
  border-radius: var(--ch-radius-sm);
  color: var(--ch-ink);
}
[type="submit"], .input-submit input, a.button {
  background-color: var(--ch-red);
  border-color: var(--ch-red);
  border-radius: var(--ch-radius-sm);
  font-weight: 700;
  box-shadow: none;
}
[type="submit"]:hover, .input-submit input:hover, a.button:hover { background-color: var(--ch-red-dark); border-color: var(--ch-red-dark); opacity: 1; }
[type="radio"]:checked + label::after { background: var(--ch-red); }
[type="checkbox"]:checked + label::before { color: var(--ch-red); }
.dashboard-menu { background: var(--ch-ink); }
.dashboard-menu a { color: #fff; }

/* Résultats */
.listing-container, .ad-page-container { padding-top: 28px; padding-bottom: 48px; }
.ad-page-container { width: 92%; max-width: 1240px; }
.listing-infos { margin-bottom: 18px; padding: 18px 20px; background: #fff; border: 1px solid var(--ch-line); border-radius: var(--ch-radius); }
.background-ads-listing-container { position: relative; margin-bottom: 14px; border-radius: var(--ch-radius); }
.background-ads-listing {
  overflow: hidden;
  min-height: 174px;
  background: #fff;
  border: 1px solid var(--ch-line);
  border-radius: var(--ch-radius);
  box-shadow: var(--ch-shadow-sm);
  transition: transform .16s ease, box-shadow .16s ease, border-color .16s ease;
}
.background-ads-listing:hover { border-color: #f0a2ae; box-shadow: var(--ch-shadow); transform: translateY(-2px); }
.background-ads-listing.background-framed { border: 2px solid var(--ch-red); }
.background-ads-listing .title-listing { color: var(--ch-ink); font-size: 1.08rem; font-weight: 700; }
.background-ads-listing .price-listing { color: var(--ch-red); font-weight: 700; }
.listing-badge {
  display: inline-flex;
  align-items: center;
  width: auto;
  margin-left: 8px;
  padding: 3px 7px;
  border-radius: 999px;
  font-size: .68rem;
  font-weight: 800;
  line-height: 1;
  letter-spacing: .02em;
  vertical-align: middle;
}
.listing-badge-new { background: #e8f7ef; color: #0b6b3a; }
.listing-badge-pro { background: #fff0f2; color: var(--ch-red); }
.listing-attributes {
  display: flex;
  flex-wrap: wrap;
  gap: 5px;
  width: 100%;
  margin: 9px 0 2px;
  padding: 0;
}
.listing-attributes li {
  max-width: 100%;
  padding: 4px 8px;
  color: #454c54;
  background: #f0f2f4;
  border-radius: 7px;
  font-size: .7rem;
  font-weight: 700;
  line-height: 1.25;
  overflow-wrap: anywhere;
  white-space: normal;
}
.listing-attribute-label { color: #69717a; font-weight: 600; }
.bloc-listing-picture img { object-fit: cover; }
.pagination a { border-radius: 9px; }
.pagination a.selected, .pagination a:hover { color: #fff; background: var(--ch-red); }

/* Fiche annonce */
.ad-page-bloc-title { display: block !important; margin-bottom: 18px; padding: 20px 22px; background: #fff; border: 1px solid var(--ch-line); border-radius: var(--ch-radius); }
.ad-breadcrumb, .ad-breadcrumb ol { width: 100%; margin: 0; padding: 0; }
.ad-breadcrumb ol { display: flex; flex-wrap: wrap; align-items: center; gap: 4px 7px; list-style: none; }
.ad-breadcrumb li { display: inline-flex; align-items: center; gap: 7px; margin: 0 !important; color: var(--ch-muted); font-size: .83rem; line-height: 1.3; }
.ad-breadcrumb a { color: var(--ch-muted); text-decoration: none; }
.ad-breadcrumb a:hover { color: var(--ch-red); text-decoration: underline; }
.ad-breadcrumb span { color: #a2a8ae; font-size: 1rem; line-height: 1; }
.ad-page-bloc-title h1 { margin: 0; padding: 0; font-size: clamp(1.55rem, 3vw, 2.25rem); text-align: left; }
.ad-heading-main { display: grid !important; grid-template-columns: minmax(0, 1fr) auto; align-items: end; gap: 20px; width: 100%; margin-top: 13px; }
.ad-heading-copy { display: flex !important; flex-direction: column; align-items: flex-start; gap: 6px; min-width: 0; }
.ad-heading-main .ad-title-actions { margin: 0; }
.ad-heading-side { display: flex !important; flex: 0 0 auto !important; align-items: center; gap: 14px; width: auto !important; min-width: 0; margin: 0 !important; }
.ad-heading-summary { display: block !important; flex: 0 0 auto !important; min-width: max-content; width: auto !important; margin: 0 !important; }
.ad-heading-price { color: var(--ch-red); font-size: clamp(1.35rem, 2.2vw, 1.8rem); font-weight: 850; line-height: 1.15; white-space: nowrap; }
.ad-heading-free { color: var(--ch-success); }
.ad-heading-date { color: var(--ch-muted); font-size: .78rem; line-height: 1.35; }
.ad-heading-copy .ad-heading-price-drop { margin: 1px 0 0; padding: 4px 8px; font-size: .7rem; }
.ad-primary-meta { display: grid !important; flex: 0 0 100% !important; grid-template-columns: repeat(4, minmax(0, 1fr)); gap: 10px; width: 100%; margin-top: 16px; }
.ad-primary-meta > span { min-width: 0; padding: 11px 13px; background: #f7f8f9; border: 1px solid var(--ch-line); border-radius: 10px; }
.ad-primary-meta small, .ad-primary-meta strong { display: block; }
.ad-primary-meta small { margin-bottom: 4px; color: var(--ch-muted); font-size: .72rem; font-weight: 700; text-transform: uppercase; letter-spacing: .025em; }
.ad-primary-meta strong { color: var(--ch-ink); font-size: .92rem; overflow-wrap: anywhere; }
.ad-free-price { display: inline-flex; padding: 7px 12px; color: var(--ch-success) !important; background: #eaf7f1; border: 1px solid #b9decf; border-radius: 9px; }
.ad-donation-warning { margin: 0 0 18px; padding: 12px 14px; color: #815000; background: #fff7df; border: 1px solid #ebcf83; border-left: 4px solid #d88900; border-radius: 9px; font-weight: 700; }
.ad-page-parent-container { gap: 22px; align-items: flex-start; }
.ad-page-large-container { flex: 1 1 680px; min-width: 0; }
.ad-page-small-container { flex: 0 1 360px; min-width: 300px; }
.ad-page-bloc-photo, .ad-page-bloc-infos {
  overflow: hidden;
  margin-bottom: 20px;
  background: #fff;
  border: 1px solid var(--ch-line);
  border-radius: var(--ch-radius);
  box-shadow: var(--ch-shadow-sm);
}
.ad-page-bloc-photo .bloc-photo { display: flex; align-items: center; justify-content: center; height: auto; min-height: 0; background: #fff; }
.ad-page-bloc-photo .bloc-photo img { display: block; width: auto; max-width: 100%; height: auto; max-height: 620px; margin: 0 auto; object-fit: contain; }
.ad-page-bloc-photo.is-no-photo .bloc-photo { display: grid; place-items: center; min-height: 250px; }
.ad-page-bloc-photo.is-no-photo .bloc-photo img { width: min(100%, 430px); max-height: 300px; }
.ad-page-bloc-infos { padding: 24px; }
.ad-page-bloc-infos .title { margin: -24px -24px 20px; padding: 16px 24px; background: #fafafa; border-bottom: 1px solid var(--ch-line); }
.ad-page-bloc-infos .title span { color: var(--ch-ink); font-weight: 700; }
.ad-page-bloc-infos .price { color: var(--ch-red); font-size: 1.65rem; font-weight: 700; }
.ad-page-bloc-infos.contact { position: sticky; top: 98px; border-top: 4px solid var(--ch-red); box-shadow: var(--ch-shadow); }
.seller-profile-summary { display: grid; grid-template-columns: 54px minmax(0, 1fr); gap: 12px; align-items: center; margin-bottom: 15px; }
.seller-avatar { display: grid; place-items: center; width: 54px; height: 54px; color: #fff; background: var(--ch-ink); border-radius: 50%; font-size: 1.25rem; font-weight: 850; }
.seller-profile-summary .name-contact { margin: 0; padding: 0; text-align: left; }
.seller-profile-summary .name-contact > span { display: block; margin-top: 3px; color: var(--ch-muted); font-size: .72rem; }
.seller-sidebar-signals { display: flex; flex-wrap: wrap; gap: 5px; margin-top: 6px; }
.seller-sidebar-signals span { display: inline-flex; padding: 4px 7px; color: #16512d; background: #edf8f1; border: 1px solid #b9dec5; border-radius: 999px; font-size: .66rem; font-weight: 800; line-height: 1.2; }
.ad-page-bloc-infos.contact a.message, .ad-page-bloc-infos.contact a.phone { border-radius: var(--ch-radius-sm); }
.ad-page-bloc-infos.contact a.message { color: #fff; background: var(--ch-red); font-weight: 800; }
.ad-page-bloc-infos.contact a.message:hover { color: #fff; background: var(--ch-red-dark); }
.contact-guest-info { margin: 8px 2px 12px; color: var(--ch-muted); font-size: .78rem; line-height: 1.45; text-align: center; }
.ad-page-bloc-infos.contact .whatsapp-contact {
  display: flex;
  align-items: center;
  justify-content: center;
  gap: 9px;
  min-height: 48px;
  margin-top: 12px;
  padding: 12px 15px;
  color: #fff;
  background: #168b49;
  border-radius: var(--ch-radius-sm);
  font-weight: 700;
  text-decoration: none;
}
.ad-page-bloc-infos.contact .whatsapp-contact:hover { color: #fff; background: #0f713b; }
.whatsapp-privacy { margin: 8px 0 0; color: var(--ch-muted); font-size: .72rem; line-height: 1.4; }
.price-drop { display: inline-flex; gap: 8px; margin: 0 0 16px; padding: 6px 10px; color: var(--ch-success); background: #eaf7f1; border-radius: 8px; font-size: .8rem; font-weight: 700; }
.ad-title-actions { display: flex; align-items: center; gap: 10px; }
.native-share { min-height: 42px; padding: 8px 12px; color: var(--ch-ink); background: #fff; border: 1px solid var(--ch-line); border-radius: 9px; cursor: pointer; font-weight: 700; }
.native-share:hover { color: var(--ch-red); border-color: #f0a2ae; }
.ad-page-bloc-infos .report-abuse a { color: var(--ch-red-dark); font-weight: 700; }
.trust-safety-card { margin: 18px 0; padding: 18px; background: #f7fbf9; border: 1px solid #bfe1d1; border-radius: var(--ch-radius-sm); }
.trust-safety-card h2, .trust-safety-card h3 { margin: 0 0 8px; padding: 0; color: var(--ch-success); font-size: 1rem; text-align: left; }
.trust-safety-card p { color: #43534b; font-size: .88rem; }
.trust-report-page { max-width: 820px; padding: 48px 0 70px; }
.trust-report-card { padding: clamp(24px, 5vw, 48px); background: #fff; border: 1px solid var(--ch-line); border-radius: var(--ch-radius-lg); box-shadow: var(--ch-shadow); }
.trust-report-card h1 { margin: 0 0 12px; padding: 0; text-align: left; }
.trust-report-summary { margin-bottom: 24px; padding: 14px; background: #f5f6f7; border-radius: 10px; }
.trust-report-form { display: grid; gap: 10px; margin-top: 20px; padding: 0; border: 0; box-shadow: none; }
.trust-report-form label { margin-top: 8px; font-weight: 700; }
.trust-report-form label small { color: var(--ch-muted); font-weight: 400; }
.trust-report-form input:not([type="submit"]), .trust-report-form select, .trust-report-form textarea { width: 100%; padding: 12px; }
.trust-report-form [type="submit"] { margin: 18px 0 0; }
.trust-report-success, .trust-report-error { padding: 14px; border-radius: 10px; }
.trust-report-success { color: var(--ch-success); background: #eaf7f1; border: 1px solid #b9decf; }
.trust-report-error { color: #9f0015; background: var(--ch-red-soft); border: 1px solid #f1bcc4; }
.trust-report-back { margin-top: 24px; }
.seller-trust-signals { display: flex; flex-wrap: wrap; gap: 8px; margin-top: 16px; }
.seller-trust-signals span { padding: 7px 10px; color: var(--ch-success) !important; background: #eaf7f1; border: 1px solid #c2e1d3; border-radius: 999px; font-size: .78rem; font-weight: 700; }
.ad-location-card { overflow: hidden; margin-top: 22px; background: #fff; border: 1px solid var(--ch-line); border-radius: var(--ch-radius); box-shadow: var(--ch-shadow-sm); }
.ad-location-heading { display: flex; align-items: center; justify-content: space-between; gap: 18px; padding: 17px 19px; }
.ad-location-heading h2 { margin: 0 0 5px; color: var(--ch-ink); font-size: 1rem; line-height: 1.25; }
.ad-location-place { margin: 0; color: var(--ch-ink); font-size: .94rem; font-weight: 750; }
.ad-location-privacy { max-width: 330px; margin: 0; color: var(--ch-muted); font-size: .76rem; line-height: 1.4; text-align: right; }
.ad-location-map { width: 100%; height: 280px; background: #e9ecef; }
.ad-location-footer { margin: 0; padding: 11px 18px; text-align: right; }
.ad-location-footer a { color: var(--ch-red-dark); font-size: .8rem; font-weight: 750; text-decoration: none; }
.ad-location-footer a:hover { text-decoration: underline; }
.ad-location-placeholder { display: grid; place-items: center; min-height: 210px; padding: 26px; background-color: #eef0f2; background-image: linear-gradient(rgba(120,128,135,.12) 1px, transparent 1px), linear-gradient(90deg, rgba(120,128,135,.12) 1px, transparent 1px); background-size: 28px 28px; text-align: center; }
.ad-location-placeholder > span { display: block; width: 38px; height: 38px; margin-bottom: 12px; background: var(--ch-red); border: 10px solid #fff; border-radius: 50% 50% 50% 0; box-shadow: 0 5px 14px rgba(22,25,29,.2); transform: rotate(-45deg); }
.ad-location-placeholder button { min-height: 44px; padding: 10px 16px; color: #fff; background: var(--ch-red); border: 0; border-radius: 10px; cursor: pointer; font-weight: 750; }
.ad-location-placeholder button:hover { background: var(--ch-red-dark); }
.ad-location-placeholder button:disabled { cursor: wait; opacity: .65; }
.ad-location-placeholder p { min-height: 1.2em; margin: 8px 0 0; color: #7f0011; font-size: .76rem; }
.ad-location-unavailable { margin: 0; padding: 20px; color: var(--ch-muted); background: #f4f5f6; font-size: .84rem; text-align: center; }
.deposit-progress { display: grid; grid-template-columns: repeat(4, 1fr); gap: 10px; max-width: 900px; margin: 0 auto 24px; padding: 0; }
.deposit-progress li { display: flex; align-items: center; gap: 9px; color: var(--ch-muted); font-size: .85rem; }
.deposit-progress span { display: inline-grid; place-items: center; flex: 0 0 30px; height: 30px; color: #fff; background: var(--ch-red); border-radius: 9px; font-weight: 700; }
.deposit-safety-note { max-width: 900px; margin: 0 auto 24px; padding: 14px 16px; color: #43534b; background: #f1f9f5; border: 1px solid #c2e1d3; border-radius: 10px; }
.location-privacy-note { max-width: 900px; margin: 0 auto 18px; padding: 14px 16px; color: #24332b; background: #eef9f3; border-left: 4px solid var(--ch-success); border-radius: 8px; line-height: 1.5; }
.location-privacy-note strong { display: block; margin-bottom: 3px; }
.geolocalisation.location-simple > div:nth-child(1) { width: 100%; max-width: 760px; }
.geolocalisation.location-simple.location-with-map { gap: 18px; align-items: stretch; }
.geolocalisation.location-simple.location-with-map > div:nth-child(1) { flex: 1 1 390px; max-width: none; }
.geolocalisation.location-simple.location-with-map #display-map { flex: 1 1 390px; min-height: 310px; margin: 0; border-radius: 11px; }
.geolocalisation.location-simple > div:nth-child(1) input,
.geolocalisation.location-simple > div:nth-child(1) select { width: 100%; }
.location-simple #display_counties { display: block; }
.geolocation-button { display: inline-flex; align-items: center; margin: 8px 0 4px; padding: 0; background: transparent; border: 0; cursor: pointer; font: inherit; text-decoration: underline; text-underline-offset: 3px; }
.geolocation-button:focus-visible { outline: 3px solid rgba(216,6,33,.22); outline-offset: 4px; border-radius: 3px; }
.geoloc-status { max-width: 680px; margin: 5px 0 16px; color: var(--ch-muted); font-size: .82rem; line-height: 1.45; }
.geoloc-status.is-error { color: #9f0015; }
.character-counter { margin: -12px 0 16px; color: var(--ch-muted); font-size: .78rem; text-align: right; }
.character-counter.is-short { color: var(--ch-warning); }
.whatsapp-consent { display: flex; align-items: flex-start; gap: 9px; max-width: 680px; padding: 13px 15px; background: #f1f9f5; border: 1px solid #c2e1d3; border-radius: 10px; }
.whatsapp-consent label { line-height: 1.35; }
.whatsapp-consent small { color: var(--ch-muted); }
.whatsapp-consent.is-disabled { opacity: .55; }
.ad-quality-meter { max-width: 680px; margin: 0 0 20px; padding: 14px 16px; background: #fafafa; border: 1px solid var(--ch-line); border-radius: 10px; }
.ad-quality-meter > div { overflow: hidden; height: 8px; margin: 9px 0; background: #e1e4e6; border-radius: 999px; }
.ad-quality-meter i { display: block; width: 0; height: 100%; background: var(--ch-warning); border-radius: inherit; transition: width .2s ease; }
.ad-quality-meter.is-good i { background: var(--ch-success); }
.ad-quality-meter p { margin: 0; color: var(--ch-muted); font-size: .8rem; }
.mobile-action-bar { display: none; }
.mobile-country-switch { display: none; }

/* Publicités : elles restent actives, mais ne peuvent plus couvrir la recherche. */
.adv-banner-head, .bloc-advertisement-area { position: relative; z-index: 0; overflow: hidden; width: 100%; min-width: 0; max-width: 100%; box-sizing: border-box; }
.adv-banner-head *, .bloc-advertisement-area * { min-width: 0; max-width: 100% !important; box-sizing: border-box; }
.adv-banner-head ins.adsbygoogle, .bloc-advertisement-area ins.adsbygoogle { display: block !important; width: 100% !important; max-width: 100% !important; }
.adv-banner-head iframe, .bloc-advertisement-area iframe { width: 100% !important; max-width: 100% !important; }
.adv-banner-head.is-ad-unfilled, .bloc-advertisement-area.is-ad-unfilled { display: none !important; }
.swiss-search-panel, .swiss-search-panel .search-form, .swiss-search-panel [type="submit"] { position: relative; z-index: 3; }

/* Cartes d'annonces plus lisibles et régulières. */
.background-ads-listing { overflow: hidden; align-items: stretch; }
.bloc-listing-first { min-width: 0; padding: 18px 20px; }
.background-ads-listing .title-listing { margin-bottom: 12px; line-height: 1.35; }
.bloc-listing-picture { order: -1; overflow: hidden; width: 230px; min-width: 230px; background: #eef0f2; }
.bloc-listing-picture img { display: block; width: 100%; height: 100%; min-height: 170px; }
.bloc-listing-last { min-width: 130px; padding: 18px 16px; background: #fafafa; border-left: 1px solid var(--ch-line); }
.category-listing p, .localisation-listing { line-height: 1.55; }

/* Fiche annonce : hiérarchie plus proche des standards des grandes plateformes. */
.ad-page-bloc-title h1, .ad-page-container h1 { max-width: 900px; margin: 0; font-size: clamp(1.45rem, 2.2vw, 2rem) !important; line-height: 1.18 !important; overflow-wrap: anywhere; }
.ad-page-bloc-photo { overflow: hidden; border-radius: var(--ch-radius); }
.ad-page-bloc-infos.contact a { min-height: 46px; border-radius: 10px; }
.ad-page-bloc-infos.contact .whatsapp-contact { display: flex; align-items: center; justify-content: center; color: #fff; background: #168b49; border-color: #168b49; font-weight: 800; }
body.google-anno-skip #google-anno-sa,
body.google-anno-skip [id^="google-anno-sa-"] { display: none !important; }
.ad-page-parent-container > .list-premium {
  display: grid;
  grid-template-columns: repeat(3, minmax(0, 1fr));
  gap: 16px;
  grid-column: 1 / -1;
  width: 100%;
  margin-top: 26px;
}
.ad-page-parent-container > .list-premium h2 { grid-column: 1 / -1; height: auto; margin: 0 0 4px; line-height: 1.3; }
.ad-page-parent-container > .list-premium .background-ads-premium {
  overflow: hidden;
  width: auto;
  min-width: 0;
  margin: 0;
  padding: 0 0 12px;
  background: #fff;
  border: 1px solid var(--ch-line);
  border-radius: var(--ch-radius);
  box-shadow: var(--ch-shadow-sm);
}
.ad-page-parent-container > .list-premium .background-ads-premium:hover { border-color: #f0a2ae; box-shadow: var(--ch-shadow); transform: translateY(-2px); }
.ad-page-parent-container > .list-premium .background-ads-premium > img { width: 100%; max-width: none; height: 180px; margin: 0; border-radius: 0; object-fit: cover; }
.ad-page-parent-container > .list-premium .bloc-premium-infos p { margin: 14px 15px 5px; color: var(--ch-ink); line-height: 1.45; text-align: left; }
.ad-page-parent-container > .list-premium .txt-info-premium { color: var(--ch-muted); }
.ad-page-parent-container > .list-premium .txt-price-premium { color: var(--ch-red); }

/* Catégories et résultats : véritable interface moderne, distincte du PAG historique. */
.page-search { background: #f4f5f6; }
.page-search .search-results-container {
  width: calc(100% - 32px);
  max-width: 1240px;
  margin: 0 auto 52px;
  padding-top: 34px;
}
.page-search .listing-infos {
  display: flex;
  flex-wrap: wrap;
  align-items: center;
  gap: 8px 14px;
  margin: 0 0 18px;
  padding: 24px 26px;
  background: #fff;
  border: 1px solid var(--ch-line);
  border-radius: var(--ch-radius-lg);
  box-shadow: var(--ch-shadow-sm);
}
.page-search .listing-infos h1,
.page-search .listing-infos h2 {
  flex: 0 0 100%;
  margin: 0 0 8px;
  padding: 0;
  color: var(--ch-ink);
  font-size: clamp(1.55rem, 2.6vw, 2.15rem);
  line-height: 1.2;
  text-align: left;
}
.page-search .listing-infos p { margin: 0; padding: 0; color: var(--ch-muted); font-size: .9rem; }
.page-search .listing-infos-link {
  display: inline-flex;
  align-items: center;
  min-height: 34px;
  padding: 6px 11px;
  color: var(--ch-ink);
  background: #f5f6f7;
  border: 1px solid var(--ch-line);
  border-radius: 999px;
  font-size: .84rem;
  font-weight: 700;
  text-decoration: none;
}
.page-search .listing-infos-link:hover, .page-search .listing-infos-link.link-selected {
  color: var(--ch-red-dark);
  background: var(--ch-red-soft);
  border-color: #efadb7;
  text-decoration: none;
}
.page-search .listing-infos-select { margin-left: auto !important; }
.page-search .listing-infos .listing-infos-select select {
  width: 170px;
  min-height: 42px;
  margin: 0;
  padding: 0 38px 0 12px;
  background-color: #fff;
  border: 1px solid var(--ch-line);
  border-radius: 10px;
  color: var(--ch-ink);
  font-weight: 700;
}
.page-search .listing-infos .save-shearch {
  display: inline-flex;
  align-items: center;
  min-height: 42px;
  padding: 7px 12px 7px 36px;
  color: var(--ch-ink);
  background-position: 12px center;
  border: 1px solid var(--ch-line);
  border-radius: 10px;
  font-weight: 700;
  text-decoration: none;
}
.page-search .listing-search-panel {
  margin-bottom: 26px;
  padding: 19px 22px 21px;
  background: #fff;
  border: 1px solid var(--ch-line);
  border-radius: var(--ch-radius-lg);
  box-shadow: var(--ch-shadow-sm);
}
.page-search .listing-search-kicker {
  margin: 0 0 12px;
  color: var(--ch-muted);
  font-size: .75rem;
  font-weight: 800;
  letter-spacing: .08em;
  text-transform: uppercase;
}
.page-search .listing-search-panel .search-form {
  display: flex;
  flex-wrap: wrap;
  align-items: center;
  gap: 10px;
  width: 100%;
  margin: 0;
  padding: 0;
  background: transparent;
  border: 0;
  border-radius: 0;
  box-shadow: none;
}
.page-search .listing-search-panel .search-form #search-type {
  display: flex;
  flex: 0 0 100%;
  gap: 6px;
  margin: 0 0 3px;
  overflow-x: auto;
  scrollbar-width: thin;
}
.page-search .listing-search-panel .search-form #search-type li { flex: 0 0 auto; margin: 0; }
.page-search .listing-search-panel .search-form #search-type label {
  display: inline-flex;
  align-items: center;
  min-height: 36px;
  padding: 6px 11px 6px 28px;
  background: #f6f7f8;
  border: 1px solid var(--ch-line);
  border-radius: 999px;
}
.page-search .listing-search-panel .search-form > input:not([type="submit"]),
.page-search .listing-search-panel .search-form > select,
.page-search .listing-search-panel .search-form #get_counties > select,
.page-search .listing-search-panel .search-form #cat-search > select {
  flex: 1 1 190px;
  width: auto;
  min-width: 0;
  min-height: 48px;
  margin: 0;
  padding-inline: 12px;
  background-color: #fff;
  border: 1px solid #cbd0d4;
  border-radius: 10px;
  color: var(--ch-ink);
}
.page-search .listing-search-panel .search-form > input.input-keywords { flex: 2 1 280px; width: auto; }
.page-search .listing-search-panel .search-form #get_counties:empty { display: none; }
.page-search .listing-search-panel .search-form #cat-search { display: contents; }
.page-search .listing-search-panel .search-form #search-ads {
  display: flex !important;
  flex: 1 1 430px;
  flex-wrap: wrap;
  gap: 7px 16px;
  margin: 0;
}
.page-search .listing-search-panel .search-form #search-ads li { margin: 0; }
.page-search .listing-search-panel .search-form #get_options {
  display: flex;
  flex: 1 1 100%;
  flex-wrap: wrap;
  gap: 9px;
}
.page-search .listing-search-panel .search-form #get_options > #option { display: contents; }
.page-search .listing-search-panel .search-form #get_options p,
.page-search .listing-search-panel .search-form #get_options div { margin: 0; }
.page-search .listing-search-panel .search-form #get_options .get-options-p,
.page-search .listing-search-panel .search-form #get_options .get-options-p-data,
.page-search .listing-search-panel .search-form #get_options .price-range { display: flex; flex: 1 1 250px; gap: 8px; }
.page-search .listing-search-panel .search-form #get_options input,
.page-search .listing-search-panel .search-form #get_options select {
  width: 100%;
  min-width: 0;
  min-height: 44px;
  margin: 0;
  padding: 8px 10px;
  background: #fff;
  border: 1px solid #cbd0d4;
  border-radius: 9px;
}
.page-search .advanced-search-filters,
.swiss-search-panel .advanced-search-filters {
  flex: 1 1 100%;
  width: 100%;
  margin-top: 2px;
  overflow: hidden;
  background: #f7f8f9;
  border: 1px solid var(--ch-line);
  border-radius: 11px;
}
.page-search .advanced-search-filters > summary,
.swiss-search-panel .advanced-search-filters > summary {
  display: flex;
  align-items: center;
  justify-content: space-between;
  min-height: 46px;
  padding: 10px 14px;
  color: var(--ch-ink);
  cursor: pointer;
  font-weight: 800;
  list-style: none;
}
.page-search .advanced-search-filters > summary::-webkit-details-marker,
.swiss-search-panel .advanced-search-filters > summary::-webkit-details-marker { display: none; }
.page-search .advanced-search-filters > summary::after,
.swiss-search-panel .advanced-search-filters > summary::after {
  content: '+';
  display: inline-grid;
  place-items: center;
  width: 26px;
  height: 26px;
  margin-left: 10px;
  color: var(--ch-ink);
  background: #fff;
  border: 1px solid var(--ch-line);
  border-radius: 50%;
  font-size: 1.05rem;
  line-height: 1;
}
.page-search .advanced-search-filters[open] > summary::after,
.swiss-search-panel .advanced-search-filters[open] > summary::after { content: '\2212'; }
.page-search .advanced-search-filters-count,
.swiss-search-panel .advanced-search-filters-count {
  margin-left: auto;
  color: var(--ch-muted);
  font-size: .76rem;
  font-weight: 600;
}
.page-search .advanced-search-filters-body,
.swiss-search-panel .advanced-search-filters-body {
  display: flex;
  flex-wrap: wrap;
  gap: 9px;
  padding: 13px;
  background: #fff;
  border-top: 1px solid var(--ch-line);
}
.page-search .advanced-search-filters-body > p,
.page-search .advanced-search-filters-body > div,
.page-search .advanced-search-filters-body > span,
.swiss-search-panel .advanced-search-filters-body > p,
.swiss-search-panel .advanced-search-filters-body > div,
.swiss-search-panel .advanced-search-filters-body > span { flex: 1 1 calc(33.333% - 12px); min-width: 220px; max-width: calc(33.333% - 6px); }
.page-search .advanced-search-filters-body > span[id^="options_child_form_"]:empty,
.swiss-search-panel .advanced-search-filters-body > span[id^="options_child_form_"]:empty { display: none; }
.screen-reader-text {
  position: absolute !important;
  width: 1px !important;
  height: 1px !important;
  padding: 0 !important;
  margin: -1px !important;
  overflow: hidden !important;
  clip: rect(0, 0, 0, 0) !important;
  white-space: nowrap !important;
  border: 0 !important;
}
.search-quick-filters,
.search-active-filters {
  display: flex;
  flex: 1 1 100%;
  flex-wrap: wrap;
  align-items: center;
  gap: 8px;
  width: 100%;
}
.search-quick-filters > span,
.search-active-filters-label {
  margin-right: 2px;
  color: var(--ch-muted);
  font-size: .78rem;
  font-weight: 800;
}
.search-quick-filter,
.search-active-filters a {
  display: inline-flex;
  align-items: center;
  justify-content: center;
  min-height: 38px;
  margin: 0;
  padding: 7px 13px;
  color: var(--ch-ink);
  background: #fff;
  border: 1px solid #cbd0d4;
  border-radius: 999px;
  font: inherit;
  font-size: .84rem;
  font-weight: 750;
  line-height: 1.15;
  text-decoration: none;
  cursor: pointer;
}
.search-quick-filter:hover,
.search-quick-filter:focus-visible,
.search-active-filters a:hover,
.search-active-filters a:focus-visible {
  color: var(--ch-red);
  border-color: var(--ch-red);
}
.search-quick-filter.is-active {
  color: #fff;
  background: var(--ch-red);
  border-color: var(--ch-red);
}
.search-active-filters { padding-top: 2px; }
.search-active-filters a {
  min-height: 34px;
  padding: 6px 9px 6px 12px;
  color: #75131e;
  background: #fff4f5;
  border-color: #efc5ca;
}
.search-active-filters a > span[aria-hidden="true"] {
  display: inline-grid;
  place-items: center;
  width: 19px;
  height: 19px;
  margin-left: 7px;
  background: rgba(117,19,30,.09);
  border-radius: 50%;
  font-size: 1rem;
  line-height: 1;
}
.search-all-filters {
  flex: 1 1 100%;
  width: 100%;
  overflow: visible;
}
.search-all-filters > summary {
  display: inline-flex;
  align-items: center;
  min-height: 40px;
  padding: 8px 13px;
  color: var(--ch-ink);
  background: #fff;
  border: 1px solid #cbd0d4;
  border-radius: 999px;
  cursor: pointer;
  font-size: .86rem;
  font-weight: 800;
  list-style: none;
}
.search-all-filters > summary::-webkit-details-marker { display: none; }
.search-all-filters > summary small {
  margin-left: 8px;
  color: var(--ch-muted);
  font-size: .75rem;
  font-weight: 600;
}
.search-all-filters > summary::after {
  content: '+';
  display: inline-grid;
  place-items: center;
  width: 21px;
  height: 21px;
  margin-left: 8px;
  color: var(--ch-ink);
  background: #f2f3f4;
  border-radius: 50%;
  font-size: .95rem;
  line-height: 1;
}
.search-all-filters[open] > summary {
  color: #fff;
  background: var(--ch-ink);
  border-color: var(--ch-ink);
}
.search-all-filters[open] > summary small { color: rgba(255,255,255,.75); }
.search-all-filters[open] > summary::after { content: '\2212'; color: #fff; background: rgba(255,255,255,.14); }
.search-all-filters-body {
  display: grid;
  grid-template-columns: repeat(2, minmax(0, 1fr));
  gap: 12px;
  margin-top: 10px;
  padding: 14px;
  background: #f7f8f9;
  border: 1px solid var(--ch-line);
  border-radius: 13px;
}
.search-all-filters:not([open]) > .search-all-filters-body,
.page-search .advanced-search-filters:not([open]) > .advanced-search-filters-body,
.swiss-search-panel .advanced-search-filters:not([open]) > .advanced-search-filters-body { display: none; }
.search-filter-section {
  min-width: 0;
  padding: 15px;
  background: #fff;
  border: 1px solid var(--ch-line);
  border-radius: 11px;
}
#search-filter-type,
#search-filter-price,
.search-filter-actions { grid-column: 1 / -1; }
.search-filter-section-heading { margin-bottom: 12px; }
.search-filter-section-heading h3 { margin: 0 0 3px; color: var(--ch-ink); font-size: .96rem; }
.search-filter-section-heading p { margin: 0; color: var(--ch-muted); font-size: .78rem; line-height: 1.4; }
.search-legacy-type { flex: 1 1 100%; width: 100%; }
.search-legacy-type .search-filter-section { padding: 12px; }
.search-legacy-type .search-choice-grid { display: flex; flex-wrap: wrap; gap: 8px; margin: 0; }
.search-legacy-type .search-choice-grid li { display: inline-flex; align-items: center; gap: 5px; margin: 0; }
.search-legacy-type .search-choice-grid label { display: grid; gap: 1px; }
.search-legacy-type .search-choice-grid label small { color: var(--ch-muted); font-size: .7rem; }
.search-postcode-filter { display: grid; gap: 6px; color: var(--ch-muted); font-size: .78rem; font-weight: 700; }
.search-postcode-filter input { width: 100% !important; min-height: 44px; margin: 0 !important; padding: 8px 10px; color: var(--ch-ink); background: #fff; border: 1px solid #cbd0d4; border-radius: 9px; font: inherit; }
.search-all-filters-body #search-type,
.search-all-filters-body #search-ads,
.search-all-filters-body #get_options { flex: 1 1 100% !important; }
.page-search .listing-search-panel .search-form #search-type.search-choice-grid {
  display: grid;
  grid-template-columns: repeat(3, minmax(0, 1fr));
  gap: 8px;
  margin: 0;
  overflow: visible;
}
.page-search .listing-search-panel .search-form #search-type.search-choice-grid li {
  display: grid;
  grid-template-columns: 18px minmax(0, 1fr);
  gap: 8px;
  align-items: start;
  min-width: 0;
  margin: 0;
  padding: 11px;
  background: #fafafa;
  border: 1px solid var(--ch-line);
  border-radius: 9px;
}
.page-search .listing-search-panel .search-form #search-type.search-choice-grid input { width: 16px; height: 16px; margin: 2px 0 0; }
.page-search .listing-search-panel .search-form #search-type.search-choice-grid label {
  display: grid;
  gap: 2px;
  min-height: 0;
  padding: 0;
  background: transparent;
  border: 0;
  border-radius: 0;
  line-height: 1.25;
}
.search-choice-grid label span { color: var(--ch-ink); font-weight: 800; }
.search-choice-grid label small,
.search-all-filters-body #search-ads label small { color: var(--ch-muted); font-size: .72rem; font-weight: 500; }
.page-search .listing-search-panel .search-form #search-ads {
  display: grid !important;
  grid-template-columns: repeat(2, minmax(0, 1fr));
  gap: 8px;
}
.page-search .listing-search-panel .search-form #search-ads li {
  display: grid;
  grid-template-columns: 18px minmax(0, 1fr);
  gap: 8px;
  align-items: start;
  padding: 9px;
  background: #fafafa;
  border-radius: 8px;
}
.page-search .listing-search-panel .search-form #search-ads input[type="checkbox"] { width: 16px; height: 16px; margin: 2px 0 0; }
.page-search .listing-search-panel .search-form #search-ads input[type="hidden"] { display: none; }
.page-search .listing-search-panel .search-form #search-ads label { display: grid; gap: 2px; line-height: 1.3; }
.page-search .listing-search-panel .search-form .search-filter-section #get_options { display: block; }
.page-search .listing-search-panel .search-form .search-filter-section #get_options > #option { display: flex; flex-wrap: wrap; gap: 9px; }
.page-search .listing-search-panel .search-form .search-filter-section #get_options > #option > .advanced-search-filters { flex-basis: 100%; }
.search-filter-actions { display: flex; align-items: center; justify-content: flex-end; gap: 12px; padding-top: 2px; }
.search-filter-actions > a { color: var(--ch-muted); font-size: .84rem; font-weight: 700; }
.page-search .listing-search-panel .search-form .search-filter-actions .search-filter-apply {
  flex: 0 0 auto;
  min-height: 44px;
  margin: 0;
  padding: 9px 18px;
  color: #fff;
  background: var(--ch-red);
  border: 1px solid var(--ch-red);
  border-radius: 9px;
  font-weight: 800;
}
[hidden] { display: none !important; }
.page-search .listing-search-panel .search-form [type="submit"] {
  flex: 0 0 auto;
  min-height: 48px;
  margin: 0 0 0 auto;
  padding: 11px 22px;
  border-radius: 10px;
}
.page-search .adv-banner-head { margin: 0 0 24px; }
.page-search .search-results-listing {
  display: grid;
  grid-template-columns: minmax(0, 1fr) 280px;
  gap: 24px;
  align-items: start;
  width: 100%;
}
.page-search .search-results-listing > div:first-child {
  display: grid;
  grid-template-columns: repeat(3, minmax(0, 1fr));
  gap: 18px;
  min-width: 0;
}
.page-search .search-results-listing.no-sidebar { grid-template-columns: minmax(0, 1fr); }
.page-search .search-results-listing.no-sidebar > div:first-child { grid-template-columns: repeat(4, minmax(0, 1fr)); }
.page-search .background-ads-listing-container { min-width: 0; margin: 0; }
.page-search .background-ads-listing {
  display: flex;
  flex-direction: column;
  align-items: stretch;
  height: 100%;
  min-height: 405px;
  margin: 0;
  padding: 0;
  color: var(--ch-ink);
  background: #fff;
  border: 1px solid var(--ch-line);
  border-radius: var(--ch-radius);
  box-shadow: var(--ch-shadow-sm);
}
.page-search .background-ads-listing:visited { color: var(--ch-ink); }
.page-search .background-ads-listing:hover { color: var(--ch-ink); }
.page-search .bloc-listing-picture {
  order: -1;
  width: 100%;
  min-width: 0;
  height: 190px;
  margin: 0;
  background: #e9ecee;
}
.page-search .bloc-listing-picture img {
  width: 100%;
  max-width: none;
  height: 190px;
  min-height: 0;
  margin: 0;
  border-radius: 0;
  object-fit: cover;
}
.page-search .bloc-listing-picture img[src*="no_photo2.png"],
.swiss-recent-photo img[src*="no_photo2.png"] {
  padding: 34px;
  object-fit: contain;
  background: #f3f4f5;
}
.page-search .bloc-listing-first {
  flex: 1 1 auto;
  width: 100%;
  height: auto;
  padding: 16px 17px 10px;
  line-height: 1.45;
}
.page-search .background-ads-listing .title-listing {
  min-height: 2.7em;
  margin: 0 36px 12px 0;
  color: var(--ch-ink);
  font-size: 1rem;
  line-height: 1.35;
}
.page-search .bloc-listing-first > .flex-container { display: block; }
.page-search .localisation-listing { margin: 0; color: var(--ch-muted); font-size: .85rem; line-height: 1.5; }
.page-search .price-listing { display: inline-block; margin-top: 7px; color: var(--ch-ink); font-size: 1.02rem; font-weight: 800; }
.page-search .category-listing { margin: 8px 0 0; color: var(--ch-muted); font-size: .78rem; }
.page-search .category-listing p { margin: 0; }
.page-search .bloc-listing-last {
  width: auto;
  min-width: 0;
  margin: 0;
  padding: 0 17px 15px;
  background: transparent;
  border: 0;
}
.page-search .bloc-listing-last p { margin: 0; color: var(--ch-muted); font-size: .74rem; line-height: 1.4; text-align: left; }
.listing-meta { display: grid; gap: 11px; }
.listing-date, .listing-photo-count { display: block; }
.listing-date > span { white-space: nowrap; }
.listing-photo-count { padding-top: 9px; border-top: 1px solid var(--ch-line); }
.listing-pagination { display: flex; flex-wrap: wrap; align-items: center; justify-content: center; gap: 5px; }
.listing-pagination .pagination-direction { display: inline-flex; align-items: center; gap: 6px; width: auto; padding-inline: 11px; }
.page-search .icon-heart { z-index: 2; top: 190px; margin: 14px 15px; }
.page-search .bloc-advertisement-area.listing,
.page-search .background-ads-listing-disc,
.page-search .pagination { grid-column: 1 / -1; }
.page-search .search-results-listing > .list-premium {
  position: sticky;
  top: 94px;
  width: auto;
  min-width: 0;
  margin: 0;
}

@media (max-width: 1180px) {
  .page-search .search-results-listing { grid-template-columns: 1fr; }
  .page-search .search-results-listing > .list-premium { position: static; }
  .page-search .search-results-listing.no-sidebar > div:first-child { grid-template-columns: repeat(3, minmax(0, 1fr)); }
}

@media (max-width: 920px) {
  .page-search .search-results-listing > div:first-child { grid-template-columns: repeat(2, minmax(0, 1fr)); }
  .page-search .search-results-listing.no-sidebar > div:first-child { grid-template-columns: repeat(2, minmax(0, 1fr)); }
  .page-search .listing-infos-select { margin-left: 0 !important; }
  .page-search .listing-search-panel .search-form #search-type.search-choice-grid { grid-template-columns: repeat(2, minmax(0, 1fr)); }
}

@media (min-width: 769px) and (max-width: 1100px) {
  .swiss-search-panel .search-form {
    grid-template-columns: minmax(0, 1fr) minmax(0, 1fr);
    grid-template-areas:
      "keywords keywords"
      "category region"
      "counties counties"
      "filters filters"
      "submit submit";
  }
}

@media (max-width: 640px) {
	.ad-heading-main { grid-template-columns: 1fr; }
	.ad-heading-copy { padding-right: 0; }
	.ad-heading-side { justify-content: space-between; width: 100% !important; }
	.ad-heading-summary { min-width: 0; }
	.ad-title-actions { flex: 0 1 auto; }
	.native-share { min-height: 38px; padding: 7px 9px; font-size: .78rem; }
  .page-search .search-results-container { width: calc(100% - 22px); padding-top: 18px; }
  .page-search .listing-infos { padding: 19px 17px; border-radius: 14px; }
  .page-search .listing-infos h1, .page-search .listing-infos h2 { font-size: 1.45rem; }
  .page-search .listing-infos p { flex: 1 1 auto; }
  .page-search .listing-infos-select, .page-search .listing-infos-select select { width: 100% !important; }
  .page-search .save-shearch-container, .page-search .listing-infos .save-shearch { width: 100%; }
  .page-search .listing-search-panel { padding: 16px 13px; border-radius: 14px; }
  .page-search .listing-search-panel .search-form > input:not([type="submit"]),
  .page-search .listing-search-panel .search-form > select,
  .page-search .listing-search-panel .search-form #get_counties,
  .page-search .listing-search-panel .search-form #get_counties > select,
  .page-search .listing-search-panel .search-form #cat-search > select { flex: 1 1 100%; width: 100%; }
  .page-search .listing-search-panel .search-form #search-ads { flex: 1 1 100%; }
  .page-search .listing-search-panel .search-form [type="submit"] { width: 100%; margin-left: 0; }
  .search-all-filters > summary { width: 100%; justify-content: space-between; border-radius: 10px; }
  .search-all-filters > summary small { margin-left: auto; }
  .search-all-filters-body { grid-template-columns: 1fr; padding: 10px; }
  #search-filter-type, #search-filter-price, .search-filter-actions { grid-column: auto; }
  .page-search .listing-search-panel .search-form #search-type.search-choice-grid,
  .page-search .listing-search-panel .search-form #search-ads { grid-template-columns: 1fr; }
  .search-filter-actions { align-items: stretch; flex-direction: column-reverse; }
  .search-filter-actions > a { padding: 9px; text-align: center; }
  .page-search .listing-search-panel .search-form .search-filter-actions .search-filter-apply { width: 100%; }
  .search-quick-filters > span, .search-active-filters-label { flex-basis: 100%; }
  .page-search .advanced-search-filters-count { display: none; }
  .page-search .advanced-search-filters-body > p,
  .page-search .advanced-search-filters-body > div,
  .page-search .advanced-search-filters-body > span { flex: 1 1 100% !important; width: 100%; }
  .page-search .search-results-listing > div:first-child { display: block; }
  .page-search .background-ads-listing-container { margin-bottom: 12px; }
  .page-search .background-ads-listing { flex-direction: row; min-height: 152px; }
  .page-search .bloc-listing-picture { width: 132px; min-width: 132px; height: auto; }
  .page-search .bloc-listing-picture img { height: 100%; min-height: 152px; }
  .page-search .bloc-listing-first { padding: 13px 12px; }
  .page-search .background-ads-listing .title-listing { min-height: 0; margin: 0 28px 9px 0; font-size: .94rem; }
  .page-search .category-listing, .page-search .bloc-listing-last { display: none; }
  .page-search .icon-heart { top: 0; margin: 12px; }
}

/* Pied de page */
.footer { margin-top: 0; padding: 44px 0; color: #d7dade; background: var(--ch-ink); border-top: 4px solid var(--ch-red); }
.footer-grid { display: grid; grid-template-columns: minmax(220px, 1.2fr) repeat(3, minmax(155px, 1fr)); gap: 36px; align-items: start; }
.footer-title { margin: 0 0 13px; color: #fff; font-size: .94rem; font-weight: 800; }
.footer .footer-grid nav, .footer .footer-grid ul, .footer .footer-grid li, .footer .footer-grid a { text-align: left; }
.footer-grid ul { margin: 0; padding: 0; }
.footer-grid li { margin-bottom: 7px; }
.footer-grid a { line-height: 1.35; }
.footer-networks p, .footer-networks p a, .footer ul a { color: #d7dade; }
.footer ul a:hover, .footer-networks p a:hover { color: #fff; }
.footer.footer > div.footer-trust { display: flex; width: calc(100% - 20px); max-width: 1240px; flex-wrap: wrap; justify-content: space-between; gap: 10px 24px; margin: 30px auto 0; padding-top: 22px; color: #d7dade; border-top: 1px solid rgba(255,255,255,.14); font-size: .82rem; columns: auto; column-gap: normal; }
.footer-trust span::first-letter { color: #58c88c; }

/* Libellés visibles ajoutés aux formulaires historiques. */
.field-visible-label { display: block; margin: 13px 0 6px; color: var(--ch-ink); font-size: .88rem; font-weight: 750; line-height: 1.3; }
.field-visible-label + input, .field-visible-label + select, .field-visible-label + textarea { margin-top: 0 !important; }

/* Recherche de l'espace client : même structure claire que la recherche publique. */
.page-acc_dashboard .search-form { display: flex; flex-wrap: wrap; align-items: end; gap: 10px; padding: 16px; }
.page-acc_dashboard .search-form > input:not([type="submit"]),
.page-acc_dashboard .search-form > select,
.page-acc_dashboard .search-form > span { flex: 1 1 210px; width: auto; margin: 0; }
.page-acc_dashboard .search-form [type="submit"] { min-height: 48px; margin: 0; }

/* Page d'erreur utile plutôt qu'une impasse. */
.error-page-actions { display: flex; flex-wrap: wrap; justify-content: center; gap: 10px; margin-top: 22px; }
.error-page-actions a { display: inline-flex; align-items: center; justify-content: center; min-height: 46px; padding: 10px 18px; border: 1px solid var(--ch-red); border-radius: 9px; font-weight: 800; text-decoration: none; }
.error-page-actions .primary { color: #fff; background: var(--ch-red); }

/* Espaces publicitaires réellement vides */
.adv-banner-head:empty, .bloc-advertisement-area:empty { display: none; }
@supports selector(:has(*)) {
  .adv-banner-head:not(:has(img)):not(:has(iframe)):not(:has(object)):not(:has(embed)):not(:has(script[src])) { display: none; }
}
.guest-message { display: flex !important; align-items: center; justify-content: center; gap: 8px; min-height: 46px; color: #fff !important; background: var(--ch-red) !important; border-radius: 9px; font-weight: 800; text-decoration: none; }
.message-account-note, .message-safety-note, .message-privacy-note { margin: 12px 0; padding: 13px 15px; border-radius: 9px; line-height: 1.5; }
.message-account-note { color: #164b2b; background: #edf8f1; border: 1px solid #a8d7b7; font-weight: 700; }
.forms input[readonly] { color: #4b535c; background: #f4f5f6; border-color: #d9dde1; cursor: not-allowed; }
.message-safety-note { color: #6f4300; background: #fff7df; border: 1px solid #ebcf83; }
.message-privacy-note { color: var(--ch-muted); background: #f6f7f8; border: 1px solid var(--ch-line); font-size: .86rem; }
.form-deposit > form > div > h3 { margin-top: 28px; padding: 13px 15px; color: var(--ch-ink); background: #f6f7f8; border-left: 4px solid var(--ch-red); border-radius: 8px; }
.form-deposit > form > div > h3.first { margin-top: 10px; }

@media (max-width: 900px) and (min-width: 641px) {
  .page-search .advanced-search-filters-body > p,
  .page-search .advanced-search-filters-body > div,
  .page-search .advanced-search-filters-body > span,
  .swiss-search-panel .advanced-search-filters-body > p,
  .swiss-search-panel .advanced-search-filters-body > div,
  .swiss-search-panel .advanced-search-filters-body > span { flex-basis: calc(50% - 8px); max-width: calc(50% - 5px); }
}

@media (max-width: 1080px) {
	.swiss-category-grid { grid-template-columns: repeat(4, 1fr); }
	.swiss-recent-grid { grid-template-columns: repeat(3, minmax(0, 1fr)); }
	.swiss-benefit-grid { grid-template-columns: repeat(2, 1fr); }
	.categories nav { grid-template-columns: repeat(3, 1fr); }
	.header-links a { padding-inline: 9px; font-size: .82rem; }
	.footer-grid { grid-template-columns: repeat(2, minmax(0, 1fr)); gap: 32px 28px; }
	.footer-networks { grid-column: 1 / -1; }
}

@media (min-width: 1051px) and (max-width: 1220px) {
	.header-logo img { max-width: 150px; }
	.header-links a { padding-inline: 7px; font-size: .78rem; }
}

@media (max-width: 1050px) {
	.header-links .message-link { width: 100%; margin: 0; }
	.header-links .menu { display: block; }
	.header-links .menu > a { white-space: normal; }
}

@media (min-width: 769px) and (max-width: 1050px) {
	.header-compact-actions { display: flex; }
	.mobile-country-switch { display: inline-flex; margin-left: 0; }
}

@media (min-width: 890px) {
  .ad-page-parent-container {
    display: grid;
    grid-template-columns: minmax(0, 1fr) minmax(300px, 350px);
    gap: 22px;
    align-items: start;
  }
  .ad-page-large-container, .ad-page-small-container { width: auto; min-width: 0; margin: 0; }
  .ad-page-small-container { grid-column: 2; }
}

@media (min-width: 769px) and (max-width: 889px) {
  .ad-page-parent-container { display: block; }
  .ad-page-small-container { width: 100%; min-width: 0; margin: 0; }
  .ad-page-bloc-infos.contact { position: static; }
}

@media (max-width: 768px) {
  body::before { height: 3px; }
  .container-100-child { width: calc(100% - 28px); }
  .header { min-height: 64px; }
  .header > .container-100-child { min-height: 64px; }
  .header-logo img { max-width: 148px; max-height: 44px; }
	.mobile-country-switch { display: inline-flex; align-items: center; gap: 5px; margin-left: auto; padding: 8px 10px; color: var(--ch-ink); background: #fff; border: 1px solid var(--ch-line); border-radius: 999px; font-size: .75rem; font-weight: 800; text-decoration: none; }
	.mobile-country-switch span { color: var(--ch-red); font-size: 1rem; }
  .header-links { margin-left: 0; }
	.header-language-switch { position: absolute; right: 66px; bottom: -45px; z-index: 4; background: #fff; box-shadow: 0 5px 14px rgba(22,25,29,.12); }
  .header-links .menu { gap: 2px; }
  .header-links a { width: 100%; justify-content: flex-start; padding: 11px 14px; }
  .header-links .button { justify-content: center; margin: 8px 10px; width: calc(100% - 20px); }
  .swiss-home .index-container { width: 100%; padding-top: 0; }
  .swiss-hero { padding: 30px 14px; border-radius: 0 0 22px 22px; }
  .swiss-hero-copy { margin-bottom: 20px; }
  .swiss-search-panel { padding: 14px; border-radius: 14px; }
  .swiss-search-panel .search-form { display: grid; grid-template-columns: 1fr; grid-template-areas: "keywords" "category" "region" "counties" "filters" "submit"; gap: 9px; }
  .swiss-search-panel .search-form > input:not([type="submit"]),
  .swiss-search-panel .search-form > select, .swiss-search-panel .search-form > span { width: 100%; }
  .swiss-search-panel .search-form [type="submit"] { width: 100%; }
  .swiss-hero-actions { flex-direction: column; }
  .swiss-primary-cta, .swiss-secondary-cta { width: 100%; }
  .swiss-trust-inline { align-items: flex-start; flex-direction: column; width: max-content; max-width: 100%; margin-inline: auto; }
  .swiss-section { width: calc(100% - 28px); margin: auto; }
  .swiss-section-heading { align-items: flex-start; flex-direction: column; gap: 8px; }
  .swiss-category-grid { grid-template-columns: repeat(2, 1fr); }
	.swiss-recent-grid { display: flex; gap: 12px; margin-right: -14px; padding-right: 14px; overflow-x: auto; scroll-snap-type: x proximity; scrollbar-width: thin; }
	.swiss-recent-card { flex: 0 0 min(72vw, 260px); scroll-snap-align: start; }
  .swiss-benefit-grid { grid-template-columns: 1fr; }
  .categories nav { grid-template-columns: repeat(2, 1fr); gap: 22px 16px; }
  .ad-page-parent-container { display: block; }
  .ad-page-small-container { min-width: 0; }
	.ad-primary-meta { grid-template-columns: repeat(2, minmax(0, 1fr)); }
  .ad-page-bloc-infos.contact { position: static; }
  .ad-page-parent-container > .list-premium { display: grid; grid-template-columns: repeat(2, minmax(0, 1fr)); gap: 13px; }
  .background-ads-listing { min-height: 0; }
	.bloc-listing-picture { width: 124px; min-width: 124px; }
	.bloc-listing-picture img { min-height: 150px; }
	.bloc-listing-first { padding: 14px 12px; }
	.bloc-listing-last { display: none; }
	.background-ads-listing .category-listing { display: none; }
	.background-ads-listing .title-listing { font-size: .98rem; }
  body { padding-bottom: 66px; }
  .mobile-action-bar { position: fixed; z-index: 1100; right: 0; bottom: 0; left: 0; display: grid; grid-template-columns: 1fr 1.2fr 1fr; gap: 1px; padding: 7px max(8px, env(safe-area-inset-right)) calc(7px + env(safe-area-inset-bottom)) max(8px, env(safe-area-inset-left)); background: #fff; border-top: 1px solid var(--ch-line); box-shadow: 0 -6px 20px rgba(22,25,29,.12); }
  .mobile-action-bar a { display: flex; align-items: center; justify-content: center; min-height: 44px; color: var(--ch-ink); border-radius: 9px; font-size: .78rem; font-weight: 700; text-decoration: none; }
  .mobile-action-bar .mobile-action-deposit { color: #fff; background: var(--ch-red); }
  .mobile-action-bar .mobile-action-contact { color: #fff; background: var(--ch-red); }
  .mobile-action-bar .mobile-action-whatsapp { color: #fff; background: #168b49; }
  .mobile-action-bar span { display: inline-grid; place-items: center; min-width: 20px; height: 20px; margin-left: 4px; color: #fff; background: var(--ch-red); border-radius: 10px; font-size: .68rem; }
  .deposit-progress { grid-template-columns: repeat(2, 1fr); }
	.page-search .advanced-search-filters-body > p,
	.page-search .advanced-search-filters-body > div,
	.page-search .advanced-search-filters-body > span,
	.swiss-search-panel .advanced-search-filters-body > p,
	.swiss-search-panel .advanced-search-filters-body > div,
	.swiss-search-panel .advanced-search-filters-body > span { min-width: 0; max-width: none; }
	.footer-grid { grid-template-columns: 1fr 1fr; gap: 28px 20px; }
	.footer-networks { grid-column: 1 / -1; }
	.footer-trust { gap: 8px 14px; }
}

/* V61 — finitions responsive et espaces personnels. */
html, body { max-width: 100%; overflow-x: clip; }
.header > .container-100-child { width: calc(100% - 28px); max-width: 1400px; min-width: 0; }
.header-logo, .header-links, .header-links .menu { min-width: 0; }

.search-form #search-type.search-choice-grid {
	display: grid !important;
	grid-template-columns: repeat(3, minmax(0, 1fr));
	gap: 10px;
	width: 100%;
	margin: 0;
	padding: 0;
	overflow: visible;
}
.search-form #search-type.search-choice-grid > li {
	position: relative;
	display: block !important;
	min-width: 0;
	min-height: 86px;
	margin: 0 !important;
	padding: 13px !important;
	box-sizing: border-box;
	background: #fff;
	border: 1px solid var(--ch-line);
	border-radius: 11px;
}
.search-form #search-type.search-choice-grid > li > label {
	display: grid !important;
	gap: 3px;
	width: 100% !important;
	min-width: 0 !important;
	min-height: 38px !important;
	margin: 0 !important;
	padding: 0 0 0 34px !important;
	box-sizing: border-box;
	background: transparent !important;
	border: 0 !important;
	line-height: 1.25;
	overflow-wrap: anywhere;
}
.search-form #search-type.search-choice-grid > li > label span,
.search-form #search-type.search-choice-grid > li > label small { display: block; min-width: 0; max-width: 100%; white-space: normal; }
.search-form #search-ads > li { position: relative; display: block !important; min-width: 0; }
.search-form #search-ads > li > label { display: grid !important; width: 100% !important; min-width: 0 !important; padding-left: 30px !important; box-sizing: border-box; overflow-wrap: anywhere; }

.page-acc_dashboard .search-results-container,
.page-acc_search .search-results-container,
.forms.messaging > .container-100-child { width: calc(100% - 28px); max-width: 1240px; margin-right: auto; margin-left: auto; box-sizing: border-box; }
.page-acc_dashboard .listing-infos,
.page-acc_dashboard .search-form { min-width: 0; max-width: 100%; box-sizing: border-box; }
.page-acc_dashboard .search-form > * { min-width: 0; max-width: 100%; }
.page-acc_dashboard .listing-search-panel {
	margin: 22px 0 26px;
	padding: 20px;
	background: #fff;
	border: 1px solid var(--ch-line);
	border-radius: var(--ch-radius);
	box-shadow: var(--ch-shadow-sm);
}
.page-acc_dashboard .listing-search-kicker { margin: 0 0 13px; color: var(--ch-ink); font-size: 1rem; font-weight: 850; }
.page-acc_dashboard .listing-search-panel .search-form {
	display: grid;
	grid-template-columns: minmax(220px, 1.25fr) minmax(220px, 1fr) auto;
	gap: 12px;
	align-items: center;
	width: 100%;
	margin: 0;
	padding: 0;
	background: transparent;
	border: 0;
	box-shadow: none;
}
.page-acc_dashboard .listing-search-panel .input-keywords,
.page-acc_dashboard .listing-search-panel #cat-search select {
	width: 100%;
	min-height: 48px;
	margin: 0;
	padding: 10px 13px;
	box-sizing: border-box;
	color: var(--ch-ink);
	background: #fff;
	border: 1px solid #cbd0d4;
	border-radius: 10px;
	font: inherit;
}
.page-acc_dashboard .listing-search-panel #cat-search { display: block; min-width: 0; }
.page-acc_dashboard .listing-search-panel .search-main-submit {
	grid-column: 3;
	grid-row: 1;
	min-height: 48px;
	margin: 0;
	padding: 10px 19px;
	color: #fff;
	background: var(--ch-red);
	border: 0;
	border-radius: 10px;
	font-weight: 800;
	cursor: pointer;
}
.page-acc_dashboard .listing-search-panel .search-legacy-type { grid-column: 1 / -1; }
.page-acc_dashboard .listing-search-panel .search-filter-section { margin: 5px 0 0; padding: 16px; background: #f7f8f9; border: 1px solid var(--ch-line); border-radius: 12px; }
.page-acc_dashboard .listing-search-panel .search-filter-section-heading { display: flex; align-items: baseline; justify-content: space-between; gap: 12px; margin-bottom: 12px; }
.page-acc_dashboard .listing-search-panel .search-filter-section-heading h3,
.page-acc_dashboard .listing-search-panel .search-filter-section-heading p { margin: 0; }
.page-acc_dashboard .listing-search-panel #search-type.search-choice-grid { display: grid; grid-template-columns: repeat(4, minmax(0, 1fr)); gap: 9px; margin: 0; }
.page-acc_dashboard .listing-search-panel #search-type.search-choice-grid li { position: relative; min-width: 0; margin: 0; padding: 0; list-style: none; }
.page-acc_dashboard .listing-search-panel #search-type.search-choice-grid label { display: grid; gap: 3px; min-height: 72px; padding: 13px 12px 12px 38px; box-sizing: border-box; background: #fff; border: 1px solid var(--ch-line); border-radius: 10px; cursor: pointer; }
.page-acc_dashboard .listing-search-panel #search-type.search-choice-grid input { position: absolute; top: 16px; left: 13px; width: 17px; height: 17px; margin: 0; accent-color: var(--ch-red); }
.page-acc_dashboard .listing-search-panel #search-type.search-choice-grid span { font-weight: 800; }
.page-acc_dashboard .listing-search-panel #search-type.search-choice-grid small { color: var(--ch-muted); line-height: 1.3; }

#lcm-message-box.dialog-box { overflow: auto; padding: 0; background: #fff; border: 1px solid var(--ch-line); border-radius: 18px; box-shadow: 0 24px 70px rgba(20,24,28,.24); }
#lcm-message-box .container-100,
#lcm-message-box .container-100-child { width: 100%; min-height: 0; margin: 0; box-sizing: border-box; }
#lcm-message-box .container-100-child.forms { padding: 30px; }
#lcm-message-box .lcm-message-title { margin: 0 42px 22px 0; color: var(--ch-ink); font-size: clamp(1.25rem, 2.4vw, 1.8rem); font-weight: 850; line-height: 1.2; text-transform: none; }
#lcm-message-box form[data-lcm="send-message"] { display: grid; gap: 12px; width: 100%; }
#lcm-message-box .field-visible-label { margin: 0; color: var(--ch-ink); font-size: .92rem; font-weight: 800; }
#lcm-message-box textarea.textarea-height-strong {
	display: block !important;
	width: 100% !important;
	min-height: 180px;
	height: 180px;
	margin: 0;
	padding: 14px;
	box-sizing: border-box;
	color: var(--ch-ink);
	background: #fff;
	border: 1px solid #bfc6cc;
	border-radius: 11px;
	font: inherit;
	line-height: 1.5;
	resize: vertical;
}
#lcm-message-box textarea:focus { outline: 0; border-color: var(--ch-red); box-shadow: var(--ch-focus); }
#lcm-message-box button[type="submit"] { display: inline-flex; justify-content: center; min-height: 48px; margin: 3px 0 0; padding: 10px 20px; color: #fff; background: var(--ch-red); border: 0; border-radius: 10px; font-weight: 850; cursor: pointer; }
#lcm-message-box button[type="submit"]:hover { background: var(--ch-red-dark); }

.forms.messaging { min-height: calc(100vh - 310px); padding: 44px 0 64px; background: var(--ch-bg); }
.forms.messaging .livechat-header { display: grid; grid-template-columns: 1fr auto; align-items: end; gap: 12px; margin-bottom: 18px; padding: 0; }
.forms.messaging .livechat-header h1 { margin: 0; padding: 0; font-size: clamp(1.8rem, 4vw, 2.55rem); text-align: left; }
.forms.messaging .listing-link { margin: 0; text-align: right; }
.forms.messaging .listing-link a { display: inline-flex; min-height: 42px; align-items: center; padding: 8px 13px; color: var(--ch-ink); background: #fff; border: 1px solid var(--ch-line); border-radius: 9px; font-weight: 700; }
.forms.messaging .messaging-container { min-height: 0; padding: 0; background: transparent; border: 0; box-shadow: none; }
.forms.messaging .messaging-container > div { width: 100%; }
.forms.messaging .messaging-conversation-container.alone { width: 100%; max-width: 1180px; margin: 0 auto; }
.forms.messaging .messaging-conversation {
	background: #fff;
	border: 1px solid var(--ch-line);
	border-radius: 16px;
	box-shadow: var(--ch-shadow-sm);
	overflow: hidden;
}
.forms.messaging .conversation-recipient {
	display: grid;
	grid-template-columns: auto minmax(0, 1fr) auto;
	align-items: center;
	gap: 8px 14px;
	width: 100%;
	margin: 0;
	padding: 18px;
	box-sizing: border-box;
	background: #fff;
	border-bottom: 1px solid var(--ch-line);
}
.forms.messaging .conversation-recipient-content { min-width: 0; }
.forms.messaging .conversation-recipient button[data-lcm="listing-back"] { grid-column: 1; }
.forms.messaging .conversation-recipient > .conversation-recipient-content { grid-column: 2; }
.forms.messaging .conversation-recipient > .messaging-toggle-menu { grid-column: 3; justify-self: end; }
.forms.messaging .conversation-recipient-content .title { margin: 1px 0 0; padding: 0; color: var(--ch-ink); font-size: 1.2rem; font-weight: 850; line-height: 1.2; }
.forms.messaging .conversation-eyebrow { display: block; color: var(--ch-muted); font-size: .72rem; font-weight: 800; letter-spacing: .06em; line-height: 1.3; text-transform: uppercase; }
.forms.messaging .conversation-ad-card {
	display: grid;
	grid-column: 1 / -1;
	grid-template-columns: 72px minmax(0, 1fr) auto;
	align-items: center;
	gap: 14px;
	min-width: 0;
	margin-top: 7px;
	padding: 10px;
	color: var(--ch-ink);
	background: #f7f8f9;
	border: 1px solid #e1e4e7;
	border-radius: 12px;
	text-decoration: none;
	transition: border-color .18s ease, background .18s ease, transform .18s ease;
}
.forms.messaging a.conversation-ad-card:hover { color: var(--ch-ink); background: #fff; border-color: var(--ch-red); transform: translateY(-1px); }
.forms.messaging .conversation-recipient .conversation-ad-thumb { display: block; width: 72px; height: 58px; margin: 0; overflow: hidden; border-radius: 9px; background: #eceff1; }
.forms.messaging .conversation-recipient .conversation-ad-thumb img { display: block; width: 100%; height: 100%; object-fit: cover; border-radius: 9px; }
.forms.messaging .conversation-ad-copy { display: block; min-width: 0; }
.forms.messaging .conversation-ad-copy .messaging-ad-title { display: block; margin: 2px 0; overflow: hidden; color: var(--ch-ink); font-size: 1rem; font-weight: 850; line-height: 1.3; text-overflow: ellipsis; white-space: nowrap; }
.forms.messaging .conversation-ad-copy small { display: block; color: var(--ch-muted); font-size: .76rem; }
.forms.messaging .conversation-ad-cta { display: inline-flex; align-items: center; gap: 7px; min-height: 38px; padding: 7px 11px; color: var(--ch-red); background: #fff; border: 1px solid #ead1d5; border-radius: 8px; font-size: .82rem; font-weight: 850; white-space: nowrap; }
.forms.messaging .conversation-ad-unavailable { cursor: default; opacity: .75; }
.forms.messaging .conversation-ad-unavailable .conversation-ad-cta { color: var(--ch-muted); border-color: var(--ch-line); }
.forms.messaging .conversation-content { margin: 0; padding: 22px 0; background: #f7f8f9; }
.forms.messaging .conversation-content > ul { padding: 0 24px; }
.forms.messaging .conversation-content > ul li { margin-bottom: 14px; }
.forms.messaging .conversation-content .conversation-message-day-separator p { padding: 5px 10px; color: var(--ch-muted); background: #fff; border-color: var(--ch-line); border-radius: 999px; font-size: .75rem; font-weight: 700; }
.forms.messaging .conversation-content .conversation-message-text { max-width: min(72%, 680px); padding: 11px 14px; color: var(--ch-ink); background: #fff; border: 1px solid #dfe3e6; border-radius: 14px 14px 14px 4px; line-height: 1.45; box-shadow: 0 2px 7px rgba(18,24,31,.04); }
.forms.messaging .conversation-content li[data-lcmuser="true"] .conversation-message-text { background: #fff0f2; border-color: #efbdc5; border-radius: 14px 14px 4px 14px; }
.forms.messaging .conversation-message-footer { color: var(--ch-muted); }
.forms.messaging .conversation-message-send {
	display: grid;
	grid-template-columns: minmax(0, 1fr) auto;
	align-items: end;
	gap: 9px 12px;
	width: 100%;
	max-width: 1180px;
	margin: 14px auto 0;
	padding: 16px;
	box-sizing: border-box;
	background: #fff;
	border: 1px solid var(--ch-line);
	border-radius: 14px;
	box-shadow: var(--ch-shadow-sm);
}
.forms.messaging .conversation-composer-label { grid-column: 1 / -1; color: var(--ch-ink); font-size: .9rem; font-weight: 850; }
.forms.messaging .conversation-send-message-textarea { min-height: 50px; padding: 8px 9px 8px 13px; border-color: #cbd1d6; border-radius: 10px; }
.forms.messaging .forms .conversation-message-send textarea,
.forms.messaging .conversation-message-send textarea { min-height: 34px; padding: 6px 0; color: var(--ch-ink); font: inherit; line-height: 1.45; }
.forms.messaging .conversation-message-send button[type="submit"] { width: 50px; height: 50px; margin: 0; padding: 10px; align-items: center; justify-content: center; background: var(--ch-red); border: 0; border-radius: 10px; }
.forms.messaging .conversation-composer-help { grid-column: 1 / -1; margin: 0; color: var(--ch-muted); font-size: .76rem; line-height: 1.4; }
.forms.messaging .messaging-listing { padding-right: 12px; }
.forms.messaging .messaging-listing .background-ads-listing { margin-bottom: 8px; overflow: hidden; background: #fff; border: 1px solid var(--ch-line); border-radius: 12px; }
.forms.messaging .messaging-listing .background-ads-listing.displaying { background: #fff5f6; border-color: #e6aab4; }
.forms.messaging .messaging-listing-img { width: 64px; margin-right: 12px; }
.forms.messaging .messaging-listing-img img { height: 56px; border-radius: 8px; }
.forms.messaging .messaging-listing-label { margin-top: 5px; color: var(--ch-muted); font-size: .68rem; font-weight: 800; letter-spacing: .05em; text-transform: uppercase; }
.forms.messaging .messaging-listing-infos .messaging-ad-title { margin-top: 1px; color: var(--ch-ink); font-size: .82rem; font-weight: 750; line-height: 1.3; }
.lcm-empty-state { display: grid; justify-items: center; max-width: 720px; margin: 0 auto; padding: 52px 30px; text-align: center; background: #fff; border: 1px solid var(--ch-line); border-radius: var(--ch-radius); box-shadow: var(--ch-shadow-sm); }
.lcm-empty-icon { display: grid; place-items: center; width: 58px; height: 58px; margin-bottom: 14px; color: #fff; background: var(--ch-red); border-radius: 18px; font-size: 1.55rem; }
.lcm-empty-state h2 { margin: 0 0 9px; font-size: 1.35rem; }
.lcm-empty-state p { max-width: 560px; margin: 4px 0; color: var(--ch-muted); }
.lcm-empty-action { display: inline-flex; align-items: center; min-height: 44px; margin-top: 20px; padding: 9px 17px; color: #fff; background: var(--ch-red); border-radius: 9px; font-weight: 800; text-decoration: none; }
.lcm-empty-action:hover { color: #fff; background: var(--ch-red-dark); }

@media (max-width: 1260px) and (min-width: 1051px) {
	.header > .container-100-child { gap: 10px; }
	.header-logo img { max-width: 135px; }
	.header-links a { padding-inline: 6px; font-size: .76rem; }
	.header-language-switch { margin-left: 2px; }
}
@media (max-width: 920px) {
	.search-form #search-type.search-choice-grid { grid-template-columns: repeat(2, minmax(0, 1fr)); }
	.page-acc_dashboard .listing-search-panel .search-form { grid-template-columns: 1fr 1fr; }
	.page-acc_dashboard .listing-search-panel .search-main-submit,
	.page-acc_dashboard .listing-search-panel .search-legacy-type { grid-column: 1 / -1; }
	.page-acc_dashboard .listing-search-panel .search-main-submit { grid-row: auto; }
	.page-acc_dashboard .listing-search-panel #search-type.search-choice-grid { grid-template-columns: repeat(2, minmax(0, 1fr)); }
}
@media (max-width: 640px) {
	.search-form #search-type.search-choice-grid { grid-template-columns: 1fr; }
	.forms.messaging { padding: 26px 0 44px; }
	.forms.messaging .livechat-header { grid-template-columns: 1fr; align-items: start; }
	.forms.messaging .listing-link { text-align: left; }
	.forms.messaging .conversation-recipient { padding: 13px; gap: 7px 10px; }
	.forms.messaging .conversation-ad-card { grid-template-columns: 58px minmax(0, 1fr); gap: 10px; }
	.forms.messaging .conversation-recipient .conversation-ad-thumb { width: 58px; height: 52px; }
	.forms.messaging .conversation-ad-cta { grid-column: 1 / -1; justify-content: center; min-height: 36px; }
	.forms.messaging .conversation-content > ul { padding: 0 13px; }
	.forms.messaging .conversation-content .conversation-message-text { max-width: 88%; }
	.forms.messaging .conversation-message-send { padding: 12px; border-radius: 12px; }
	.forms.messaging .conversation-composer-help { font-size: .7rem; }
	.lcm-empty-state { padding: 36px 18px; }
	.page-acc_dashboard .listing-search-panel { padding: 15px; }
	.page-acc_dashboard .listing-search-panel .search-form,
	.page-acc_dashboard .listing-search-panel #search-type.search-choice-grid { grid-template-columns: 1fr; }
	.page-acc_dashboard .listing-search-panel .search-main-submit,
	.page-acc_dashboard .listing-search-panel .search-legacy-type { grid-column: auto; }
	.page-acc_dashboard .listing-search-panel .search-filter-section-heading { display: block; }
	.page-acc_dashboard .listing-search-panel .search-filter-section-heading p { margin-top: 4px; }
	#lcm-message-box .container-100-child.forms { padding: 22px 16px; }
}

@media (max-width: 430px) {
  .swiss-category-grid { grid-template-columns: 1fr 1fr; gap: 9px; }
  .swiss-category-card { padding: 16px 8px; }
  .swiss-category-card small { display: none; }
  .categories nav { grid-template-columns: 1fr; }
  .ad-page-bloc-title, .ad-page-bloc-infos { padding: 18px; }
	.ad-page-bloc-title h1, .ad-page-container h1 { font-size: 1.4rem !important; }
	.ad-primary-meta { grid-template-columns: 1fr; }
  .ad-page-bloc-infos .title { margin: -18px -18px 18px; padding: 14px 18px; }
  .ad-page-parent-container > .list-premium { grid-template-columns: 1fr; }
  .ad-page-parent-container > .list-premium .background-ads-premium > img { height: 210px; }
  .deposit-progress { grid-template-columns: 1fr; }
	.footer-grid { grid-template-columns: 1fr; }
	.footer-networks { grid-column: auto; }
}

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

@media print {
  .header-links, .toggle-menu, .footer, .search-form, .swiss-hero-actions { display: none !important; }
  body { background: #fff; }
  .ad-page-bloc-infos, .ad-page-bloc-photo { box-shadow: none; }
}

/* V76 — corrections mobiles, messagerie et formulaire de dépôt */
.forms.messaging .lcm-load-error {
	display: grid;
	justify-items: center;
	align-content: center;
	min-height: 320px;
	padding: 28px;
	box-sizing: border-box;
	text-align: center;
	background: #fff;
	border: 1px solid var(--ch-line);
	border-radius: 14px;
}
.forms.messaging .lcm-load-error p { margin: 8px 0 18px; color: var(--ch-muted); }
.forms.messaging .lcm-load-error button { min-height: 44px; padding: 9px 18px; color: #fff; background: var(--ch-red); border: 0; border-radius: 9px; font: inherit; font-weight: 800; cursor: pointer; }

@media (max-width: 930px) {
	.forms.messaging [data-lcm="animate"] {
		display: block;
		width: 100%;
		margin-left: 0 !important;
	}
	.forms.messaging [data-lcm="animate"] > .messaging-listing {
		display: flex;
		width: 100%;
		max-width: none;
		padding: 0;
	}
	.forms.messaging [data-lcm="animate"] > .messaging-conversation-container:not(.chat) {
		display: none;
		width: 100%;
		max-width: none;
		margin: 0;
		padding: 0;
	}
	.forms.messaging [data-lcm="animate"].animate > .messaging-listing { display: none; }
	.forms.messaging [data-lcm="animate"].animate > .messaging-conversation-container:not(.chat) { display: flex; }
	.forms.messaging .messaging-listing .background-ads-listing { width: 100%; }
}

@media (max-width: 768px) {
	.header-language-switch {
		position: static;
		display: inline-flex;
		width: auto;
		margin: 12px 14px 16px;
		padding: 4px;
		box-shadow: none;
	}
	.header-language-switch a {
		width: auto !important;
		min-width: 48px;
		min-height: 40px;
		justify-content: center !important;
		padding: 7px 12px !important;
	}
	.swiss-hero h1 { font-size: clamp(2rem, 10vw, 2.8rem); line-height: 1.08; }
	.form-deposit,
	.form-deposit > form,
	.form-deposit > form > div {
		width: 100% !important;
		max-width: none;
		box-sizing: border-box;
	}
	.form-deposit > form > div { margin-right: 0; margin-left: 0; }
}

@media (max-width: 430px) {
	.forms.messaging { width: calc(100% - 24px); padding-top: 18px; }
	.forms.messaging .livechat-header h1 { padding: 20px 0 12px; font-size: 1.8rem; }
	.forms.messaging .listing-link { width: 100%; }
	.forms.messaging .listing-link a { display: flex; justify-content: center; width: 100%; box-sizing: border-box; }
	.forms.messaging .messaging-listing-conversation { padding: 10px 38px 10px 10px; }
	.forms.messaging .messaging-listing-img { width: 72px; }
	.forms.messaging .messaging-listing-img img { height: 64px; }
	.forms.messaging .lcm-load-error { min-height: 280px; }
	.form-deposit h1 { padding: 28px 8px 18px; font-size: 1.7rem; }
}

/* V68 — parcours compte et messagerie inspirés des meilleures pratiques des marketplaces */
.forms.messaging [data-lcm="animate"] { align-items: stretch; }
.forms.messaging .messaging-listing { width: 28%; max-height: 760px; padding: 0 12px 0 0; overflow-y: auto; scrollbar-width: thin; }
.forms.messaging .messaging-listing-tools { position: sticky; z-index: 3; top: 0; margin: 0 0 10px; padding: 3px 0 10px; list-style: none; background: var(--ch-bg); }
.forms.messaging .messaging-listing-tools > label { display: block; margin: 0 0 8px; color: var(--ch-ink); font-size: .96rem; font-weight: 850; }
.forms.messaging .messaging-listing-search { position: relative; }
.forms.messaging .messaging-listing-search > span { position: absolute; top: 50%; left: 12px; color: var(--ch-muted); font-size: 1.25rem; transform: translateY(-54%); pointer-events: none; }
.forms.messaging .messaging-listing-search input { width: 100%; min-height: 44px; margin: 0; padding: 9px 12px 9px 37px; box-sizing: border-box; color: var(--ch-ink); background: #fff; border: 1px solid #cbd1d6; border-radius: 10px; font: inherit; }
.forms.messaging .messaging-listing-search input:focus { outline: 0; border-color: var(--ch-red); box-shadow: var(--ch-focus); }
.forms.messaging .messaging-listing-conversation { min-width: 0; padding: 12px 34px 12px 12px; }
.forms.messaging .messaging-person { margin: 0; color: var(--ch-ink); font-size: .98rem; font-weight: 850; line-height: 1.25; }
.forms.messaging .messaging-conversation-container { min-width: 0; margin-left: 8px; }
.forms.messaging .lcm-conversation-layout { display: grid; grid-template-columns: minmax(0, 1fr) 250px; gap: 14px; align-items: start; min-width: 0; }
.forms.messaging .lcm-thread-column { min-width: 0; }
.forms.messaging .lcm-thread-column .conversation-message-send { margin-top: 12px; }
.forms.messaging .lcm-ad-context { position: sticky; top: 18px; min-width: 0; padding: 16px; box-sizing: border-box; background: #fff; border: 1px solid var(--ch-line); border-radius: 14px; box-shadow: var(--ch-shadow-sm); }
.forms.messaging .lcm-ad-context-image { display: block; height: 150px; margin: 10px 0 13px; overflow: hidden; background: #eef0f2; border-radius: 10px; }
.forms.messaging .lcm-ad-context-image img { display: block; width: 100%; height: 100%; object-fit: cover; }
.forms.messaging .lcm-ad-context-image.is-unavailable { display: grid; place-items: center; }
.forms.messaging .lcm-ad-context-image.is-unavailable svg { width: 52px; height: 52px; }
.forms.messaging .lcm-ad-context h2 { margin: 0 0 5px; color: var(--ch-ink); font-size: 1.05rem; line-height: 1.3; overflow-wrap: anywhere; }
.forms.messaging .lcm-ad-reference { margin: 0 0 13px; color: var(--ch-muted); font-size: .78rem; }
.forms.messaging .lcm-ad-context .conversation-ad-cta { justify-content: center; width: 100%; box-sizing: border-box; color: #fff; background: var(--ch-red); border-color: var(--ch-red); text-decoration: none; }
.forms.messaging .lcm-ad-context .conversation-ad-cta:hover { color: #fff; background: var(--ch-red-dark); }
.forms.messaging .lcm-context-safety { margin-top: 15px; padding: 12px; color: #164b2b; background: #edf8f1; border: 1px solid #b9dec5; border-radius: 10px; }
.forms.messaging .lcm-context-safety strong { display: block; margin-bottom: 5px; font-size: .82rem; }
.forms.messaging .lcm-context-safety p { margin: 0; font-size: .72rem; line-height: 1.45; }

.ad-page-large-container > .ad-page-bloc-infos > aside { display: grid; grid-template-columns: repeat(2, minmax(0, 1fr)); gap: 10px; }
.ad-page-large-container > .ad-page-bloc-infos > aside > .flex-container { display: grid; grid-template-columns: 1fr; gap: 4px; min-width: 0; margin: 0; padding: 13px 14px; background: #f7f8f9; border: 1px solid var(--ch-line); border-radius: 11px; }
.ad-page-large-container > .ad-page-bloc-infos > aside > .flex-container > div { width: auto; min-width: 0; }
.ad-page-large-container > .ad-page-bloc-infos .title_ad_opt,
.ad-page-large-container > .ad-page-bloc-infos .result_ad_opt { margin: 0; text-align: left; overflow-wrap: anywhere; }
.ad-page-large-container > .ad-page-bloc-infos .title_ad_opt { color: var(--ch-muted); font-size: .72rem; font-weight: 800; letter-spacing: .035em; text-transform: uppercase; }
.ad-page-large-container > .ad-page-bloc-infos .result_ad_opt { color: var(--ch-ink); font-size: .98rem; font-weight: 800; line-height: 1.35; }

.page-acc_dashboard .account-pads { display: grid; grid-template-columns: repeat(auto-fit, minmax(230px, 1fr)); gap: 14px; align-items: stretch; }
.page-acc_dashboard .account-pads > div { width: auto; min-width: 0; margin: 0; padding: 20px; box-sizing: border-box; background: #fff; border: 1px solid var(--ch-line); border-radius: 14px; box-shadow: var(--ch-shadow-sm); }
.page-acc_dashboard .account-pads > div p { margin: 0; color: var(--ch-muted); line-height: 1.55; }
.page-acc_dashboard .account-pads > div span { color: var(--ch-ink); font-size: 1.2rem; font-weight: 850; }
.page-acc_dashboard .account-pads > div a { display: inline-flex; margin-top: 12px; color: var(--ch-red); font-weight: 800; }

.form-deposit { max-width: 1180px; }
.shop-form .shop-empty-reminder { margin: 0 0 18px; padding: 14px 16px; color: #5b3b00; background: #fff7df; border: 1px solid #ead18a; border-left: 4px solid #d79a00; border-radius: 10px; line-height: 1.5; }
.form-deposit .deposit-progress { position: sticky; z-index: 5; top: 0; padding: 12px 16px; background: rgba(255,255,255,.96); border: 1px solid var(--ch-line); border-radius: 13px; box-shadow: 0 6px 20px rgba(20,24,28,.07); backdrop-filter: blur(8px); }
.form-deposit > form { max-width: 980px; margin: 0 auto; }
.form-deposit > form > div { padding: 24px clamp(16px, 4vw, 42px); background: #fff; border: 1px solid var(--ch-line); border-radius: 16px; box-shadow: var(--ch-shadow-sm); }
.form-deposit > form > div > h3 { font-size: 1.08rem; }

@media (max-width: 1120px) {
	.forms.messaging .lcm-conversation-layout { grid-template-columns: 1fr; }
	.forms.messaging .lcm-ad-context { position: static; display: grid; grid-template-columns: 110px minmax(0, 1fr); gap: 5px 14px; align-items: center; }
	.forms.messaging .lcm-ad-context > .conversation-eyebrow { grid-column: 1 / -1; }
	.forms.messaging .lcm-ad-context-image { grid-row: 2 / span 3; width: 110px; height: 88px; margin: 0; }
	.forms.messaging .lcm-ad-context h2, .forms.messaging .lcm-ad-reference { grid-column: 2; }
	.forms.messaging .lcm-ad-context .conversation-ad-cta { grid-column: 2; width: max-content; }
	.forms.messaging .lcm-context-safety { grid-column: 1 / -1; }
}

@media (max-width: 930px) {
	.forms.messaging [data-lcm="animate"] > .messaging-listing { display: flex; flex-direction: column; width: 100%; max-height: none; padding-right: 0; }
	.forms.messaging [data-lcm="animate"] > .messaging-conversation-container:not(.chat) { display: none; width: 100%; max-width: none; margin: 0; padding: 0; }
	.forms.messaging [data-lcm="animate"].animate > .messaging-listing { display: none; }
	.forms.messaging [data-lcm="animate"].animate > .messaging-conversation-container:not(.chat) { display: flex; }
	.forms.messaging .messaging-conversation-container:not(.alone):not(.chat) { padding: 0; }
}

@media (max-width: 640px) {
	.ad-page-large-container > .ad-page-bloc-infos > aside { grid-template-columns: 1fr; }
	.form-deposit .deposit-progress { position: static; padding: 12px; }
	.form-deposit > form > div { padding: 18px 14px; border-radius: 13px; }
	.forms.messaging .lcm-ad-context { grid-template-columns: 76px minmax(0, 1fr); padding: 13px; }
	.forms.messaging .lcm-ad-context-image { width: 76px; height: 68px; }
	.forms.messaging .lcm-ad-context .conversation-ad-cta { width: 100%; }
}

/* V81 — fiche annonce mobile centrée sur le bien et le contact. */
.ad-mobile-photo-actions,
.ad-mobile-photo-count,
.ad-mobile-summary { display: none; }

@media (max-width: 768px) {
	body.is-ad-detail { padding-bottom: calc(78px + env(safe-area-inset-bottom)); }
	body.is-ad-detail .ad-page-container {
		width: 100%;
		max-width: none;
		padding-top: 0;
	}
	body.is-ad-detail .ad-page-bloc-title { display: none !important; }
	body.is-ad-detail .ad-page-parent-container { display: block; width: 100%; }
	body.is-ad-detail .ad-page-large-container,
	body.is-ad-detail .ad-page-small-container { width: 100%; min-width: 0; }

	/* L'image devient le premier repère visuel, sans cadre gris ni espace perdu. */
	body.is-ad-detail .ad-page-bloc-photo {
		position: relative;
		width: 100%;
		margin: 0 0 0;
		padding: 0;
		border: 0;
		border-radius: 0;
		box-shadow: none;
		background: #eef0f2;
	}
	body.is-ad-detail .ad-page-bloc-photo .bloc-photo { min-height: 260px; background: #eef0f2; }
	body.is-ad-detail .ad-page-bloc-photo .bloc-photo img {
		width: 100%;
		max-width: none;
		height: auto;
		max-height: 72vh;
		object-fit: contain;
	}
	body.is-ad-detail .ad-page-bloc-photo.is-no-photo .bloc-photo { min-height: 280px; }
	body.is-ad-detail .ad-page-bloc-photo.is-no-photo .bloc-photo img { width: min(100%, 430px); }
	.ad-mobile-photo-actions {
		position: absolute;
		z-index: 7;
		top: 12px;
		right: 12px;
		left: 12px;
		display: flex;
		align-items: center;
		justify-content: space-between;
		pointer-events: none;
	}
	.ad-mobile-photo-actions-end { display: flex; gap: 9px; }
	.ad-mobile-round-button {
		display: grid !important;
		place-items: center;
		width: 44px !important;
		height: 44px !important;
		min-height: 44px !important;
		margin: 0 !important;
		padding: 0 !important;
		box-sizing: border-box;
		color: var(--ch-ink) !important;
		background: rgba(255,255,255,.94) !important;
		border: 1px solid rgba(255,255,255,.72) !important;
		border-radius: 50% !important;
		box-shadow: 0 4px 14px rgba(22,25,29,.18);
		font-size: 1.35rem !important;
		font-weight: 800;
		line-height: 1 !important;
		text-decoration: none;
		pointer-events: auto;
	}
	.ad-mobile-round-button.icon-heart { position: relative; top: auto; right: auto; background-image: none !important; }
	.ad-mobile-round-button.icon-heart::before { content: "♡"; margin: 0; font-family: Arial, sans-serif; font-size: 1.7rem; font-weight: 400; }
	.ad-mobile-round-button.icon-heart.selected::before { content: "♥"; color: var(--ch-red); }
	.ad-mobile-photo-count {
		position: absolute;
		z-index: 6;
		right: 12px;
		bottom: 12px;
		display: inline-flex;
		padding: 6px 9px;
		color: #fff;
		background: rgba(22,25,29,.78);
		border-radius: 8px;
		font-size: .76rem;
		font-weight: 800;
	}
	body.is-ad-detail .ad-page-bloc-thumbnail {
		position: absolute;
		z-index: 5;
		top: 50%;
		right: 8px;
		left: 8px;
		display: flex;
		justify-content: space-between;
		width: auto;
		margin: 0;
		transform: translateY(-50%);
		pointer-events: none;
	}
	body.is-ad-detail .ad-page-bloc-thumbnail-list { display: none; }
	body.is-ad-detail .ad-page-bloc-thumbnail .nav-slide {
		display: grid;
		place-items: center;
		width: 40px;
		height: 40px;
		margin: 0;
		background: rgba(255,255,255,.9);
		border-radius: 50%;
		box-shadow: 0 3px 10px rgba(22,25,29,.16);
		pointer-events: auto;
	}
	body.is-ad-detail .ad-page-bloc-thumbnail .nav-slide img { width: 14px; height: auto; }

	/* Un seul résumé donne immédiatement prix, titre, lieu et date. */
	.ad-mobile-summary {
		display: block;
		position: relative;
		z-index: 2;
		margin: -1px 12px 12px;
		padding: 20px 18px 17px;
		background: #fff;
		border: 1px solid var(--ch-line);
		border-radius: 0 0 17px 17px;
		box-shadow: 0 8px 22px rgba(22,25,29,.09);
	}
	.ad-mobile-summary p { margin: 0; }
	.ad-mobile-summary-price { display: block; margin-bottom: 8px; color: var(--ch-red); font-size: 1.65rem; font-weight: 900; line-height: 1.1; }
	.ad-mobile-summary-title { color: var(--ch-ink); font-size: 1.25rem; font-weight: 850; line-height: 1.28; overflow-wrap: anywhere; }
	.ad-mobile-summary-location { margin-top: 12px !important; color: var(--ch-ink); font-size: .94rem; font-weight: 750; }
	.ad-mobile-summary-date { margin-top: 4px !important; color: var(--ch-muted); font-size: .78rem; }
	.ad-mobile-summary-meta { margin-top: 11px !important; padding-top: 10px; color: var(--ch-muted); border-top: 1px solid var(--ch-line); font-size: .72rem; }

	/* Le vendeur arrive juste après le résumé ; les actions restent dans la barre fixe. */
	body.is-ad-detail #seller-contact {
		position: static;
		margin: 0 12px 12px;
		padding: 16px;
		border-top-width: 3px;
		border-radius: 15px;
		box-shadow: var(--ch-shadow-sm);
	}
	body.is-ad-detail #seller-contact .seller-profile-summary { margin-bottom: 10px; }
	body.is-ad-detail #seller-contact .seller-avatar { width: 46px; height: 46px; }
	body.is-ad-detail #seller-contact > a:not(.message):not(.phone):not(.whatsapp-contact) { min-height: 40px; margin-top: 8px; }
	body.is-ad-detail #seller-contact > a.message,
	body.is-ad-detail #seller-contact > a.phone,
	body.is-ad-detail #seller-contact > a.whatsapp-contact,
	body.is-ad-detail #seller-contact > .contact-guest-info,
	body.is-ad-detail #seller-contact > .whatsapp-privacy { display: none !important; }

	body.is-ad-detail .ad-page-large-container > .ad-page-bloc-infos,
	body.is-ad-detail .ad-page-small-container > .ad-page-bloc-infos { margin: 0 12px 12px; padding: 17px; border-radius: 14px; }
	body.is-ad-detail .ad-page-bloc-infos .title { margin: -17px -17px 15px; padding: 13px 17px; }
	body.is-ad-detail .ad-general-info .location,
	body.is-ad-detail .ad-general-info .deposit-date,
	body.is-ad-detail .ad-general-info .seller-trust-signals { display: none; }
	body.is-ad-detail .ad-location-card { margin-top: 15px; border-radius: 12px; }
	body.is-ad-detail .ad-location-heading { display: block; padding: 14px; }
	body.is-ad-detail .ad-location-privacy { max-width: none; margin-top: 7px; text-align: left; }
	body.is-ad-detail .ad-location-map { height: 220px; }
	body.is-ad-detail .ad-location-placeholder { min-height: 175px; padding: 20px 14px; }
	body.is-ad-detail .ad-general-info > aside { grid-template-columns: repeat(2, minmax(0, 1fr)); gap: 8px; }
	body.is-ad-detail .ad-general-info > aside > .flex-container { padding: 11px; }
	body.is-ad-detail .ad-detail-copy > p:not(.title):not(.report-abuse) { font-size: .9rem; line-height: 1.55; }
	body.is-ad-detail .trust-safety-card { margin: 15px 0 10px; padding: 13px; }
	body.is-ad-detail .trust-safety-card p { margin: 0; font-size: .76rem; }
	body.is-ad-detail .report-abuse { margin: 10px 0 0; font-size: .74rem; }
	body.is-ad-detail .ad-page-small-container .stats { display: none; }

	/* Les annonces similaires se parcourent horizontalement au lieu d'allonger la page. */
	body.is-ad-detail .ad-page-parent-container > .list-premium {
		display: flex;
		position: relative;
		gap: 11px;
		width: auto;
		margin: 22px 0 10px;
		padding: 42px 12px 12px;
		overflow-x: auto;
		scroll-snap-type: x proximity;
		scrollbar-width: thin;
	}
	body.is-ad-detail .ad-page-parent-container > .list-premium h2 { position: absolute; top: 0; left: 12px; margin: 0; font-size: 1.05rem; }
	body.is-ad-detail .ad-page-parent-container > .list-premium .background-ads-premium {
		flex: 0 0 min(72vw, 250px);
		scroll-snap-align: start;
	}
	body.is-ad-detail .ad-page-parent-container > .list-premium .background-ads-premium > img { height: 170px; }

	/* Sur une fiche, le pied de page mobile conserve uniquement la marque et la confiance. */
	body.is-ad-detail .footer { padding: 25px 0 96px; }
	body.is-ad-detail .footer-grid { display: block; }
	body.is-ad-detail .footer-grid > nav { display: none; }
	body.is-ad-detail .footer-networks { text-align: center; }
	body.is-ad-detail .footer-networks p { margin-bottom: 0; text-align: center; }
	body.is-ad-detail .footer.footer > div.footer-trust { justify-content: center; margin-top: 18px; padding-top: 16px; font-size: .7rem; }

	/* Barre de conversion simple : téléphone facultatif + message prioritaire. */
	body.is-ad-detail .mobile-action-bar {
		grid-template-columns: repeat(2, minmax(0, 1fr));
		gap: 8px;
		padding: 9px max(12px, env(safe-area-inset-right)) calc(9px + env(safe-area-inset-bottom)) max(12px, env(safe-area-inset-left));
	}
	body.is-ad-detail .mobile-action-bar:has(.mobile-action-login),
	body.is-ad-detail .mobile-action-bar:has(> a:only-child) { grid-template-columns: 1fr; }
	body.is-ad-detail .mobile-action-bar a { min-height: 50px; border: 1px solid var(--ch-red); border-radius: 999px; font-size: .88rem; }
	body.is-ad-detail .mobile-action-bar .mobile-action-contact { color: var(--ch-red); background: #fff; }
	body.is-ad-detail .mobile-action-bar .mobile-action-deposit { color: #fff; background: var(--ch-red); }
}

@media (max-width: 430px) {
	body.is-ad-detail .ad-general-info > aside { grid-template-columns: 1fr 1fr; }
	body.is-ad-detail .ad-general-info > aside > .flex-container { min-height: 58px; }
}

/* V82 — partage explicite, favoris visiteurs et vitrines professionnelles. */
.share-actions {
	display: grid !important;
	grid-template-columns: repeat(2, minmax(0, 1fr));
	gap: 9px;
	width: 100%;
}
.share-actions .share-action {
	display: flex !important;
	align-items: center;
	justify-content: flex-start;
	gap: 9px;
	min-width: 0;
	min-height: 44px;
	margin: 0 !important;
	padding: 10px 12px !important;
	box-sizing: border-box;
	color: var(--ch-ink) !important;
	background: #fff !important;
	border: 1px solid var(--ch-line) !important;
	border-radius: 10px !important;
	font: inherit;
	font-size: .78rem;
	font-weight: 750;
	line-height: 1.25 !important;
	text-align: left !important;
	text-decoration: none !important;
	cursor: pointer;
}
.share-actions .share-action:hover { color: var(--ch-red) !important; border-color: #e9a4ae !important; background: #fff8f9 !important; }
.share-actions .share-action > span {
	display: grid;
	place-items: center;
	flex: 0 0 27px;
	width: 27px;
	height: 27px;
	color: #fff;
	background: var(--ch-ink);
	border-radius: 8px;
	font-size: 1rem;
	font-weight: 900;
}
.share-actions .share-facebook > span { background: #1877f2; }
.share-actions .share-instagram > span { background: linear-gradient(135deg, #833ab4, #fd1d1d, #fcb045); }

.shop-page-container { width: min(1240px, calc(100% - 36px)); margin: 34px auto 64px; }
.shop-page-bloc-title {
	display: block !important;
	padding: 22px 24px;
	background: #fff;
	border: 1px solid var(--ch-line);
	border-radius: var(--ch-radius);
	box-shadow: var(--ch-shadow-sm);
}
.shop-page-eyebrow { margin: 0 0 8px; color: var(--ch-red); font-size: .75rem; font-weight: 850; letter-spacing: .06em; text-transform: uppercase; }
.shop-page-bloc-title ul { display: flex; flex-wrap: wrap; gap: 5px 8px; margin: 0 0 12px; padding: 0; }
.shop-page-bloc-title li { margin: 0; color: var(--ch-muted); font-family: inherit; font-size: .8rem; }
.shop-page-bloc-title li a, .shop-page-bloc-title li span { color: var(--ch-muted); font-family: inherit; }
.shop-page-bloc-title h1 { display: block; margin: 0; padding: 0; color: var(--ch-ink); font-size: clamp(1.55rem, 3vw, 2.15rem); line-height: 1.2; }
.shop-page-bloc-title h1 span:first-child { color: var(--ch-ink); }
.shop-page-parent-container { display: grid; grid-template-columns: minmax(0, 1fr) minmax(300px, 360px); gap: 22px; align-items: start; margin-top: 22px; }
.shop-page-large-container, .shop-page-small-container { width: auto; min-width: 0; margin: 0; }
.shop-page-bloc-infos { margin-top: 18px; padding: 22px; background: #fff; border: 1px solid var(--ch-line); border-radius: var(--ch-radius); box-shadow: var(--ch-shadow-sm); }
.shop-page-bloc-infos:first-child { margin-top: 0; }
.shop-page-bloc-infos .title { margin: -22px -22px 20px; padding: 15px 22px; background: #fafafa; border-bottom: 1px solid var(--ch-line); font-family: inherit; font-size: 1rem; }
.shop-profile-card { display: grid; grid-template-columns: minmax(160px, 230px) minmax(0, 1fr); gap: 10px 24px; align-items: start; }
.shop-profile-card > .title { grid-column: 1 / -1; }
.shop-profile-card .logo { display: grid; place-items: center; min-height: 180px; margin: 0; padding: 16px; background: #f5f6f7; border-radius: 12px; }
.shop-profile-card .logo img { min-width: 0; max-height: 210px; border-radius: 8px; }
.shop-profile-card .description { margin: 0; color: #34383d; font-family: inherit; font-size: .92rem; line-height: 1.65; }
.shop-page-small-container { position: sticky; top: 98px; }
.shop-contact-card { border-top: 4px solid var(--ch-red); }
.shop-contact-card .address { color: #34383d; line-height: 1.55; }
.shop-contact-card .address span { color: var(--ch-muted); font-size: .72rem; font-weight: 800; letter-spacing: .03em; }
.shop-page-bloc-infos .contact a { min-height: 46px; margin-top: 10px; line-height: 46px; background: var(--ch-red); border-radius: 10px; font-family: inherit; font-weight: 800; }
.shop-page-bloc-infos .contact a.phone { background: #e76557; }

@media (max-width: 900px) {
	.shop-page-parent-container { grid-template-columns: 1fr; }
	.shop-page-small-container { position: static; }
}

@media (max-width: 768px) {
	body.is-ad-detail .ad-page-parent-container { margin: 0 0 20px; }
	.shop-page-container { width: calc(100% - 24px); margin: 16px auto 40px; }
	.shop-page-bloc-title { padding: 17px; border-radius: 14px; }
	.shop-page-bloc-title h1 { font-size: 1.45rem; }
	.shop-page-parent-container { gap: 13px; margin-top: 13px; }
	.shop-page-bloc-infos { margin-top: 13px; padding: 17px; border-radius: 14px; }
	.shop-page-bloc-infos .title { margin: -17px -17px 16px; padding: 13px 17px; }
	.shop-profile-card { grid-template-columns: 1fr; }
	.shop-profile-card > .title { grid-column: auto; }
	.shop-profile-card .logo { min-height: 140px; }
	.share-actions { grid-template-columns: 1fr; }
}

@media print {
	.header, .footer, .mobile-action-bar, .ad-title-actions, .ad-mobile-photo-actions, .share-actions { display: none !important; }
	.ad-page-container, .shop-page-container { width: 100% !important; margin: 0 !important; }
}
