/* Avicouv : seconde passe « haut de gamme » (09/11/2026), chargée après design.css.
   Même charte : logo officiel, marine #00306C, rouge #D80612, nuit #001634, Archivo. Angles vifs.
   Toute animation a son état final par défaut : sans JavaScript, ou avec prefers-reduced-motion, tout est visible. */

/* ---------- Boutons : la couleur glisse de gauche à droite au survol */
.av-btn .elementor-button, .av-lien-bouton {
	background: var(--av-rouge) linear-gradient(var(--av-rouge-fonce), var(--av-rouge-fonce)) no-repeat 0 0 / 0% 100%;
	transition: background-size .6s var(--av-ease), border-color .35s var(--av-ease), color .35s var(--av-ease), transform .2s var(--av-ease);
}
.av-btn .elementor-button:hover, .av-lien-bouton:hover { background: var(--av-rouge) linear-gradient(var(--av-rouge-fonce), var(--av-rouge-fonce)) no-repeat 0 0 / 100% 100%; }
.av-btn--secondaire .elementor-button, .av-fiche-devis .av-lien-bouton--secondaire { background: transparent linear-gradient(var(--av-marine), var(--av-marine)) no-repeat 0 0 / 0% 100%; }
.av-btn--secondaire .elementor-button:hover, .av-fiche-devis .av-lien-bouton--secondaire:hover { background: transparent linear-gradient(var(--av-marine), var(--av-marine)) no-repeat 0 0 / 100% 100%; color: #fff; }
.av-btn--clair .elementor-button { background: transparent linear-gradient(#fff, #fff) no-repeat 0 0 / 0% 100%; }
.av-btn--clair .elementor-button:hover { background: transparent linear-gradient(#fff, #fff) no-repeat 0 0 / 100% 100%; color: var(--av-marine); }
/* lien souligné : le trait se dessine depuis la gauche */
.av-btn--lien .elementor-button { border: 0; padding: 0 0 8px; background: linear-gradient(var(--av-marine), var(--av-marine)) no-repeat 0 100% / 100% 1px; }
.av-btn--lien .elementor-button:hover { background: linear-gradient(var(--av-rouge), var(--av-rouge)) no-repeat 0 100% / 100% 1px; color: var(--av-rouge-fonce); }

/* ---------- Apparitions (site.js pose av-anim sur ce qui est sous l'écran ; av-vu = état final) */
.av-anim { opacity: 0; transform: translate3d(0, 36px, 0); transition: opacity 1.1s var(--av-ease), transform 1.2s var(--av-ease); }
.av-anim.av-vu { opacity: 1; transform: none; }
.av-tuile.av-anim:nth-child(2), .av-fonction.av-anim:nth-child(2n), .av-groupe.av-anim:nth-child(2n), .av-plage-bloc + .av-plage-bloc .av-anim { transition-delay: .1s; }
.av-tuile.av-anim:nth-child(3), .av-fonction.av-anim:nth-child(3n) { transition-delay: .18s; }
.av-tuile.av-anim:nth-child(n+4) { transition-delay: .24s; }

/* ---------- Héros de l'accueil : la machine ouverte en lumière, le titre monumental sur la nuit */
.e-con.av-sec.av-heros-lux { --padding-top: 0px; --padding-bottom: 0px; --padding-left: 0px; --padding-right: 0px; position: relative; overflow: hidden;
	display: flex; flex-direction: column; justify-content: flex-end; min-height: min(calc(100dvh - var(--av-entete)), 940px); background: var(--av-nuit); }
.av-heros-lux .elementor-widget.av-heros-lux-img { position: absolute; top: 0; right: 0; bottom: 0; width: 66%; margin: 0 !important; z-index: 0; }
/* le zoom d'entrée (av-recul) agrandit la photo : sans ce cadre, elle débordait à gauche hors du voile et laissait une bande claire */
.av-heros-lux .elementor-widget.av-heros-lux-img, .av-heros-lux-img .elementor-widget-container { overflow: hidden; }
.av-heros-lux-img .elementor-widget-container, .av-heros-lux-img img { height: 100%; }
.av-heros-lux-img img { width: 100%; object-fit: cover; object-position: 50% 45%; display: block; }
.av-heros-lux-img::after { content: ""; position: absolute; inset: 0; pointer-events: none;
	background: linear-gradient(90deg, #001634 0%, rgba(0, 22, 52, .9) 30%, rgba(0, 22, 52, .45) 62%, rgba(0, 22, 52, .1) 100%),
		linear-gradient(0deg, rgba(0, 22, 52, .9) 0%, rgba(0, 22, 52, 0) 46%); }
.av-heros-lux .av-heros-texte { position: relative; z-index: 1; width: 100%; max-width: calc(1280px + 2 * var(--av-gouttiere)); margin: 0 auto;
	padding: 140px var(--av-gouttiere) clamp(64px, 10vh, 120px); gap: 36px; }
.e-con.av-sec.av-heros-lux .elementor-widget-heading h1.elementor-heading-title { color: #fff; font-size: clamp(2.8rem, 1rem + 5vw, 5.6rem);
	line-height: .96; letter-spacing: -0.035em; font-stretch: 112%; font-weight: 600; }
.av-l { display: block; overflow: hidden; padding-bottom: .08em; margin-bottom: -.08em; }
.av-l > span { display: inline-block; }
.av-heros-lux .av-chapo p { color: #D3DDEA; max-width: 46ch; }
@keyframes av-monte { from { transform: translate3d(0, 108%, 0); } to { transform: none; } }
@keyframes av-fondu { from { opacity: 0; transform: translate3d(0, 18px, 0); } to { opacity: 1; transform: none; } }
@keyframes av-recul { from { transform: scale(1.14); } to { transform: scale(1); } }
@media (prefers-reduced-motion: no-preference) {
	.av-heros-lux .av-l > span { animation: av-monte 1.25s var(--av-ease) both; }
	.av-heros-lux .av-l:nth-child(2) > span { animation-delay: .1s; }
	.av-heros-lux .av-l:nth-child(3) > span { animation-delay: .2s; }
	.av-heros-lux .av-chapo, .av-heros-lux .av-boutons { animation: av-fondu 1.1s var(--av-ease) .55s both; }
	.av-heros-lux .av-boutons { animation-delay: .7s; }
	.av-heros-lux-img img { animation: av-recul 2.6s var(--av-ease) both; }
}

/* ---------- Bande boutique : la couveuse dans un cadre, comme en vitrine */
.av-nuit-img img { outline: 1px solid rgba(255, 255, 255, .22); outline-offset: 18px; }
@media (max-width: 767px) { .av-nuit-img img { outline-offset: 10px; } }

/* ---------- Plage de capacités : deux nombres monumentaux sur la nuit */
.e-con.av-sec.av-plage { --padding-top: 144px; --padding-bottom: 144px; }
.av-plage .av-titre-section { margin-block-end: 80px; }
.av-plage-grille { border-top: 1px solid rgba(255, 255, 255, .16); }
.av-plage-bloc { padding: 56px 48px 0 0; }
.av-plage-bloc + .av-plage-bloc { padding-left: 48px; border-left: 1px solid rgba(255, 255, 255, .16); }
.e-con.av-sec .av-plage-bloc p.av-plage-nb { font-stretch: 125%; font-weight: 200; font-size: clamp(4.4rem, 1.6rem + 9vw, 11.5rem); line-height: .9;
	letter-spacing: -0.045em; color: #fff; margin: 0 0 28px; white-space: nowrap; font-variant-numeric: tabular-nums; }
.e-con.av-sec .av-plage-bloc p.av-plage-leg { color: #C8D3E3; font-size: 1.1rem; max-width: 34ch; margin: 0; }

/* ---------- Photo pleine largeur, léger parallaxe lié au défilement (navigateurs qui le savent ; sinon fixe) */
.e-con.av-sec.av-photo-pleine { --padding-top: 0px; --padding-bottom: 0px; --padding-left: 0px; --padding-right: 0px; overflow: hidden; }
.av-photo-pleine-img, .av-photo-pleine-img .elementor-widget-container { width: 100%; margin: 0 !important; }
.av-photo-pleine-img img { display: block; width: 100%; height: clamp(360px, 72vh, 780px); object-fit: cover; object-position: 50% 50%; }
@supports (animation-timeline: view()) {
	@media (prefers-reduced-motion: no-preference) {
		.av-photo-pleine-img img { animation: av-parallaxe linear both; animation-timeline: view(); animation-range: cover; }
		@keyframes av-parallaxe { from { transform: translate3d(0, -7%, 0) scale(1.15); } to { transform: translate3d(0, 7%, 0) scale(1.15); } }
	}
}

/* ---------- Vignettes : la photo s'éclaire, un filet rouge se trace sous le nom */
.av-tuile-texte::after { content: ""; position: absolute; left: 32px; right: 32px; bottom: 0; height: 2px; background: var(--av-rouge);
	transform: scaleX(0); transform-origin: left; transition: transform .7s var(--av-ease); }
.av-tuile-lien:hover .av-tuile-texte::after, .av-tuile-lien:focus-visible .av-tuile-texte::after { transform: scaleX(1); }
.av-tuile-img img { filter: saturate(.92); transition: transform 1.4s var(--av-ease), filter .8s var(--av-ease); }
.av-tuile-lien:hover .av-tuile-img img { filter: saturate(1.05); }
.av-tuile--une .av-tuile-nom { font-size: clamp(1.8rem, 1.2rem + 1.4vw, 2.6rem); }

/* ---------- Fiche machine : en-tête produit en pleine largeur */
.single-product div.product > .woocommerce-product-gallery, .single-product div.product > .summary { grid-row: 1; }
.single-product div.product { grid-template-columns: minmax(0, 1.4fr) minmax(0, 1fr); }
.single-product div.product::before { content: ""; grid-row: 1; grid-column: 1 / -1; margin: -150px calc(50% - 50vw) -88px; background: var(--av-surface); position: relative; z-index: 0; }
.single-product div.product > .woocommerce-product-gallery, .single-product div.product > .summary { position: relative; z-index: 1; }
.single-product div.product > .summary { align-self: center; padding: 24px 0 0; }
.woocommerce div.product .product_title { font-size: clamp(2.6rem, 1.3rem + 3.4vw, 5rem); line-height: .98; letter-spacing: -0.035em; margin-bottom: 28px; }
.woocommerce div.product div.images .woocommerce-product-gallery__image img, .woocommerce div.product div.images .flex-control-thumbs li img { background: #fff; }

/* chiffres clés monumentaux, sur la nuit */
.av-cles-bande { margin: 88px calc(50% - 50vw) 0; padding: 120px max(var(--av-gouttiere), calc(50vw - 640px)); background: var(--av-nuit); }
.av-cles-grands { display: grid; grid-template-columns: repeat(3, minmax(0, 1fr)); margin: 0; }
.av-cle-grand { padding: 0 40px 0 0; }
.av-cle-grand + .av-cle-grand { padding-left: 40px; border-left: 1px solid rgba(255, 255, 255, .16); }
.av-cle-grand dt { color: #AFBDD0; font-size: .92rem; margin: 0 0 24px; }
.av-cle-grand dd { margin: 0; }
.av-cle-grand .av-cle-nb { display: block; font-stretch: 125%; font-weight: 200; font-size: clamp(3rem, 1.4rem + 4.4vw, 6.2rem); line-height: .95;
	letter-spacing: -0.045em; color: #fff; white-space: nowrap; font-variant-numeric: tabular-nums; }
.av-cle-grand .av-cle-unite { display: block; color: #C8D3E3; font-size: 1.05rem; margin-top: 18px; }
.av-cles-bande + .av-sommaire { margin-top: 0; }

/* fonctions : numérotées, la machine en regard */
.av-fonctions { counter-reset: av-f; }
.av-fonction { counter-increment: av-f; }
.av-fonction h3::before { content: counter(av-f, decimal-leading-zero); display: block; font-stretch: 125%; font-weight: 200; font-size: 2.6rem;
	line-height: 1; letter-spacing: -0.03em; color: var(--av-rouge); margin-bottom: 20px; }
.av-fonctions-figure { margin: 40px 0 0; }
.av-fonctions-figure img { display: block; width: 100%; height: auto; aspect-ratio: 4 / 5; object-fit: cover; background: var(--av-surface); }
.av-fiche-fonctions .av-fiche-aside { top: calc(var(--av-entete) + 88px); }

/* présentation : la phrase d'accroche en grand */
.av-presentation .av-fiche-texte p:first-child { font-size: clamp(1.4rem, 1.1rem + 1vw, 2rem); line-height: 1.38; letter-spacing: -0.01em; }

/* comparatif : plus d'air, le modèle consulté bien marqué */
.av-compare tbody tr { transition: background-color .3s var(--av-ease); }
.av-compare tbody tr:hover th, .av-compare tbody tr:hover td { background: #FAFBFC; }
.av-compare-ici:hover th, .av-compare-ici:hover td { background: var(--av-surface) !important; }

/* ---------- Pages légales : sommaire collant, colonne de lecture */
.av-legal-grille { align-items: start; }
.elementor-widget.av-toc-w { position: sticky; top: calc(var(--av-entete) + 40px); }
.av-toc { border-top: 1px solid var(--av-marine); padding-top: 20px; }
.av-toc-titre { font-stretch: 108%; font-weight: 600; color: var(--av-marine) !important; margin: 0 0 14px !important; }
.av-toc ol { list-style: none; margin: 0; padding: 0; counter-reset: av-t; }
.av-toc li { counter-increment: av-t; margin: 0; }
.av-toc a { display: grid; grid-template-columns: 28px 1fr; gap: 8px; padding: 9px 0; color: var(--av-gris) !important; text-decoration: none !important; font-size: .93rem; line-height: 1.4;
	border-bottom: 1px solid var(--av-filet); transition: color .3s var(--av-ease); }
.av-toc a::before { content: counter(av-t, decimal-leading-zero); color: var(--av-rouge); font-variant-numeric: tabular-nums; }
.av-toc a:hover { color: var(--av-marine) !important; }
.av-legal .av-prose { font-size: 1.06rem; line-height: 1.75; }
.av-legal .av-prose h2 { scroll-margin-top: calc(var(--av-entete) + 32px); padding-top: 32px; border-top: 1px solid var(--av-filet); font-size: 1.55rem !important; }
.av-legal .av-prose h2:first-of-type { border-top: 0; padding-top: 0; }

/* ---------- Formulaires : message de confirmation et erreurs */
.av-formulaire .forminator-response-message { border-radius: 0; padding: 20px 24px; font-size: 1rem; }
.av-formulaire .forminator-response-message.forminator-success { background: #EEF6F1; border-left: 3px solid #1E6B43; color: #12402A; }
.av-formulaire .forminator-response-message.forminator-error { background: #FDF0F0; border-left: 3px solid #A3121A; color: #6E0D12; }
.av-formulaire .forminator-response-message p { margin: 0; color: inherit; }
.av-formulaire .forminator-field--error .forminator-input, .av-formulaire .forminator-field--error .forminator-textarea { border-color: #A3121A; }
.av-formulaire .forminator-checkbox-box, .av-formulaire input[type="checkbox"] { accent-color: var(--av-marine); }

/* ---------- Panier et commande (blocs WooCommerce) */
body.woocommerce-cart .site-main .page-header, body.woocommerce-checkout .site-main .page-header, body.woocommerce-account .site-main .page-header { margin-bottom: 48px; padding-bottom: 32px; border-bottom: 1px solid var(--av-filet); }
.woocommerce-cart .entry-title, .woocommerce-checkout .entry-title, .woocommerce-account .entry-title, .search .entry-title {
	font-family: var(--av-police); font-stretch: var(--av-large); color: var(--av-marine); font-weight: 650; font-size: clamp(2.4rem, 1.4rem + 3vw, 4.4rem); line-height: 1.02; letter-spacing: -0.03em; }
.wc-block-cart, .wc-block-checkout { font-family: var(--av-police); }
.wc-block-components-sidebar-layout .wc-block-components-sidebar { background: var(--av-surface); padding: 40px !important; }
.wc-block-components-totals-wrapper, .wc-block-components-panel { border-color: var(--av-filet) !important; }
.wc-block-components-totals-footer-item .wc-block-components-totals-item__value, .wc-block-components-totals-footer-item .wc-block-components-totals-item__label {
	font-stretch: 108%; font-size: 1.3rem !important; color: var(--av-marine); }
.wc-block-cart-items .wc-block-cart-item__image img { background: var(--av-surface); }
.wc-block-components-quantity-selector { border-radius: 0 !important; }
.wc-block-components-quantity-selector::after { border-radius: 0 !important; border-color: var(--av-gris-clair) !important; }
.wc-block-cart__submit-button, .wc-block-components-checkout-place-order-button { width: 100%; justify-content: center; min-height: 60px; }
.wc-block-components-notice-banner { border-radius: 0 !important; }
.wc-block-components-checkout-step__heading .wc-block-components-title { font-size: 1.35rem !important; }
.wc-block-components-text-input input:focus, .wc-blocks-components-select__select:focus { box-shadow: 0 0 0 3px rgba(0, 48, 108, .15) !important; border-color: var(--av-marine) !important; }
.av-reassurance { list-style: none; margin: 48px 0 0; padding: 32px 0 0; border-top: 1px solid var(--av-filet); display: grid; grid-template-columns: repeat(3, minmax(0, 1fr)); gap: 32px; }
.av-reassurance li { margin: 0; color: var(--av-gris); font-size: .95rem; line-height: 1.55; }
.av-reassurance strong { display: block; color: var(--av-marine); font-stretch: 108%; font-weight: 600; margin-bottom: 6px; }
.av-reassurance a { color: var(--av-marine); font-weight: 600; }
.wp-block-woocommerce-empty-cart-block { text-align: left; }
.wp-block-woocommerce-empty-cart-block .wc-block-cart__empty-cart__title { font-size: clamp(1.8rem, 1.3rem + 1.6vw, 2.6rem) !important; margin: 0 0 16px; text-align: left; }
.av-panier-vide { margin: 0 0 56px; color: var(--av-gris); font-size: 1.1rem; }
.av-panier-vide a { color: var(--av-marine); font-weight: 600; }
.wp-block-woocommerce-empty-cart-block .wp-block-separator { display: none; }
.wp-block-woocommerce-empty-cart-block > h2:not(.wc-block-cart__empty-cart__title) { font-size: 1.4rem !important; text-align: left; margin: 0 0 32px; color: var(--av-marine); }
.wc-block-grid__products { gap: 28px; }
.wc-block-grid__product { text-align: left !important; border: 0 !important; }
.wc-block-grid__product-image img { background: var(--av-surface); aspect-ratio: 4 / 5; object-fit: cover; }

/* ---------- Mon compte : connexion */
.woocommerce-account .woocommerce { max-width: 560px; }
.woocommerce form.login, .woocommerce form.register { border: 0; border-top: 1px solid var(--av-marine); border-radius: 0; padding: 32px 0 0; margin: 0; }
.woocommerce-account h2 { font-size: 1.6rem; margin: 0 0 8px; }
.woocommerce form .form-row label { font-weight: 600; font-size: .9rem; color: var(--av-marine); }
.woocommerce form .form-row input.input-text { border: 1px solid #8D99AE; border-radius: 0; padding: 14px 16px; font: inherit; }
.woocommerce form .form-row input.input-text:focus { border-color: var(--av-marine); box-shadow: 0 0 0 3px rgba(0, 48, 108, .15); outline: none; }
.woocommerce .woocommerce-form-login .woocommerce-form-login__submit, .woocommerce button.button { background: var(--av-rouge); color: #fff; border-radius: 0; padding: 16px 28px; font-weight: 600; font-family: var(--av-police); }
.woocommerce button.button:hover { background: var(--av-rouge-fonce); color: #fff; }
.woocommerce .woocommerce-form-login__rememberme { display: block; margin: 0 0 16px; color: var(--av-gris); font-weight: 400 !important; }
.woocommerce .lost_password a { color: var(--av-gris); }

/* ---------- Archives de catégories */
.woocommerce .term-description { font-size: clamp(1.1rem, 1rem + .4vw, 1.3rem); color: var(--av-gris); max-width: 56ch; margin-top: 24px; }

/* ---------- 404 et recherche (gabarit maison, gabarits/introuvable.php) */
.av-introuvable { max-width: 1376px; margin: 0 auto; padding: 160px var(--av-gouttiere) 160px; }
.av-introuvable-code { font-stretch: 125%; font-weight: 200; font-size: clamp(6rem, 3rem + 12vw, 15rem); line-height: .85; letter-spacing: -0.05em; color: var(--av-marine); margin: 0 0 40px; }
.av-introuvable h1 { font-size: clamp(2.2rem, 1.4rem + 2.6vw, 3.8rem); margin: 0 0 24px; }
.av-introuvable p { color: var(--av-gris); font-size: 1.15rem; max-width: 52ch; }
.av-introuvable-liens { list-style: none; margin: 56px 0 0; padding: 0; border-top: 1px solid var(--av-filet); max-width: 760px; }
.av-introuvable-liens li { border-bottom: 1px solid var(--av-filet); margin: 0; }
.av-introuvable-liens a { display: flex; justify-content: space-between; align-items: center; padding: 22px 0; text-decoration: none; color: var(--av-marine);
	font-stretch: 108%; font-weight: 600; font-size: 1.15rem; transition: padding-left .4s var(--av-ease), color .3s var(--av-ease); }
.av-introuvable-liens a::after { content: ""; width: 22px; height: 1px; background: var(--av-rouge); transition: width .4s var(--av-ease); }
.av-introuvable-liens a:hover { padding-left: 12px; color: var(--av-rouge-fonce); }
.av-introuvable-liens a:hover::after { width: 40px; }
.av-recherche-form { display: flex; max-width: 760px; margin: 48px 0 0; border-bottom: 1px solid var(--av-marine); }
.av-recherche-form input[type="search"] { flex: 1; border: 0; padding: 18px 0; font: inherit; font-size: 1.3rem; color: var(--av-texte); background: none; }
.av-recherche-form input[type="search"]:focus { outline: none; }
.av-recherche-form:focus-within { border-bottom-color: var(--av-rouge); }
.av-recherche-form button { border: 0; background: none; color: var(--av-marine); font: inherit; font-weight: 600; cursor: pointer; padding: 0 0 0 16px; }

/* ---------- Tablette */
@media (max-width: 1024px) {
	.single-product div.product { grid-template-columns: minmax(0, 1fr); }
	.single-product div.product > .summary { grid-row: 2; padding-top: 40px; }
	.single-product div.product::before { grid-row: 1 / span 2; margin-bottom: -64px; }
	.av-fonctions-figure { display: none; }
	.e-con.av-sec.av-plage { --padding-top: 112px; --padding-bottom: 112px; }
	.elementor-widget.av-toc-w { position: static; }
}

/* ---------- Téléphone */
@media (max-width: 767px) {
	.e-con.av-sec.av-heros-lux { min-height: 0; justify-content: flex-start; }
	.av-heros-lux .elementor-widget.av-heros-lux-img { position: relative; width: 100%; height: 54vh; min-height: 340px; }
	.av-heros-lux-img::after { background: linear-gradient(0deg, #001634 0%, rgba(0, 22, 52, .9) 34%, rgba(0, 22, 52, .35) 62%, rgba(0, 22, 52, 0) 82%); }
	.av-heros-lux .av-heros-texte { padding: 0 20px 64px; margin-top: -72px; gap: 28px; }
	.av-plage-bloc, .av-plage-bloc + .av-plage-bloc { padding: 40px 0 0; border-left: 0; }
	.av-plage-bloc + .av-plage-bloc { margin-top: 40px; border-top: 1px solid rgba(255, 255, 255, .16); }
	.av-plage .av-titre-section { margin-block-end: 48px; }
	.av-photo-pleine-img img { height: 56vh; }
	.av-cles-bande { padding-top: 72px; padding-bottom: 72px; margin-top: 64px; }
	.av-cles-grands { grid-template-columns: 1fr; gap: 40px; }
	.av-cle-grand, .av-cle-grand + .av-cle-grand { padding: 0; border-left: 0; }
	.av-cle-grand + .av-cle-grand { padding-top: 40px; border-top: 1px solid rgba(255, 255, 255, .16); }
	.av-cle-grand dt { margin-bottom: 12px; }
	.single-product div.product::before { margin-top: -110px; }
	.av-reassurance { grid-template-columns: 1fr; gap: 20px; }
	.wc-block-components-sidebar-layout .wc-block-components-sidebar { padding: 28px 20px !important; }
	.av-introuvable { padding: 96px 20px; }
	.av-tuile-texte::after { left: 22px; right: 22px; }
}

/* ---------- Corrections relevées au tour complet */
.page-content .alignwide, .page-content .alignfull { margin-left: 0 !important; margin-right: 0 !important; max-width: 100%; }
.wc-block-cart__empty-cart__title.with-empty-cart-icon::before { display: none !important; }
.wp-block-woocommerce-empty-cart-block .has-text-align-center, .wp-block-woocommerce-empty-cart-block p { text-align: left !important; }
.wp-block-woocommerce-empty-cart-block .wp-block-button { text-align: left; }
.woocommerce-cart .entry-title, .woocommerce-checkout .entry-title, .woocommerce-account .entry-title { margin: 24px 0 0 !important; }
.av-formulaire .forminator-response-message[aria-hidden="true"], .av-formulaire .forminator-response-message:empty { display: none !important; }
.av-introuvable p.av-introuvable-code { font-stretch: 125%; font-weight: 200; font-size: clamp(6rem, 3rem + 12vw, 15rem); line-height: .85;
	letter-spacing: -0.05em; color: var(--av-marine); margin: 0 0 40px; max-width: none; }
.av-compte-intro { font-size: clamp(1.1rem, 1rem + .4vw, 1.3rem); color: var(--av-gris); margin: 0 0 48px; max-width: 44ch; }
/* les colonnes collantes ne doivent pas s'étirer sur toute la hauteur de la grille, sinon elles ne collent pas */
.elementor-widget.av-toc-w, .e-con.av-etapes-titre { align-self: start !important; }
/* menu du téléphone : le bouton à droite, contre le panier */
.av-nav .hfe-nav-menu__toggle { margin-right: 0 !important; margin-left: auto !important; }
main.site-main.av-introuvable { max-width: 1376px; padding: 160px var(--av-gouttiere); }
@media (max-width: 767px) { main.site-main.av-introuvable { padding: 88px 20px 96px; } }
/* le « clearfix » de WooCommerce (display: table) écrasait le fond de l'en-tête produit */
.woocommerce.single-product div.product::before { display: block !important; content: "" !important; align-self: stretch; }
.woocommerce.single-product div.product::after { display: none !important; }
.single-product .woocommerce-breadcrumb { position: relative; z-index: 1; }
