/* Retour V3: restrained headings, readable body copy and consistent official greens. */
:root { --pb-ink: #2b3824; --pb-sage: #727d6c; --pb-paper: #f3f0ea; }
body { color: var(--pb-ink); }
body a { color: var(--pb-ink); }
body :is(.btn-primary, .btn-product-list) { background-color: var(--pb-sage); border-color: var(--pb-sage); }
body :is(.btn-primary, .btn-product-list):hover { background-color: var(--pb-ink); border-color: var(--pb-ink); }
body :is(.elementor-element.animated, .elementor-invisible, .js-product-miniature-wrapper, .pb-brand-group) { animation: none !important; opacity: 1 !important; visibility: visible !important; }
body .elementor-element.animated { transform: none !important; }
/* Copperplate uses the same small capitals throughout: no oversized initial. */
body :is(.custom-category-header h1, .product_header_container h1, .pb-service h2, .pb-contact-header h1, .pb-contact-section-heading h2, .pb-heritage-values-title, .pb-heritage-jobs-title, .pb-article-hero h1, .pb-article-content h2, .pb-article-content h3) { text-transform: lowercase !important; }
#header .header-nav .right-nav a { font-family: var(--pb-font-body); font-size: 14px; line-height: 1.25; }
#header .header-nav .right-nav :is(ul, li, a) { align-items: center; }
#header .header-nav .right-nav li { display: flex; }
#header .header-nav .right-nav a { display: inline-flex; min-height: 32px; }
#desktop-header .header-top .header-btn-w .header-btn { font-size: 15px; }
#desktop-header .header-top .header-btn-w .header-btn :is(i, svg) { font-size: 16px; width: 16px; height: 16px; }
#desktop-header .header-top .header-btn-w { min-width: 34px; }
#desktop-header .header-top .header-btn { min-width: 34px; min-height: 34px; }
#header .cart-products-count-btn { font: 500 12px/18px var(--pb-font-body); background: var(--pb-ink); color: white; min-width: 18px; height: 18px; border-radius: 50%; top: -7px; right: -8px; }
/* Home: no zoom, generous margin around the calligraphic initial. */
.pb-welcome-title { font-size: clamp(27px, 2.4vw, 33px); line-height: 1.15; }
.pb-welcome-text, .pb-story-copy p { line-height: 1.65; }
.pb-story-copy { padding-left: 24px; }
.pb-story-copy p::first-letter { margin-right: 16px; font-size: 50px; }
.pb-story-values { font-size: 23px; }
body#index .elementor-widget-heading h2, .pb-gazette-heading h2 { font-size: clamp(25px, 2.5vw, 34px) !important; line-height: 1.2; }
.pb-gazette-heading p { font-size: 20px; }
:is(.pb-gazette-posts, .pb-season-listing) .simpleblog__listing__post:hover img { transform: none; filter: none; }
.pb-gazette-socials :is(.elementor-social-icon, .elementor-social-icon i) { font-size: 32px; }
/* Cards keep legible names while reducing decorative bag controls. */
body .product-miniature .btn-product-list { width: 38px !important; height: 38px !important; min-height: 38px; }
body .product-miniature .btn-product-list :is(.bag-icon, .spinner-icon, i) { font-size: 14px; }
body .product-miniature .product-title { font-size: 14px !important; line-height: 1.45 !important; }
body .product-miniature :is(a.product-title, .product-title a) { color: var(--pb-ink) !important; }
body .product-miniature .product-flag.new { font-size: 11px; text-transform: none; }
/* Titre de categorie en bandeau beige fonce (meme teinte que l'en-tete d'article), sur toute la largeur. */
body#category .custom-category-header { margin: 0 0 24px; padding: 18px 24px; background: #e9e4db; border: 0; border-radius: 6px; }
body#category .custom-category-header h1 { color: var(--pb-ink); }
/* Colonnes alignees en haut : la barre de tri perd sa marge et son retrait haut,
   le menu compense le retrait interne (7px) de son premier lien. */
body:not(#index):not(#product) #products #js-product-list-top { margin-top: 0; padding-top: 0; }
@media (min-width: 768px) {
  body:not(#index):not(#product) #left-column > :first-child { margin-top: -7px; }
}
body#category .custom-category-header h1 { font-size: clamp(22px, 1.9vw, 26px); }
body #js-product-list-top { border: 0; padding-top: 0; }
body #js-product-list-top .products-selection { border-bottom: 0; }
body #js-product-list-top .products-selection { border-bottom: 0; }
body #js-product-list-top :is(.products-selection, .products-sort-order, .products-counter, .form-control) { font-size: 14px; }
body #left-column .block-categories > .block-title { display: none; }
body #left-column .block-categories :is(a, .category-sub-link) { color: var(--pb-ink); font-size: 14px; line-height: 1.45; }
body #left-column #search_filters .facet-title { border-bottom: 0; padding-bottom: 4px; }
body #left-column #search_filters .facet-title { border-bottom: 0; padding-bottom: 4px; }
/* Product: compact visual, coherent controls, information readable at 15px. */
body#product .pb-single-product-image { max-width: 280px; margin-bottom: 12px; }
body#product .pb-single-product-image img { height: 280px; }
body#product #main-product-wrapper .product_header_container h1 { font-size: clamp(22px, 1.85vw, 26px); line-height: 1.3; }
body#product #main-product-wrapper :is(.product-variants .radio-label, .product-variants .form-control-label) { font-size: 14px; }
body#product #main-product-wrapper .product-variants .radio-label { padding: 6px 10px; }
body#product .product-add-to-cart :is(.add-to-cart, .btn-iqitwishlist, .btn-iqitcompare) { min-height: 42px; }
body#product .product-add-to-cart .add-to-cart { min-height: 44px; height: 44px; padding: 8px 16px; font-size: 15px; }
body#product .product-add-to-cart :is(.btn-iqitwishlist-add, .btn-iqitcompare-add) { min-width: 44px; width: 44px; height: 44px; padding: 8px; }
body#product .product-add-to-cart :is(#quantity_wanted, .bootstrap-touchspin .input-group-btn-vertical) { height: 44px; }
body#product .product-add-to-cart .bootstrap-touchspin :is(.bootstrap-touchspin-up, .bootstrap-touchspin-down) { height: 22px; }
body#product #main-product-wrapper :is(.product-description-short, .product-description-short p) { font-size: 15px; line-height: 1.65; }
body#product .product-add-to-cart :is(i, .fa) { font-size: 16px; }
body#product :is(.product-description, .product-description p, .product-description li, .product-features, .tabs .tab-content) { font-size: 15px; line-height: 1.65; }
body#product #product-infos-tabs .nav-link { font-size: 15px; text-decoration: none !important; box-shadow: none; color: var(--pb-ink); }
body#product #product-infos-tabs .nav-link::after { display: none; }
body#product :is(.category-products, .crossselling-products, .product-accessories, .product-accesories-section) > .section-title { font-size: clamp(21px, 1.9vw, 25px); text-transform: lowercase; margin-bottom: 24px; }
body#product :is(.category-products, .crossselling-products, .product-accessories, .product-accesories-section) { margin-top: 35px; }
body#product :is(.category-products, .crossselling-products, .product-accessories, .product-accesories-section) .thumbnail-container { height: 195px; }
body#product :is(.category-products, .crossselling-products, .product-accessories, .product-accesories-section) .product-miniature-default:hover .thumbnail-container { transform: none; box-shadow: none; }
body#product .pb-product-reassurance :is(.elementor-icon-box-title, .elementor-icon-box-title span) { font-size: 14px !important; }
body#product .pb-product-reassurance :is(.elementor-icon-box-description, .elementor-icon-box-description p) { font-size: 13px !important; }
body#product .pb-product-reassurance .elementor-icon-box-wrapper { display: flex; align-items: center; text-align: left; }
body#product .pb-product-reassurance .elementor-icon-box-content { text-align: left; }
body#product .pb-product-reassurance .elementor-column:has(.pb-reassurance-payment) { width: 100% !important; }
body#product .pb-product-reassurance .pb-reassurance-payment .elementor-icon-box-content { display: flex; flex-wrap: wrap; gap: 5px 10px; align-items: baseline; }
body#product .pb-product-reassurance .pb-reassurance-payment :is(.elementor-icon-box-title, .elementor-icon-box-description, .elementor-icon-box-description p) { margin: 0; }
.pb-advice-nudge { margin: 18px 0; padding: 16px 0; border-top: 1px solid #dde2d9; font: 15px/1.6 var(--pb-font-body); color: var(--pb-ink); }
.pb-advice-nudge p { margin: 0 0 6px; }
/* Fiche produit : le filet suivant suit directement, espaces egaux de part et d'autre. */
body#product .pb-advice-nudge { margin-bottom: 0; }
/* "aside" passe devant le a:link:not(.btn) de l'editeur de theme. */
aside.pb-advice-nudge a:not(.nav-link):not(.btn) { display: inline-block; color: var(--pb-ink); text-decoration: underline; text-underline-offset: 3px; }
.pb-payment-line { display: flex; align-items: center; flex-wrap: wrap; gap: 8px; font-size: 14px; }
/* Cart and modal: keep the validated text scale, tighten only spacing. */
body#cart .cart-item { margin: 0; padding: 12px 18px; border-bottom: 1px solid #e6e9e3; }
body#cart .cart-item:last-child { border-bottom: 0; }
body#cart .product-line-grid .product-image img { height: 72px; }
body#cart .product-line-grid .qty .input-group { min-width: 64px; width: 68px; }
body#cart .product-line-grid .qty input { height: 36px; padding: 5px; border-color: #c5cbc1; color: var(--pb-ink); font-size: 14px; }
/* Quantite : deux demi-cases de 18px a la hauteur du champ (36px), fleches centrees. */
body#cart #main .product-line-grid .qty .input-group-btn-vertical { display: flex; flex-direction: column; width: 24px; height: 36px; }
body#cart #main .product-line-grid .qty :is(.bootstrap-touchspin-up, .bootstrap-touchspin-down) { display: flex; width: 24px; height: 18px; padding: 0; align-items: center; justify-content: center; border: 1px solid #c5cbc1; border-left: 0; color: var(--pb-ink); line-height: 1; }
body#cart #main .product-line-grid .qty .bootstrap-touchspin-down { border-top: 0; }
body#cart #main .product-line-grid .qty :is(.bootstrap-touchspin-up, .bootstrap-touchspin-down) i { position: static; margin: 0; font-size: 10px; line-height: 1; }
body#cart #main .product-line-grid .qty :is(.bootstrap-touchspin-up, .bootstrap-touchspin-down):hover { background: var(--pb-paper); }
body#cart .product-line-info > .label, #blockcart-modal :is(.product-name, .product-name a) { color: var(--pb-ink) !important; }
.pb-shipping-progress { padding: 12px 16px; margin: 8px 0; }
.pb-shipping-progress__caption { font-size: 12px; }
body#cart #main > .page-title { text-transform: lowercase; }
#blockcart-modal .modal-dialog { margin: 5vh auto; min-height: auto; }
#blockcart-modal .row .divide-right { border-right: 0; }
#blockcart-modal .product-image { max-width: 90px; max-height: 120px; }
#blockcart-modal .product-name { margin-top: 10px; }
/* Heritage: restrained titles, one comfortable paragraph scale. */
.page-cms-6 :is(.pb-heritage-history-title, .pb-heritage-values-title, .pb-heritage-jobs-title) { font-size: clamp(27px, 2.7vw, 36px); line-height: 1.25; }
.page-cms-6 :is(.pb-heritage-history-subtitle, .pb-heritage-place-title, .pb-heritage-commitments-title, .pb-heritage-partners-title) { font-size: clamp(30px, 3vw, 40px); line-height: 1.25; }
.page-cms-6 :is(.pb-heritage-history-text, .pb-heritage-place-text, .pb-heritage-values-text, .pb-heritage-commitments-text, .pb-heritage-job-text, .pb-heritage-partners-copy) :is(p, li),
.page-cms-6 :is(.pb-heritage-history-text, .pb-heritage-place-text, .pb-heritage-values-text, .pb-heritage-commitments-text, .pb-heritage-job-text, .pb-heritage-partners-copy) { font-size: 16px; line-height: 1.7; }
.page-cms-6 :is(.pb-heritage-history, .pb-heritage-place, .pb-heritage-values, .pb-heritage-commitments, .pb-heritage-jobs, .pb-heritage-partners) { padding-top: 36px; padding-bottom: 40px; }
.page-cms-6 .pb-heritage-job-title small { font: 400 15px/1.45 var(--pb-font-script); }
.page-cms-6 .pb-heritage-job__copy :is(.elementor-text-editor, p) { font-size: 15px; line-height: 1.7; }
.page-cms-6 .pb-heritage-job:nth-child(3) .elementor-widget-image img { object-fit: cover; transform: scale(1.08); }
.page-cms-6 .pb-heritage-job:nth-child(3) .elementor-widget-image .elementor-widget-container { overflow: hidden; }
.page-cms-6 :is(.pb-heritage-history-title, .pb-heritage-values-title, .pb-heritage-jobs-title) { text-transform: lowercase; }
.page-cms-6 .pb-heritage-values-emblem__words { animation: none !important; transition: none !important; transform: none !important; }
.pb-heritage-partners-more { font-family: var(--pb-font-body); font-size: 15px; }
.pb-heritage-partners-cta-wrap { margin: 18px 0 28px; }
.pb-heritage-values-list :is(span, li):hover { transform: none !important; }
/* Notre heritage : tous les textes courants a la taille du texte d'histoire ("Institution emblematique..."), 15 -> 17px.
   L'id #wrapper passe devant les regles Elementor/heritage plus specifiques (bloc lieu a 21px, metiers 15px, partenaires 16px). */
body.cms-id-6 #wrapper :is(.pb-heritage-history-copy, .pb-heritage-place__copy, .pb-heritage-values__content, .pb-heritage-commitments__copy, .pb-heritage-job__copy) :is(.elementor-text-editor, p, li),
body.cms-id-6 #wrapper .pb-heritage-partners-copy,
body.cms-id-6 #wrapper .pb-heritage-partners-copy :is(p, li) { font-size: clamp(15px, 1.15vw, 17px); line-height: 1.6; }
/* Nos metiers : titres de colonnes agrandis (25 -> 31px, sous-titre 15 -> 20px).
   Les titres restent sur une ligne (nowrap) : 31px est le maximum ou "Le conseil-vente en ligne" tient dans sa colonne. */
body.cms-id-6 #wrapper .pb-heritage-job-title { font-size: clamp(24px, 2vw, 31px); line-height: 1.2; }
body.cms-id-6 #wrapper .pb-heritage-job-title small { font-size: clamp(17px, 1.3vw, 20px); line-height: 1.35; }
/* Gazette : chaque article est une carte, comme le listing produit (photo et texte a la meme largeur). */
.pb-season-listing .simpleblog__listing__post__wrapper { display: flex; flex-direction: column; overflow: hidden; background: #fff; border: 1px solid rgb(43 56 36 / 16%); border-radius: 6px; transition: border-color 220ms ease, box-shadow 220ms ease, transform 220ms ease; }
.pb-season-listing .simpleblog__listing__post__wrapper:hover { border-color: rgb(43 56 36 / 30%); box-shadow: 0 14px 34px rgb(43 56 36 / 10%); transform: translateY(-3px); }
.pb-season-listing .simpleblog__listing__post__wrapper > a { max-width: none; margin: 0; border-bottom: 1px solid rgb(43 56 36 / 16%); }
.pb-season-listing .simpleblog__listing__post__wrapper__content { display: flex; flex: 1; flex-direction: column; align-items: center; padding: 16px 14px 18px; background: #faf8f4; text-align: center; }
.pb-season-listing .blog-card-title { margin: 0 0 14px !important; font-size: 16px; line-height: 1.5; }
.pb-season-listing .simpleblog__listing__post__wrapper__content > .btn { margin-top: auto !important; }
@media (prefers-reduced-motion: reduce) { .pb-season-listing .simpleblog__listing__post__wrapper { transition: none; } .pb-season-listing .simpleblog__listing__post__wrapper:hover { transform: none; } }
body:is(#module-ph_simpleblog-list, #module-ph_simpleblog-category) .page-header h1 { font-size: clamp(26px, 2.4vw, 32px); text-transform: lowercase; }
/* Article : en-tete en un seul bloc beige, sur la largeur du conteneur (aligne sur le lien retour).
   Photo a gauche, sur-titre / titre / date / partage a droite ; empile sous 768px. */
.pb-article-hero { display: grid; grid-template-columns: minmax(0, 5fr) minmax(0, 7fr); align-items: center; gap: clamp(28px, 4vw, 64px); min-height: 0; max-width: none; margin: 0 clamp(20px, 4vw, 64px); padding: clamp(28px, 3.5vw, 48px); background: #e9e4db; border-radius: 6px; }
.pb-article-hero:has(.pb-article-hero__media:empty) { grid-template-columns: 1fr; }
.pb-article-hero__media { width: 100%; height: auto; min-height: 0; max-height: 440px; aspect-ratio: 1 / 1; margin: 0; background: transparent; }
.pb-article-hero__media:empty { display: none; }
.pb-article-hero__media img { object-fit: contain; }
.pb-article-hero:hover .pb-article-hero__media img { transform: none; }
.pb-article-hero__copy { max-width: none; margin: 0; padding: 0; text-align: left; }
.pb-article-kicker { margin: 0 0 14px; font-size: 27px; }
.pb-article-hero h1 { max-width: none; font-size: clamp(24px, 2.4vw, 34px); line-height: 1.25; }
.pb-article-meta { margin-top: clamp(22px, 2.6vw, 34px); padding-top: 16px; justify-content: space-between; border-top-color: rgb(43 56 36 / 20%); color: #586653; }
.pb-article-share a { color: var(--pb-ink); background: #fff; border-color: #c5cbc1; }
.pb-article-share a:is(:hover, :focus) { color: #fff; background: var(--pb-sage); border-color: var(--pb-sage); }
.pb-article-hero + .pb-article-content { padding-top: clamp(32px, 4vw, 48px); }
.pb-article-content { max-width: 840px; font-size: 16px; line-height: 1.75; padding-top: 28px; padding-bottom: 40px; }
.pb-article-content :is(h2, h3) { font-size: clamp(22px, 2vw, 27px); line-height: 1.35; margin-top: 30px; }
.pb-article-content > p:first-of-type::first-letter { float: none; font: inherit; margin: 0; padding: 0; }
.pb-gazette-networks { border-top: 1px solid #d8ded2; margin-top: 28px; padding-top: 24px; text-align: center; }
.pb-gazette-networks h2 { margin: 0 0 18px; color: var(--pb-ink); font: 400 23px/1.35 var(--pb-font-institutional); text-transform: lowercase; }
/* Pastilles aux couleurs de la charte : le parent colore chaque reseau en !important (.social-links > li.facebook > a). */
.pb-gazette-networks .social-links { display: flex; justify-content: center; gap: 12px; margin: 0; padding: 0; list-style: none; }
.pb-gazette-networks .pb-gazette-social-links > li > a { display: inline-flex; width: 44px; height: 44px; align-items: center; justify-content: center; color: var(--pb-ink) !important; background: #fff; border: 1px solid #c5cbc1; border-radius: 50%; font-size: 18px; transition: background-color 180ms ease, border-color 180ms ease, color 180ms ease; }
.pb-gazette-networks .pb-gazette-social-links > li > a:is(:hover, :focus-visible) { color: #fff !important; background: var(--pb-sage); border-color: var(--pb-sage); }
/* Advice/contact: white canvas, beige surround and unframed white panel. */
body:is(.cms-id-7, .cms-id-8, .cms-id-9, #contact, #authentication, #guest-tracking) #wrapper { background: white; color: var(--pb-ink); }
.pb-service__body { background: var(--pb-paper); }
body .pb-service__panel { border: 0; }
body .pb-service h2 { font-size: 22px; }
body .pb-service__location { align-items: start; }
body .pb-service__store-photo { height: 240px; }
body .pb-service__map { min-height: 240px; }
body .pb-service__form :is(input:not([type="hidden"]):not([type="checkbox"]), select, textarea), #authentication .form-control, #guest-tracking .form-control { font-size: 16px; }
body .pb-service__form label { font-size: 15px; }
body .pb-service__form input[type="file"]::file-selector-button { font-family: var(--pb-font-body); font-size: 14px; }
.pb-service__form .pb-service__privacy { font-size: 13px; line-height: 1.6; }
.pb-service__form .pb-service__newsletter { display: flex; gap: 10px; align-items: flex-start; font-size: 14px; }
.pb-service__newsletter input { margin-top: 4px; }
#authentication :is(a, .page-title), #guest-tracking :is(a, .page-title) { color: var(--pb-ink); }
#authentication .btn-primary, #guest-tracking .btn-primary { background: var(--pb-sage); border-color: var(--pb-sage); }
.pb-contact-header .page-title, .pb-contact-header .page-title span { font-size: clamp(28px, 3vw, 38px); }
.pb-contact-section-heading h2 { font-size: clamp(23px, 2.3vw, 29px); line-height: 1.3; }
.pb-contact-header p, .pb-contact-section-heading p { font-size: 15px; line-height: 1.6; }
/* Footer controls share a stable size; contact link remains visible on hover. */
#footer-container-main .block-iqitlinksmanager li a { font-size: 17px; line-height: 1.6; }
.pb-footer-center address, .pb-footer-center .pb-footer-contact { font-size: 16px; line-height: 1.55; }
.pb-footer-center .pb-footer-contact:is(:hover, :focus) { color: white !important; opacity: 1; text-decoration: underline; }
#footer-container-main .block-newsletter.block-footer { padding-bottom: 0; }
#footer-container-main .block-iqitlinksmanager-1 li:last-child a,
#footer-container-main .newsletter-input-group {
  display: flex; align-items: center; justify-content: center; flex-wrap: nowrap;
  gap: 10px; min-height: 54px; height: 54px; padding: 0 14px;
  border: 0; background: #f3f0ea !important; color: var(--pb-ink);
  font: 400 16px/1.3 var(--pb-font-body); white-space: nowrap;
}
#footer-container-main .block-iqitlinksmanager-1 li:last-child a::before,
#footer-container-main .newsletter-input-group::after {
  display: block; position: static; inset: auto; transform: none;
  flex: 0 0 20px; width: 20px; height: 20px; margin: 0; padding: 0; text-align: center;
  font: 18px/20px FontAwesome; color: var(--pb-ink); pointer-events: none;
}
#footer-container-main .block-iqitlinksmanager-1 li:last-child a::before { content: '\f0d1'; }
#footer-container-main .newsletter-input-group::before {
  display: block; position: static; inset: auto; transform: none; order: 1;
  font: inherit; color: var(--pb-ink); white-space: nowrap;
}
#footer-container-main .newsletter-input-group::after { content: '\f003'; z-index: 2; }
/* Keep the native newsletter field and submit button usable beneath the label. */
#footer-container-main .newsletter-input-group .input-subscription {
  position: absolute; inset: 0; width: 100%; height: 54px; margin: 0;
  color: var(--pb-ink); font-size: 16px; padding: 0 52px 0 18px; text-align: left;
}
#footer-container-main .newsletter-input-group .input-group-append {
  position: absolute; top: 0; right: 6px; height: 100%; margin: 0; z-index: 3;
}
#footer-container-main .newsletter-input-group .btn-subscribe {
  width: 40px; height: 54px; color: var(--pb-ink); opacity: 0; pointer-events: none;
}
#footer-container-main .newsletter-input-group:hover .btn-subscribe { opacity: 0; }
#footer-container-main .newsletter-input-group:is(:focus-within, :has(.input-subscription:not(:placeholder-shown)))::before,
#footer-container-main .newsletter-input-group:is(:focus-within, :has(.input-subscription:not(:placeholder-shown)))::after { opacity: 0; }
#footer-container-main .newsletter-input-group:is(:focus-within, :has(.input-subscription:not(:placeholder-shown))) .btn-subscribe { opacity: 1; pointer-events: auto; }
#footer-container-main .block-iqitlinksmanager-1 li:last-child a:focus-visible,
#footer-container-main .newsletter-input-group:focus-within { outline: 2px solid var(--pb-ink); outline-offset: 3px; }
#footer-container-main .newsletter-input-group .input-subscription:focus::placeholder { color: #596552 !important; }
.pb-reassurance .elementor-icon-box-description, .pb-reassurance .elementor-icon-box-description p { font-size: 12px !important; line-height: 1.5; }
@media (max-width: 767px) {
  #header .header-nav .right-nav { min-width: 0; width: 100%; max-width: 100%; overflow-x: auto; scrollbar-width: none; }
  #header .header-nav .right-nav::-webkit-scrollbar { display: none; }
  body#index .elementor .products-grid.row { margin-left: 0; margin-right: 0; }
  .pb-story-copy { padding-left: 22px; padding-right: 12px; }
  .pb-service__choices { gap: 14px; }
  .pb-article-hero { grid-template-columns: 1fr; gap: 22px; margin: 0 16px; padding: 20px; }
  .pb-article-hero__media { max-height: 300px; }
  .pb-article-kicker { font-size: 24px; }
  .pb-article-meta { flex-direction: row; flex-wrap: wrap; align-items: center; gap: 12px 18px; }
  .pb-article-content { font-size: 16px; }
  body#product .pb-single-product-image img { height: 260px; }
  .page-cms-6 :is(.pb-heritage-job-text, .pb-heritage-partners-copy) { text-align: left; }
}
/* Olive de l'editeur de theme (#636a43, regle en base) remplace par l'encre #2b3824.
   Memes selecteurs que modules/iqitthemeeditor/views/css/custom_s_1.css : ce fichier
   est charge apres, il l'emporte sans depasser les couleurs plus specifiques (footer...). */
a:link:not(.nav-link):not(.btn), a:visited:not(.nav-link):not(.btn) { color: var(--pb-ink); }
.btn-primary:hover, .btn-primary:focus, .btn-primary:not(:disabled):not(.disabled):active { background: var(--pb-ink); color: #fff; border-color: var(--pb-ink); }
.tooltip-inner { background: var(--pb-sage) !important; color: #fff !important; }
body .tooltip.show { opacity: 1; }
body .tooltip :is(.arrow, .tooltip-arrow)::before { border-top-color: var(--pb-sage) !important; border-bottom-color: var(--pb-sage) !important; }
body .tooltip:is(.bs-tooltip-left, .bs-tooltip-right) :is(.arrow, .tooltip-arrow)::before,
body .tooltip:is(.bs-tooltip-auto[x-placement^=left], .bs-tooltip-auto[x-placement^=right]) :is(.arrow, .tooltip-arrow)::before { border-top-color: transparent !important; border-bottom-color: transparent !important; border-left-color: var(--pb-sage) !important; border-right-color: var(--pb-sage) !important; }
.iqit-review-star { color: var(--pb-ink); }
.alert-success { background: var(--pb-ink); border-color: var(--pb-ink); color: #fff; }
::-webkit-scrollbar-thumb { background: var(--pb-ink); }
.header-top .form-search-control, .header-top .search-btn { color: var(--pb-ink); }
.header-top input.form-search-control::placeholder { color: var(--pb-ink); }
.cart-products-count-btn { background: var(--pb-ink); }
.nav-tabs .nav-link.active, .nav-tabs .nav-link:hover, .nav-tabs .nav-link:focus,
.iqit-accordion .nav-link:not(.collapsed) { border-bottom-color: var(--pb-ink); }
#checkout .card-body.cart-summary-totals { color: var(--pb-ink); }
.open-short { background: var(--pb-ink); }
/* Fiche produit : conditionnements a la hauteur du bouton panier (44px). */
body#product #main-product-wrapper .product-variants .radio-label { display: flex; height: 44px; min-height: 44px; padding: 0 14px; align-items: center; justify-content: center; }
/* Quantite : fleches centrees dans deux demi-cases de 22px. */
body#product .product-add-to-cart .bootstrap-touchspin #quantity_wanted { border-color: #c5cbc1; color: var(--pb-ink); }
body#product .product-add-to-cart .bootstrap-touchspin .input-group-btn-vertical { display: flex; flex-direction: column; width: 26px; }
body#product .product-add-to-cart .bootstrap-touchspin :is(.bootstrap-touchspin-up, .bootstrap-touchspin-down) { display: flex; width: 26px; height: 22px; padding: 0; align-items: center; justify-content: center; border: 1px solid #c5cbc1; border-left: 0; color: var(--pb-ink); line-height: 1; }
body#product .product-add-to-cart .bootstrap-touchspin .bootstrap-touchspin-down { border-top: 0; }
body#product .product-add-to-cart .bootstrap-touchspin :is(.bootstrap-touchspin-up, .bootstrap-touchspin-down) i { position: static; margin: 0; font-size: 11px; line-height: 1; }
body#product .product-add-to-cart .bootstrap-touchspin :is(.bootstrap-touchspin-up, .bootstrap-touchspin-down):hover { background: var(--pb-paper); }
/* Libelles de la fiche (Conditionnement, Conseils d'utilisation, Paiement securise) : 15px.
   "Conseils d'utilisation" est un <u> saisi dans la description : Paiement securise reprend ce souligne. */
body#product #main-product-wrapper .product-variants .form-control-label { font-size: 15px; }
body#product #ps_checkout-payment-method-logo-block-title { font-family: var(--pb-font-body); font-size: 15px; font-weight: 400; line-height: 1.65; color: var(--pb-ink); text-decoration: underline; text-underline-offset: 3px; }
body#product .product-information :is(.product-description, .product-description-short) { color: var(--pb-ink); }
body#product .product-information :is(.product-description, .product-description-short) u { text-underline-offset: 3px; }
