/* AIG : la feuille de carte géologique. */

@font-face { font-family: "Saira SC"; src: url(../fonts/saira-semi-condensed-latin-600-normal.woff2) format("woff2"); font-weight: 600; font-display: swap; }
@font-face { font-family: "Saira SC"; src: url(../fonts/saira-semi-condensed-latin-800-normal.woff2) format("woff2"); font-weight: 800; font-display: swap; }
@font-face { font-family: "Hanken"; src: url(../fonts/hanken-grotesk-latin-400-normal.woff2) format("woff2"); font-weight: 400; font-display: swap; }
@font-face { font-family: "Hanken"; src: url(../fonts/hanken-grotesk-latin-600-normal.woff2) format("woff2"); font-weight: 600; font-display: swap; }

:root {
	--encre: #1e1726;
	--encre-2: #57505f;
	--feuille: #fff;
	--brume: #f2f3ee;
	--filet: #d9d8d2;
	--chimie: #7b2d86;
	--epi: #97c00e;
	--pieces: #b84c23;
	--outils: #e6b325;
	--broyeurs: #2f6e86;
	--boulets: #2a2730;
	--action: #7b2d86;
	--action-fonce: #5c1f65;
	--titre: "Saira SC", "Arial Narrow", sans-serif;
	--texte: "Hanken", "Segoe UI", sans-serif;
	--gouttiere: clamp(1rem, 4vw, 3rem);
	--sortie: cubic-bezier(.16, 1, .3, 1);
}

*, *::before, *::after { box-sizing: border-box; }
html { -webkit-text-size-adjust: 100%; scroll-behavior: smooth; scrollbar-color: var(--chimie) var(--brume); }
body { margin: 0; background: var(--feuille); color: var(--encre); font: 400 1.0625rem/1.6 var(--texte); }
img, svg { max-width: 100%; height: auto; display: block; }
h1, h2, h3 { font-family: var(--titre); font-weight: 800; line-height: 1.04; letter-spacing: -.01em; margin: 0; text-wrap: balance; }
h2 { font-size: clamp(1.75rem, 3.6vw, 2.75rem); }
p { margin: 0 0 1em; }
ul { margin: 0; padding: 0; list-style: none; }
a { color: inherit; text-underline-offset: .18em; text-decoration-thickness: 1px; }
a:hover { text-decoration-thickness: 2px; }
::selection { background: var(--epi); color: var(--encre); }
:focus-visible { outline: 3px solid var(--encre); outline-offset: 2px; box-shadow: 0 0 0 2px #fff; }

.wrap { width: min(100%, 86rem); margin-inline: auto; padding-inline: var(--gouttiere); }
.skip { position: absolute; left: -999px; top: 0; background: var(--encre); color: #fff; padding: .75rem 1rem; z-index: 50; }
.skip:focus { left: 0; }

.btn { display: inline-block; border: 0; background: var(--action); color: #fff; font: 600 1.0625rem/1.2 var(--titre); padding: .85rem 1.3rem; text-decoration: none; cursor: pointer; white-space: nowrap; transition: background-color .25s var(--sortie); }
.btn:hover { background: var(--action-fonce); }
.btn-clair { background: #fff; color: var(--encre); }
.btn-clair:hover { background: var(--epi); color: var(--encre); }
.lien { font: 600 1.0625rem var(--titre); }

/* Trames : un aplat, un motif. */
.t-chimie { background: var(--chimie) url(../img/trames/chimie.svg); color: #fff; }
.t-epi { background: var(--epi) url(../img/trames/epi.svg); color: var(--encre); }
.t-pieces { background: var(--pieces) url(../img/trames/pieces.svg); color: #fff; }
.t-outils { background: var(--outils) url(../img/trames/outils.svg); color: var(--encre); }
.t-broyeurs { background: var(--broyeurs) url(../img/trames/broyeurs.svg); color: #fff; }
.t-boulets { background: var(--boulets) url(../img/trames/boulets.svg); color: #fff; }
.t-neutre { background: var(--brume); color: var(--encre); }

/* En-tête */
.site-header { position: sticky; top: 0; z-index: 30; background: #fff; border-bottom: 1px solid var(--filet); }
.header-bar { display: flex; align-items: center; gap: 1.5rem; min-height: 4.5rem; }
.brand { display: flex; align-items: center; gap: .7rem; text-decoration: none; margin-right: auto; }
.brand img { width: 3rem; height: 3rem; }
.brand-nom { font: 800 1.125rem/1.05 var(--titre); }
.brand-sous { display: block; font: 400 .8125rem/1.3 var(--texte); color: var(--encre-2); }
.nav-list { display: flex; gap: 1.5rem; font: 600 1.0625rem var(--titre); }
.nav-list > li > a { text-decoration: none; padding-block: 1.4rem; display: block; }
.nav-list > li > a:hover, .nav-list a[aria-current] { text-decoration: underline; text-decoration-color: var(--chimie); text-decoration-thickness: 3px; text-underline-offset: .4em; }
.a-sous { position: relative; }
.sous { display: none; position: absolute; left: -1rem; top: 100%; width: 19rem; background: #fff; border: 1px solid var(--filet); box-shadow: 0 16px 32px -12px rgb(30 23 38 / .28); padding: .4rem; }
.a-sous:hover .sous, .a-sous:focus-within .sous { display: block; }
.legende-lien { display: flex; align-items: center; gap: .65rem; padding: .5rem .6rem; text-decoration: none; }
.legende-lien:hover { background: var(--brume); }
.pastille { flex: none; width: 1.75rem; height: 1.25rem; border: 1px solid var(--encre); }
.tel-entete { font: 600 1.0625rem var(--titre); text-decoration: none; white-space: nowrap; font-variant-numeric: tabular-nums; }
.menu { display: none; position: static; }
.menu summary { list-style: none; cursor: pointer; padding: .7rem; }
.menu summary::-webkit-details-marker { display: none; }
.burger, .burger::before, .burger::after { display: block; width: 1.6rem; height: 2px; background: var(--encre); }
.burger { position: relative; margin-block: .5rem; }
.burger::before, .burger::after { content: ""; position: absolute; left: 0; }
.burger::before { top: -.5rem; }
.burger::after { top: .5rem; }
.menu[open] .burger { background: transparent; }
.menu[open] .burger::before { top: 0; transform: rotate(45deg); }
.menu[open] .burger::after { top: 0; transform: rotate(-45deg); }
.menu-panel { position: absolute; left: 0; right: 0; top: 100%; background: #fff; border-bottom: 1px solid var(--filet); padding: .5rem var(--gouttiere) 1.5rem; box-shadow: 0 24px 32px -16px rgb(30 23 38 / .3); max-height: calc(100dvh - 4.5rem); overflow: auto; }
.menu-panel .nav-list { flex-direction: column; gap: 0; }
.menu-panel .nav-list > li > a { padding-block: .7rem; }
.menu-panel .sous { display: block; position: static; width: auto; border: 0; box-shadow: none; padding: 0 0 .5rem; }
.menu-panel .btn { margin-top: .75rem; }

/* La feuille : la carte couvre le premier écran. */
.feuille { position: relative; min-height: min(calc(100svh - 4.5rem), 60rem); display: grid; grid-template-columns: minmax(0, 1fr) minmax(0, 21rem); align-items: end; gap: clamp(1rem, 2.5vw, 2rem); padding: clamp(1rem, 2.5vw, 2rem); overflow: hidden; background: var(--pieces); }
.carte { position: absolute; inset: 0; width: 100%; height: 100%; }
.niveaux { fill: none; stroke: #fff; stroke-opacity: .28; stroke-width: 1; pointer-events: none; }
.failles { fill: none; stroke: var(--encre); stroke-width: 2.5; stroke-dasharray: 26 7; pointer-events: none; }
.f { transition: filter .35s var(--sortie); }
.fl { text-decoration: none; }
.fl text { font: 800 25px var(--titre); fill: #fff; paint-order: stroke; stroke: var(--encre); stroke-width: 3.5px; stroke-linejoin: round; transition: opacity .3s; }

/* Survol d'une gamme (légende ou nom) : les autres formations s'éteignent. */
.feuille:has(.l-chimie a:hover, .l-chimie a:focus-visible, .fl-chimie:hover, .fl-chimie:focus-visible) .f:not(.f-chimie),
.feuille:has(.l-epi a:hover, .l-epi a:focus-visible, .fl-epi:hover, .fl-epi:focus-visible) .f:not(.f-epi),
.feuille:has(.l-pieces a:hover, .l-pieces a:focus-visible, .fl-pieces:hover, .fl-pieces:focus-visible) .f:not(.f-pieces),
.feuille:has(.l-outils a:hover, .l-outils a:focus-visible, .fl-outils:hover, .fl-outils:focus-visible) .f:not(.f-outils),
.feuille:has(.l-broyeurs a:hover, .l-broyeurs a:focus-visible, .fl-broyeurs:hover, .fl-broyeurs:focus-visible) .f:not(.f-broyeurs),
.feuille:has(.l-boulets a:hover, .l-boulets a:focus-visible, .fl-boulets:hover, .fl-boulets:focus-visible) .f:not(.f-boulets) { filter: grayscale(1) contrast(.45) brightness(1.25); }

.cartouche, .carte-legende { position: relative; background: #fff; outline: 1px solid var(--encre); outline-offset: -7px; }
.cartouche { max-width: 44rem; padding: clamp(1.25rem, 3vw, 2.5rem); justify-self: start; }
.cartouche h1 { font-size: clamp(2.5rem, 5.6vw, 5rem); line-height: .98; margin-bottom: .45em; }
.cartouche p { max-width: 34rem; color: var(--encre-2); margin-bottom: 1.25rem; }
.devis-rapide label { display: block; font: 600 1.0625rem var(--titre); margin-bottom: .4rem; }
.devis-ligne { display: flex; gap: .5rem; flex-wrap: wrap; }
.devis-ligne select { flex: 1 1 13rem; }
.carte-legende { padding: 1.25rem; align-self: end; }
.carte-legende h2 { font-size: 1.25rem; margin-bottom: .6rem; }
.legende li { border-top: 1px solid var(--filet); }
.legende a { display: flex; align-items: center; gap: .75rem; padding: .55rem .15rem; font: 600 1.0625rem/1.15 var(--titre); text-decoration: none; }
.legende a:hover .pastille, .legende a:focus-visible .pastille { transform: scale(1.12); }
.legende .pastille { transition: transform .25s var(--sortie); }
.lien-catalogue { display: block; border-top: 1px solid var(--filet); padding-top: .7rem; font: 600 1.0625rem var(--titre); }

/* Les couches se déposent l'une après l'autre au chargement. */
@media (prefers-reduced-motion: no-preference) and (min-width: 52rem) {
	.f { animation: depot .9s var(--sortie) backwards; }
	.f-chimie { animation-delay: .08s; }
	.f-epi { animation-delay: .16s; }
	.f-outils { animation-delay: .24s; }
	.f-broyeurs { animation-delay: .32s; }
	.f-boulets { animation-delay: .4s; }
	@keyframes depot { from { transform: translateY(22px); } }
}
@media (prefers-reduced-motion: no-preference) {
	@supports (animation-timeline: view()) {
		.strate-temoins span, .strate-photo { animation: lever linear backwards; animation-timeline: view(); animation-range: entry 0% entry 50%; }
		@keyframes lever { from { transform: translateY(2rem); } }
	}
}
@media (prefers-reduced-motion: reduce) {
	html { scroll-behavior: auto; }
	*, *::before, *::after { transition-duration: 0s !important; }
}

/* La coupe : chaque gamme est une strate. */
.coupe-titre { font-size: clamp(2.25rem, 5vw, 4.25rem); padding-block: clamp(3.5rem, 7vw, 6rem) clamp(2rem, 4vw, 3.5rem); }
.strate { position: relative; }
.strate { --bord: clamp(1.25rem, 3vw, 3rem); margin-top: calc(var(--bord) * -1 + 1px); }
.strate:first-of-type { margin-top: 0; }
.bord { display: block; width: 100%; height: var(--bord); margin-bottom: -1px; }
.s-chimie .bord { fill: var(--chimie); }
.s-epi .bord { fill: var(--epi); }
.s-pieces .bord { fill: var(--pieces); }
.s-outils .bord { fill: var(--outils); }
.s-broyeurs .bord { fill: var(--broyeurs); }
.s-boulets .bord { fill: var(--boulets); }
.strate-fond { padding-block: clamp(2rem, 4vw, 3.75rem) clamp(3rem, 5vw, 5rem); }
.strate-grille { display: grid; grid-template-columns: minmax(0, 5fr) minmax(0, 4fr) minmax(0, 4fr); gap: clamp(1.5rem, 3vw, 3rem); align-items: start; }
.strate-tete h3 { font-size: clamp(2rem, 4vw, 3.5rem); margin-bottom: .4em; }
.strate-tete h3 a { text-decoration: none; }
.strate-tete h3 a:hover { text-decoration: underline; text-decoration-thickness: 3px; }
.strate-tete p { max-width: 30rem; }
.strate-liste { columns: 2; column-gap: 1.5rem; font-weight: 600; }
.strate-liste li { break-inside: avoid; padding-block: .3rem; border-top: 1px solid color-mix(in srgb, currentColor 35%, transparent); line-height: 1.3; }
.strate-temoins { display: grid; grid-template-columns: repeat(3, 1fr); gap: .5rem; }
.strate-temoins span { aspect-ratio: 1; background: #fff; display: grid; place-items: center; padding: .4rem; overflow: hidden; }
.strate-temoins img { width: 100%; height: 100%; object-fit: contain; }
.strate-photo { grid-column: span 2; }
.strate-photo img { width: 100%; height: clamp(12rem, 22vw, 20rem); object-fit: cover; }
.photo-petite img { width: auto; max-width: min(100%, 595px); height: auto; margin-left: auto; }

/* Vision et mission */
.ambition { background: var(--boulets) url(../img/trames/boulets.svg); color: #fff; padding-block: clamp(3rem, 6vw, 5.5rem); }
.ambition-grille { display: grid; grid-template-columns: 1fr 1fr; gap: clamp(2rem, 6vw, 6rem); }
.ambition h2 { margin-bottom: .6em; color: var(--epi); }
.ambition p { max-width: 65ch; }

.section { padding-block: clamp(3rem, 6vw, 5.5rem); }
.tete-section { display: flex; justify-content: space-between; align-items: baseline; gap: 1rem; flex-wrap: wrap; margin-bottom: 2rem; }

/* Actualités */
.actus { display: grid; gap: 2.5rem; grid-template-columns: repeat(auto-fill, minmax(min(100%, 24rem), 1fr)); }
.actu-image { display: block; margin-bottom: .9rem; overflow: hidden; background: var(--brume); }
.actu-image img { width: 100%; aspect-ratio: 3/2; object-fit: cover; transition: transform .6s var(--sortie); }
.actu:hover .actu-image img { transform: scale(1.03); }
.actu time { font-size: .9375rem; color: var(--encre-2); }
.actu h3 { font-size: 1.5rem; margin-block: .25rem .5rem; }
.actu h3 a { text-decoration: none; }
.actu h3 a:hover { text-decoration: underline; }
.actu:only-child { grid-column: 1 / -1; display: grid; grid-template-columns: minmax(0, 5fr) minmax(0, 6fr); gap: clamp(1.5rem, 4vw, 3.5rem); align-items: center; }
.actu:only-child .actu-image { margin: 0; }
.actu:only-child .actu-image img { aspect-ratio: auto; height: auto; }
.actu:only-child h3 { font-size: clamp(1.75rem, 3vw, 2.5rem); }
.article { max-width: 56rem; }
.article-photo { margin: 2rem 0 0; }

/* Clôture */
.appel { background: var(--epi) url(../img/trames/epi.svg); color: var(--encre); padding-block: clamp(3rem, 6vw, 5rem); }
.appel-grille { display: flex; justify-content: space-between; align-items: center; gap: 2rem; flex-wrap: wrap; }
.appel h2 { font-size: clamp(2rem, 4.5vw, 3.75rem); max-width: 18ch; }
.appel-actions { display: flex; align-items: center; gap: 1.5rem; flex-wrap: wrap; }
.appel-tel { font: 800 clamp(1.5rem, 3vw, 2.25rem) var(--titre); text-decoration: none; font-variant-numeric: tabular-nums; }
.appel-tel:hover { text-decoration: underline; }

/* Pied de page */
.site-footer { background: #fff; border-top: 4px solid var(--encre); }
.pied { display: grid; grid-template-columns: 1.2fr 1.4fr 1.4fr 1fr; gap: 2.5rem; padding-block: 3rem 2rem; font-size: 1rem; }
.pied h2 { font-size: 1.25rem; margin-bottom: .75rem; }
.pied-marque img { width: 5rem; height: 5rem; margin-bottom: .75rem; }
.pied-liste li { padding-block: .2rem; }
.legende-pied li { border: 0; }
.legende-pied a { padding: .2rem 0; font: 400 1rem var(--texte); }
.legende-pied .pastille { width: 1.4rem; height: 1rem; }
.signature { font-size: .9375rem; color: var(--encre-2); padding-block: 0 2rem; margin: 0 auto; }

/* Pages intérieures */
.tete { padding-block: clamp(2.5rem, 6vw, 5rem); }
.tete h1 { font-size: clamp(2.5rem, 6vw, 5rem); max-width: 18ch; }
.chapo { font-size: clamp(1.125rem, 2vw, 1.375rem); line-height: 1.4; max-width: 38rem; margin: .8em 0 1.4em; }
.tete-grille { display: grid; grid-template-columns: minmax(0, 7fr) minmax(0, 5fr); gap: clamp(1.5rem, 4vw, 4rem); align-items: center; }
.tete-photo { margin: 0; }
.tete-photo img { width: 100%; aspect-ratio: 4/3; object-fit: cover; box-shadow: 0 18px 40px -18px rgb(30 23 38 / .6); }
.legende-bande { display: grid; grid-template-columns: repeat(6, 1fr); border-bottom: 1px solid var(--filet); }
.legende-bande li { border-top: 0; border-right: 1px solid var(--filet); }
.legende-bande li:last-child { border-right: 0; }
.legende-bande a { padding: .7rem 1rem; height: 100%; font-size: 1rem; }
.legende-bande a:hover { background: var(--brume); }
.legende-bande a[aria-current] { background: var(--brume); text-decoration: underline; text-underline-offset: .3em; }
.gamme-intro { display: grid; grid-template-columns: repeat(auto-fit, minmax(min(100%, 22rem), 1fr)); gap: 2.5rem; }
.gamme-intro .prose:empty { display: none; }
.liste-gamme { columns: 2; column-gap: 2rem; font-weight: 600; }
.liste-gamme li { break-inside: avoid; border-top: 1px solid var(--filet); padding-block: .55rem; }
.galerie { padding-bottom: clamp(2.5rem, 5vw, 4.5rem); }
.galerie h2 { margin-bottom: 1rem; }
.specimens { display: grid; grid-template-columns: repeat(auto-fill, minmax(min(45%, 12rem), 1fr)); border-top: 1px solid var(--filet); border-left: 1px solid var(--filet); }
.specimens div { aspect-ratio: 1; display: grid; place-items: center; padding: 1rem; border-right: 1px solid var(--filet); border-bottom: 1px solid var(--filet); overflow: hidden; }
.specimens img { width: 100%; height: 100%; object-fit: contain; transition: transform .4s var(--sortie); }
.specimens div:hover img { transform: scale(1.06); }

.fiches { padding-bottom: clamp(3rem, 6vw, 5.5rem); }
.fiches > .wrap > h2 { margin-bottom: 1.5rem; }
.fiche { display: grid; grid-template-columns: minmax(0, 3fr) minmax(0, 8fr); gap: clamp(1.25rem, 3vw, 3rem); padding-block: 2rem; border-top: 1px solid var(--filet); align-items: start; }
.fiche-image img { width: 100%; }
.fiche h3 { font-size: 1.75rem; margin-bottom: .7rem; }
.fiche dl { margin: 0 0 1rem; display: grid; grid-template-columns: repeat(auto-fill, minmax(min(100%, 22rem), 1fr)); column-gap: 2.5rem; }
.fiche dl div { display: flex; justify-content: space-between; gap: 1rem; padding-block: .35rem; border-bottom: 1px solid var(--filet); }
.fiche dt { color: var(--encre-2); }
.fiche dd { margin: 0; font-weight: 600; text-align: right; font-variant-numeric: tabular-nums; }

.pile { padding-bottom: 0; }
.pile .strate:first-child { margin-top: calc(var(--bord) * -1 + 1px); }
.pile-grille { display: grid; grid-template-columns: minmax(0, 5fr) minmax(0, 7fr); gap: clamp(1.5rem, 4vw, 4rem); align-items: center; }
.pile .strate:nth-child(even) .pile-texte { order: 2; }
.pile-texte h2 a { text-decoration: none; }
.pile-texte h2 a:hover { text-decoration: underline; text-decoration-thickness: 3px; }
.pile-texte h2 { margin-bottom: .4em; }
.pile .strate-photo { grid-column: auto; }

.societe { display: grid; grid-template-columns: 1fr 1fr; gap: clamp(2rem, 5vw, 4rem); align-items: center; }
.societe-photo { margin: 0; }
.societe-photo img { width: 100%; }
.mot-dg { background: var(--brume); }

.prose { max-width: 70ch; }
.prose h2 { font-size: 1.75rem; margin: 1.6em 0 .5em; }
.prose img { height: auto; }

/* Formulaires */
.contact { display: grid; grid-template-columns: minmax(0, 2fr) minmax(0, 1fr); gap: clamp(2rem, 6vw, 5rem); align-items: start; }
.champs { display: grid; grid-template-columns: 1fr 1fr; gap: 1.1rem 1.5rem; margin-bottom: 1.1rem; }
.field { display: flex; flex-direction: column; gap: .3rem; min-width: 0; }
.field label { font: 600 1.0625rem var(--titre); }
.req { color: var(--pieces); }
input:not([type=checkbox]), select, textarea { width: 100%; font: inherit; color: inherit; background: #fff; border: 1px solid #77717e; border-radius: 0; padding: .7rem .75rem; caret-color: var(--chimie); }
select { appearance: none; padding-right: 2.5rem; background: #fff url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' width='14' height='9'%3E%3Cpath d='M1 1l6 6 6-6' fill='none' stroke='%231e1726' stroke-width='2'/%3E%3C/svg%3E") no-repeat right .9rem center; }
input:hover, select:hover, textarea:hover { border-color: var(--encre); }
input:focus, select:focus, textarea:focus { outline: 2px solid var(--chimie); outline-offset: 0; border-color: var(--chimie); }
[aria-invalid="true"] { border-color: #b3261e; }
input[type=checkbox] { width: 1.25rem; height: 1.25rem; flex: none; accent-color: var(--chimie); margin-top: .15rem; }
.hint { font-size: .9375rem; color: var(--encre-2); }
.error { color: #a3201a; font-weight: 600; font-size: .9375rem; }
.consent { display: flex; gap: .6rem; margin-block: 1.1rem; font-size: 1rem; }
.ag-form .btn { margin-top: .4rem; }
.ag-form .hint { margin-top: .6rem; }
.trap { position: absolute; left: -9999px; }
.notice { background: var(--epi); padding: 1rem 1.25rem; margin-bottom: 1.5rem; }
.notice h2 { font-size: 1.5rem; margin-bottom: .2em; }
.notice p { margin: 0; }
.notice-err { background: #f8dfdc; }
.coordonnees { background: var(--brume); padding: 1.5rem; }
.coordonnees h2 { font-size: 1.25rem; margin-top: 1.25rem; }
.coordonnees h2:first-child { margin-top: 0; }
.coordonnees p { margin: .2rem 0; overflow-wrap: anywhere; }

.pagination { margin-top: 2.5rem; font-weight: 600; }
.nav-links { display: flex; gap: 1rem; }

/* Adaptation */
@media (max-width: 78rem) {
	.tel-entete { display: none; }
}
@media (max-width: 66rem) {
	.nav-desktop { display: none; }
	.menu { display: block; }
	.btn-entete { padding: .6rem .8rem; font-size: 1rem; }
	.strate-grille { grid-template-columns: minmax(0, 1fr) minmax(0, 1fr); }
	.strate-tete { grid-column: 1 / -1; }
	.legende-bande { grid-template-columns: repeat(3, 1fr); }
	.legende-bande li { border-bottom: 1px solid var(--filet); }
	.pied { grid-template-columns: 1fr 1fr; }
}
@media (max-width: 52rem) {
	.feuille { grid-template-columns: minmax(0, 1fr); min-height: 0; padding: 1rem; padding-top: 44vw; }
	.carte { height: 100%; }
	.fl { display: none; }
	.cartouche { max-width: none; }
	.carte-legende { align-self: stretch; }
	.tete-grille, .ambition-grille, .societe, .contact { grid-template-columns: minmax(0, 1fr); }
	.fiche, .actu:only-child { grid-template-columns: minmax(0, 1fr); }
	.fiche-image { max-width: 16rem; }
	.strate-grille { grid-template-columns: minmax(0, 1fr); }
	.strate-photo { grid-column: auto; }
	.pile-grille { grid-template-columns: minmax(0, 1fr); }
	.pile .strate:nth-child(even) .pile-texte { order: 0; }
	.btn-entete { display: none; }
}
@media (max-width: 34rem) {
	h1 { overflow-wrap: break-word; }
	.champs { grid-template-columns: minmax(0, 1fr); }
	.strate-liste, .liste-gamme { columns: 1; }
	.legende-bande { grid-template-columns: repeat(2, 1fr); }
	.pied { grid-template-columns: minmax(0, 1fr); }
	.devis-ligne .btn { width: 100%; text-align: center; }
	.brand-nom { font-size: 1rem; }
}
@media print {
	.site-header, .appel, .site-footer, .carte-legende { display: none; }
}
