/* ==========================================================================
   PEAU À PEAU — surcouche du CSS Modave
   ========================================================================== */

/* Police Kumbh Sans auto-hébergée (pas d'appel à Google : RGPD + performance). */
@font-face { font-family: "Kumbh Sans"; font-style: normal; font-weight: 100 900; font-display: swap; src: url(../fonts/kumbh-sans-latin.woff2) format("woff2"); unicode-range: U+0000-00FF, U+0131, U+0152-0153, U+02BB-02BC, U+02C6, U+02DA, U+02DC, U+0304, U+0308, U+0329, U+2000-206F, U+20AC, U+2122, U+2191, U+2193, U+2212, U+2215, U+FEFF, U+FFFD; }

:root {
	/* Couleurs de la maquette (Modave). À ajuster ici seulement. */
	--primary: #9c5a3c; /* charte : terre de Sienne (ancien rouge maquette #e43131) */
	--main: #181818;
	--secondary: #4d4e4f;
	--secondary-2: #a0a0a0;
	--white: #ffffff;
	--surface: #f7f7f7;
	--critical: #f03e3e;
	--success: #3dab25;
	--yellow: #f0a750;
	--line: #e9e9e9;
	--main-rgba-1: rgba(0, 0, 0, .16);
	--main-rgba-2: rgba(0, 0, 0, .15);
	--shadow1: 0px 10px 25px 0px #2b344a1f;
	--shadow2: 0px 5px 18px 5px #40485726;
	--backdrop: rgba(24, 24, 24, .2);
	--pap-safety-bg: #f6f1ea;
	--pap-safety-line: #e4d8c7;
}

/* Animations (animate.css, sous-ensemble utilisé). */
.animated { animation-duration: 1s; animation-fill-mode: both; }
@keyframes fadeIn { from { opacity: 0; } to { opacity: 1; } }
@keyframes fadeInUp { from { opacity: 0; transform: translateY(20px); } to { opacity: 1; transform: translateY(0); } }
@keyframes fadeInDown { from { opacity: 0; transform: translateY(-20px); } to { opacity: 1; transform: translateY(0); } }
@keyframes fadeInLeft { from { opacity: 0; transform: translateX(-20px); } to { opacity: 1; transform: translateX(0); } }
@keyframes fadeInRight { from { opacity: 0; transform: translateX(20px); } to { opacity: 1; transform: translateX(0); } }
@keyframes infiniteScroll { from { transform: translateX(0); } to { transform: translateX(-100%); } }

/* Le header de la maquette se masque au défilement vers le bas. */
#header { position: sticky; top: 0; z-index: 999; background: var(--white); transition: top .35s ease, box-shadow .3s ease; }
.admin-bar #header { top: 32px; }

/* Animations WOW : invisibles jusqu'à l'entrée dans l'écran (JS). */
.js .wow { visibility: hidden; }
@media (prefers-reduced-motion: reduce) {
	.js .wow { visibility: visible !important; animation: none !important; }
	.tf-marquee .marquee-wrapper { animation: none; }
}

/* Lien d'évitement. */
.skip-link:focus { position: fixed; top: 8px; left: 8px; z-index: 10000; background: var(--main); color: var(--white); padding: 10px 16px; border-radius: 4px; }

/* Les titres de section sont des h2 (SEO) avec la taille des h3 de la maquette. */
h2.h3, .heading-section .heading.h3, .heading-section-2 .heading.h3 { font-size: 40px; line-height: 48px; font-weight: 400; }
h3.h4 { font-size: 30px; line-height: 42px; }
h3.h6, .cls-btn .text.h6 { font-size: 20px !important; line-height: 28px !important; margin: 0; }
h2.h5 { font-size: 24px; line-height: 30px; }
@media only screen and (max-width: 1024px) {
	h2.h3, .heading-section .heading.h3, .heading-section-2 .heading.h3 { font-size: 30px; line-height: 38px; }
	h3.h4 { font-size: 26px; line-height: 36px; }
	h3.h6, .cls-btn .text.h6 { font-size: 18px !important; line-height: 26px !important; }
}
@media only screen and (max-width: 767px) {
	h2.h3, .heading-section .heading.h3, .heading-section-2 .heading.h3 { font-size: 24px; line-height: 30px; }
	h3.h4 { font-size: 24px; line-height: 34px; }
	h3.h6, .cls-btn .text.h6 { font-size: 16px !important; line-height: 24px !important; }
}
.tf-slideshow h1.heading, .tf-slideshow p.heading { margin: 0; font-weight: 400; }

/* Boutons de fermeture rendus en <button> (accessibilité). */
button.icon-close { background: none; border: 0; padding: 0; }
button.tf-pin-btn { border: 0; padding: 0; }

/* Cartes produit. */
.card-product .size-item.is-unavailable { opacity: .4; text-decoration: line-through; }
.card-product .price del { color: var(--secondary-2); margin-right: 6px; font-weight: 400; }
.card-product .price ins { text-decoration: none; }
.card-product .price .woocommerce-Price-currencySymbol { margin-left: 2px; }
.pap-badge-back { background: var(--main) !important; text-transform: none !important; letter-spacing: .02em !important; padding: 0 10px !important; }
.card-product.is-out-of-stock .img-product { filter: saturate(.75); }
.pap-mega-products { display: grid; grid-template-columns: 1fr 1fr; gap: 20px; }

/* LinkedIn : pas d'icône dans la police Modave. */
.pap-in { font-weight: 700; font-size: 15px; font-family: Arial, sans-serif; }
.footer-info a, .mb-info a { color: inherit; }

/* Compteur panier de la barre mobile. */
.tf-toolbar-bottom .toolbar-icon { position: relative; }
.tf-toolbar-bottom .toolbar-count { position: absolute; top: -6px; right: -10px; min-width: 18px; height: 18px; border-radius: 9px; background: var(--primary); color: #fff; font-size: 11px; line-height: 18px; text-align: center; padding: 0 4px; }

/* ==========================================================================
   Mini-panier (WooCommerce dans la fenêtre Modave)
   ========================================================================== */
@media (min-width:768px){ .modal-shopping-cart .modal-content { flex-direction: row; } }
.modal-shopping-cart .tf-mini-cart-threshold .icon { vertical-align: -2px; margin-right: 4px; }
.pap-mini-cart { padding: 20px 24px 24px; display: flex; flex-direction: column; gap: 16px; }
.pap-mini-cart .woocommerce-mini-cart { list-style: none; margin: 0; padding: 0; display: flex; flex-direction: column; gap: 16px; }
.pap-mini-cart .woocommerce-mini-cart-item { position: relative; display: grid; grid-template-columns: 72px 1fr; column-gap: 14px; padding-right: 28px; }
.pap-mini-cart .woocommerce-mini-cart-item > a:not(.remove) { grid-column: 1 / -1; display: contents; font-weight: 500; color: var(--main); }
.pap-mini-cart .woocommerce-mini-cart-item img { grid-row: span 3; width: 72px; height: 96px; object-fit: cover; border-radius: 4px; }
.pap-mini-cart .woocommerce-mini-cart-item .remove { position: absolute; right: 0; top: 0; font-size: 20px; color: var(--secondary-2); text-decoration: none; }
.pap-mini-cart .variation { display: flex; flex-wrap: wrap; gap: 0 6px; margin: 2px 0; font-size: 13px; color: var(--secondary); }
.pap-mini-cart .variation dd, .pap-mini-cart .variation dd p { margin: 0; }
.pap-mini-cart .quantity { font-size: 14px; color: var(--secondary); }
.pap-mini-cart .woocommerce-mini-cart__total { display: flex; justify-content: space-between; border-top: 1px solid var(--line); padding-top: 16px; margin: 0; font-size: 18px; font-weight: 500; }
.pap-mini-cart .woocommerce-mini-cart__buttons { display: grid; gap: 10px; margin: 0; }
.pap-mini-cart .woocommerce-mini-cart__buttons .button { display: flex; align-items: center; justify-content: center; height: 48px; border-radius: 4px; border: 1px solid var(--main); background: var(--white); color: var(--main); font-weight: 600; text-decoration: none; }
.pap-mini-cart .woocommerce-mini-cart__buttons .button.checkout { background: var(--main); color: var(--white); }
.pap-mini-cart .woocommerce-mini-cart__empty-message { margin: 0; color: var(--secondary); }

/* ==========================================================================
   Pages WooCommerce et contenus
   ========================================================================== */
.pap-page-title { padding: 48px 0 24px; text-align: center; }
.pap-page-title h1 { font-size: 44px; line-height: 52px; font-weight: 400; margin-bottom: 8px; }
.pap-page-title .rank-math-breadcrumb, .pap-page-title .woocommerce-breadcrumb { font-size: 14px; color: var(--secondary); }
.pap-page-title .rank-math-breadcrumb a, .pap-page-title .woocommerce-breadcrumb a { color: var(--secondary); }
@media (max-width: 767px) { .pap-page-title h1 { font-size: 30px; line-height: 38px; } }

.pap-content { padding-bottom: 80px; }
.pap-content.entry { max-width: 820px; margin: 0 auto; font-size: 16px; line-height: 1.7; }
.pap-content.entry h2 { font-size: 30px; line-height: 38px; margin: 40px 0 16px; }
.pap-content.entry h3 { font-size: 22px; line-height: 30px; margin: 32px 0 12px; }
.pap-content.entry img { height: auto; border-radius: 8px; }
.pap-content.entry a { text-decoration: underline; }

/* Grille boutique : cartes Modave dans la boucle WooCommerce. */
.woocommerce ul.products.pap-grid { display: grid; grid-template-columns: repeat(4, 1fr); gap: 40px 30px; margin: 0; }
.woocommerce ul.products.pap-grid::before, .woocommerce ul.products.pap-grid::after { display: none; }
.woocommerce ul.products.pap-grid li.product { width: auto !important; margin: 0 !important; float: none !important; padding: 0; }
@media (max-width: 1199px) { .woocommerce ul.products.pap-grid { grid-template-columns: repeat(3, 1fr); } }
@media (max-width: 767px) { .woocommerce ul.products.pap-grid { grid-template-columns: repeat(2, 1fr); gap: 28px 15px; } }
.pap-shop-toolbar { display: flex; justify-content: space-between; align-items: center; gap: 16px; flex-wrap: wrap; margin-bottom: 32px; }
.pap-shop-toolbar .woocommerce-result-count, .pap-shop-toolbar .woocommerce-ordering { margin: 0; float: none; }
.pap-shop-toolbar select { border: 1px solid var(--line); border-radius: 4px; padding: 8px 12px; }
.pap-filters { display: flex; gap: 10px; flex-wrap: wrap; }
.pap-filters a { border: 1px solid var(--line); border-radius: 999px; padding: 6px 16px; font-size: 14px; color: var(--main); }
.pap-filters a.is-active, .pap-filters a:hover { background: var(--main); color: var(--white); border-color: var(--main); }
.woocommerce nav.woocommerce-pagination ul { border: 0; display: flex; justify-content: center; gap: 8px; }
.woocommerce nav.woocommerce-pagination ul li { border: 0; }
.woocommerce nav.woocommerce-pagination ul li a, .woocommerce nav.woocommerce-pagination ul li span { border: 1px solid var(--line); border-radius: 50%; width: 40px; height: 40px; display: flex; align-items: center; justify-content: center; }

/* Fiche produit. */
/* Fiche produit : styles dans modave-shop.min.css et shop.css. */

.pap-specs { border: 1px solid var(--line); border-radius: 8px; padding: 16px 20px; margin: 0 0 20px; }
.pap-specs__title { font-weight: 600; margin-bottom: 8px; }
.pap-specs dl { margin: 0; display: grid; gap: 6px; }
.pap-specs dl > div { display: flex; justify-content: space-between; gap: 16px; font-size: 14px; }
.pap-specs dt { font-weight: 400; color: var(--secondary); }
.pap-specs dd { margin: 0; text-align: right; }
.pap-safety { background: var(--pap-safety-bg); border: 1px solid var(--pap-safety-line); border-radius: 8px; padding: 14px 18px; font-size: 14px; margin: 20px 0; }
.pap-safety p { margin: 0; }
.pap-safety__links { display: flex; gap: 20px; margin-top: 8px !important; }
.pap-safety__links a { text-decoration: underline; }
.pap-reassurance { list-style: none; padding: 0; margin: 20px 0 0; display: grid; gap: 8px; font-size: 14px; color: var(--secondary); }
.pap-reassurance .icon { margin-right: 8px; font-size: 18px; vertical-align: -3px; color: var(--main); }

/* Alertes de retour en stock (module natif WooCommerce). */
.wc_bis_form { margin-top: 20px; padding: 16px 20px; border: 1px solid var(--line); border-radius: 8px; }
.wc_bis_form input[type="email"] { width: 100%; border: 1px solid var(--line); border-radius: 4px; padding: 10px 12px; margin: 8px 0; }
.wc_bis_form .button { background: var(--main) !important; color: var(--white) !important; border-radius: 99px !important; padding: 10px 24px !important; }

/* Panier / commande / compte. */
.woocommerce-cart .pap-content, .woocommerce-checkout .pap-content, .woocommerce-account .pap-content { max-width: 1200px; margin: 0 auto; }
.woocommerce table.shop_table { border-radius: 8px; border-color: var(--line); }
.woocommerce form .form-row input.input-text, .woocommerce form .form-row textarea, .woocommerce form .form-row select { border: 1px solid var(--line); border-radius: 4px; padding: 10px 12px; }
.woocommerce .button { border-radius: 99px !important; }
.woocommerce-message, .woocommerce-info, .woocommerce-error { border-top-color: var(--main); }
.woocommerce-message::before, .woocommerce-info::before { color: var(--main); }

/* 404 */
.pap-404 { padding: 80px 0 120px; text-align: center; }
.pap-404 .tf-btn { margin-top: 24px; }

/* ==========================================================================
   Contenus migrés (pages, articles)
   ========================================================================== */
.pap-content.entry p { margin-bottom: 1em; }
.pap-content.entry ul, .pap-content.entry ol { margin: 0 0 1.2em 1.4em; }
.pap-content.entry ul { list-style: disc; }
.pap-content.entry ol { list-style: decimal; }
.pap-content.entry li { margin-bottom: .4em; }
.pap-content.entry img { display: block; max-width: 100%; margin: 24px auto; }
.pap-content.entry img[width="70"], .pap-content.entry img[width="41"], .pap-content.entry img[width="31"] { margin: 8px 0; }
.pap-content.entry table { width: 100%; border-collapse: collapse; margin: 24px 0; font-size: 15px; }
.pap-content.entry th, .pap-content.entry td { border: 1px solid var(--line); padding: 10px 12px; text-align: left; }
.pap-content.entry th { background: var(--surface); }
.pap-content.entry blockquote { border-left: 3px solid var(--pap-safety-line, #e4d8c7); padding: 8px 0 8px 20px; color: var(--secondary); font-style: italic; }
.pap-content.entry a[data-pap-btn] { display: inline-flex; align-items: center; gap: 8px; padding: 14px 28px; border-radius: 999px; background: var(--main); color: var(--white); text-decoration: none; font-weight: 600; transition: background .2s; }
.pap-content.entry a[data-pap-btn]:hover { background: var(--primary); }
.pap-content.entry details { border-bottom: 1px solid var(--line); padding: 16px 0; }
.pap-content.entry summary { cursor: pointer; font-weight: 600; font-size: 18px; list-style: none; display: flex; justify-content: space-between; gap: 16px; }
.pap-content.entry summary::after { content: '+'; font-size: 22px; line-height: 1; }
.pap-content.entry details[open] summary::after { content: '−'; }
.pap-content.entry details > div { padding-top: 12px; }
.pap-calc, .pap-form { background: var(--pap-safety-bg, #f6f1ea); border: 1px solid var(--pap-safety-line, #e4d8c7); border-radius: 16px; padding: 28px; margin: 32px 0; }
.pap-calc-title { font-size: 22px; font-weight: 600; margin-bottom: 6px !important; }
.pap-calc-help { color: var(--secondary); font-size: 15px; }
.pap-calc-fields { display: grid; grid-template-columns: 1fr 1fr auto; gap: 14px; align-items: end; }
.pap-calc label, .pap-form label { display: flex; flex-direction: column; gap: 6px; font-size: 14px; font-weight: 600; margin-bottom: 14px; }
.pap-calc-fields label { margin-bottom: 0; }
.pap-calc select, .pap-calc input, .pap-form input, .pap-form select, .pap-form textarea { width: 100%; border: 1px solid var(--line); border-radius: 8px; padding: 12px 14px; background: var(--white); font: inherit; font-weight: 400; }
.pap-calc-result { margin: 16px 0 0 !important; font-size: 18px; min-height: 1.5em; }
.pap-form-row { display: grid; grid-template-columns: 1fr 1fr; gap: 14px; }
.pap-form-legal { font-size: 13px; color: var(--secondary); }
.pap-form-msg { padding: 14px 18px; border-radius: 10px; margin: 24px 0; }
.pap-form-msg.is-ok { background: #e9f6e6; color: #1f6b12; }
.pap-form-msg.is-error { background: #fdecec; color: #a12020; }
.pap-hp { position: absolute !important; left: -9999px !important; width: 1px; height: 1px; opacity: 0; }
@media (max-width: 767px) { .pap-calc-fields, .pap-form-row { grid-template-columns: 1fr; } }
/* Logo */
.pap-logo-img { display: block; height: auto; max-width: 100%; }
.logo-header .pap-logo-img { width: 180px; }
.footer-logo .pap-logo-img { width: 200px; }
.pap-mb-logo { display: block; margin: 0 0 24px; }
.pap-mb-logo .pap-logo-img { width: 150px; }
@media (max-width: 991px) { .logo-header .pap-logo-img { width: 140px; } }
@media (max-width: 575px) { .logo-header .pap-logo-img { width: 120px; } }

/* ==========================================================================
   Titres : Cormorant Garamond (hero, H1, grands titres de section)
   ========================================================================== */
:root { --pap-serif: 'Cormorant Garamond', 'Cormorant', Garamond, 'Times New Roman', serif; --pap-sienne: #9c5a3c; }
.title-display,
.pap-page-title h1,
.heading-section .heading,
h2.heading,
.pap-content.entry h2,
.pap-tab-title,
.pap-pname-variant {
	font-family: var(--pap-serif);
	font-weight: 400;
	letter-spacing: -0.005em;
	text-wrap: balance;
	font-feature-settings: 'liga', 'kern';
}
.title-display em, .pap-page-title h1 em, .heading-section .heading em { font-style: italic; font-weight: 300; }

/* Hero */
.tf-slideshow .title-display { font-size: clamp(46px, 6.4vw, 92px); line-height: 0.98; }

/* H1 des pages, articles, boutique */
.pap-page-title { padding: 56px 0 28px; }
.pap-page-title h1 { font-size: clamp(38px, 4.6vw, 60px); line-height: 1.04; font-weight: 400; margin-bottom: 14px; }
.pap-page-title h1::after { content: ''; display: block; width: 44px; height: 1px; background: var(--pap-safety-line, #e4d8c7); margin: 22px auto 0; }
@media (max-width: 767px) { .pap-page-title h1 { font-size: 36px; line-height: 1.08; } }

/* Titres de section (accueil, « Vous aimerez aussi »…) */
.heading-section .heading, h2.heading { font-size: clamp(32px, 3.6vw, 46px); line-height: 1.08; }

/* Intertitres des contenus éditoriaux */
.pap-content.entry h2 { font-size: clamp(28px, 3vw, 36px); line-height: 1.15; font-weight: 500; text-transform: none; }

/* ==========================================================================
   Fiche produit : version plus élégante
   ========================================================================== */
.pap-product .tf-product-info-heading { padding-bottom: 28px; border-bottom: 1px solid var(--pap-safety-line, #e4d8c7); }
.pap-product .tf-product-info-name .text-btn-uppercase { color: var(--pap-sienne); letter-spacing: .16em; font-size: 12px; }
.pap-pname { margin: 6px 0 0; display: flex; flex-direction: column; gap: 4px; }
.pap-pname-base { font-size: 13px; font-weight: 600; letter-spacing: .18em; text-transform: uppercase; color: var(--secondary, #4d4e4f); }
.pap-pname-variant { font-size: clamp(44px, 4.8vw, 64px); line-height: 1; color: var(--main, #181818); font-style: italic; font-weight: 400; }
.pap-product .tf-product-info-price { margin-top: 18px; align-items: baseline; }
.pap-pprice, .pap-pprice .amount { font-family: var(--pap-serif); font-size: 34px; line-height: 1; font-weight: 500; color: var(--main, #181818); }
.pap-pprice del, .pap-pprice del .amount { font-size: 22px; color: var(--secondary-2, #a0a0a0); font-weight: 400; }
.pap-pprice ins { text-decoration: none; }
.pap-product .tf-product-info-desc > p { font-size: 16px; line-height: 1.7; color: var(--secondary, #4d4e4f); max-width: 52ch; margin-top: 16px; }
.pap-product .tf-product-info-liveview { background: transparent; border: 0; padding: 0; margin-top: 10px; }

/* Choix coloris et taille */
.pap-product .variant-picker-label { font-size: 12px; letter-spacing: .14em; text-transform: uppercase; font-weight: 600; color: var(--secondary, #4d4e4f); }
.pap-product .variant-picker-label-value { font-family: var(--pap-serif); font-size: 20px; letter-spacing: 0; text-transform: none; font-style: italic; font-weight: 500; color: var(--main, #181818); margin-left: 4px; }
.pap-product .color-btn { padding: 3px; border: 1px solid transparent; transition: border-color .2s; }
.pap-product .color-btn.active, .pap-product .color-btn:hover { border-color: var(--main, #181818); }
.pap-product .tf-product-info-choose-option { gap: 26px; padding-top: 28px; }

/* Réassurance : carte sable */
.pap-product .tf-product-info-help { background: var(--pap-safety-bg, #f6f1ea); border: 1px solid var(--pap-safety-line, #e4d8c7); border-radius: 16px; padding: 22px 24px; gap: 14px; }
.pap-product .tf-product-info-help .tf-product-info-extra-link { padding-bottom: 14px; border-bottom: 1px solid var(--pap-safety-line, #e4d8c7); }
.pap-product .tf-product-info-sku { border-top: 0; }

/* Onglets */
.pap-product .widget-tabs.style-1 .widget-menu-tab .item-title .inner { font-size: 13px; letter-spacing: .14em; text-transform: uppercase; font-weight: 600; }
.pap-tab-title { font-size: clamp(28px, 2.8vw, 36px); line-height: 1.1; margin: 0 0 16px; color: var(--main, #181818); }
.pap-product .pap-desc { font-size: 16px; line-height: 1.75; max-width: 62ch; }

/* Barre d'ajout au panier collante */
.tf-sticky-btn-atc .tf-sticky-atc-product .content .text-title:first-child { font-family: var(--pap-serif); font-size: 20px; font-style: italic; }

@media (max-width: 767px) {
	.pap-pname-variant { font-size: 44px; }
	.pap-pprice, .pap-pprice .amount { font-size: 30px; }
	.pap-product .tf-product-info-help { padding: 18px; }
}
.pap-product .widget-content-tab .pap-tab-title, .pap-product .tab-description .pap-tab-title { font-family: var(--pap-serif); font-size: clamp(28px, 2.8vw, 36px); line-height: 1.1; letter-spacing: -0.005em; font-weight: 400; text-transform: none; margin: 0 0 16px; color: var(--main, #181818); }

/* Cartes produit : base en petites capitales + coloris en italique Cormorant */
.card-product-info .pap-card-title { display: flex; flex-direction: column; gap: 2px; text-decoration: none; }
.pap-card-base { font-size: 11px; font-weight: 600; letter-spacing: .16em; text-transform: uppercase; color: var(--secondary, #4d4e4f); }
.pap-card-variant { font-family: var(--pap-serif); font-style: italic; font-weight: 400; font-size: 26px; line-height: 1.1; color: var(--main, #181818); }
.card-product-info .pap-card-title:hover .pap-card-variant { color: var(--pap-sienne, #9c5a3c); }
.card-product-info { gap: 8px; }
@media (max-width: 575px) { .pap-card-variant { font-size: 22px; } .pap-card-base { font-size: 10px; letter-spacing: .12em; } }

.card-product .card-product-info .pap-card-title { display: block; -webkit-line-clamp: unset; overflow: visible; white-space: normal; height: auto; }
.card-product .pap-card-base, .card-product .pap-card-variant { display: block; }
.card-product .pap-card-base { margin-bottom: 2px; }

/* ==========================================================================
   Blog « Blog Default » (maquette Modave)
   ========================================================================== */
.pap-ptitle { position: relative; overflow: hidden; background: var(--pap-safety-bg, #f6f1ea); margin-bottom: 64px; }
.pap-ptitle-inner { position: relative; z-index: 1; min-height: 260px; display: flex; flex-direction: column; align-items: center; justify-content: center; gap: 12px; text-align: center; padding: 48px 0; }
.pap-ptitle-heading { margin: 0; font-family: var(--pap-serif); font-weight: 400; font-size: clamp(36px, 4vw, 52px); line-height: 1.08; color: var(--main, #181818); text-wrap: balance; max-width: 760px; }
.pap-ptitle-crumbs { font-size: 13px; color: var(--secondary-2, #a0a0a0); }
.pap-ptitle-crumbs a { color: var(--main, #181818); text-decoration: none; }
.pap-ptitle-crumbs a:hover { color: var(--pap-sienne, #9c5a3c); }
.pap-ptitle-crumbs .separator { margin: 0 8px; font-size: 0; }
.pap-ptitle-crumbs .separator::before { content: '›'; font-size: 14px; color: var(--secondary-2, #a0a0a0); }
.pap-ptitle-crumbs .last { color: var(--secondary-2, #a0a0a0); }
.pap-ptitle-media { position: absolute; top: 0; right: 0; bottom: 0; width: 34%; pointer-events: none; }
.pap-ptitle-media img { width: 100%; height: 100%; object-fit: cover; object-position: center; display: block; }
.pap-ptitle-media::before { content: ''; position: absolute; inset: 0; background: linear-gradient(90deg, var(--pap-safety-bg, #f6f1ea) 0%, rgba(246,241,234,0) 45%); z-index: 1; }
@media (max-width: 991px) { .pap-ptitle-media { width: 40%; opacity: .35; } .pap-ptitle { margin-bottom: 40px; } .pap-ptitle-inner { min-height: 200px; } }

.pap-blog-layout { display: grid; grid-template-columns: minmax(0, 1fr) 300px; gap: 72px; align-items: start; padding-bottom: 80px; }
@media (max-width: 1199px) { .pap-blog-layout { gap: 48px; } }
@media (max-width: 991px) { .pap-blog-layout { grid-template-columns: minmax(0, 1fr); } }
.pap-blog-main { min-width: 0; }

.pap-blist { display: flex; flex-direction: column; }
.pap-bitem { padding-bottom: 28px; margin-bottom: 28px; border-bottom: 1px solid var(--line, #e9e9e9); }
.pap-bitem:last-child { border-bottom: 0; margin-bottom: 0; }
.pap-bitem-img { display: block; border-radius: 8px; overflow: hidden; aspect-ratio: 4 / 3; background: var(--pap-safety-bg, #f6f1ea); margin-bottom: 22px; }
.pap-bitem-img img { width: 100%; height: 100%; object-fit: cover; display: block; transition: transform .6s ease; }
.pap-bitem:hover .pap-bitem-img img { transform: scale(1.03); }
.pap-meta { display: flex; flex-wrap: wrap; justify-content: space-between; gap: 10px 20px; align-items: center; font-size: 13px; color: var(--main, #181818); margin-bottom: 12px; }
.pap-meta-left { display: flex; flex-wrap: wrap; gap: 10px 24px; }
.pap-meta-item { display: inline-flex; align-items: center; gap: 7px; }
.pap-bicon { flex: 0 0 auto; }
.pap-bitem-title { margin: 0 0 10px; font-family: var(--pap-serif); font-weight: 500; font-size: clamp(26px, 2.4vw, 32px); line-height: 1.15; text-wrap: balance; }
.pap-bitem-title a { color: var(--main, #181818); text-decoration: none; }
.pap-bitem-title a:hover { color: var(--pap-sienne, #9c5a3c); }
.pap-bitem-excerpt { margin: 0; color: var(--secondary, #4d4e4f); line-height: 1.65; }

.pap-bside { display: flex; flex-direction: column; gap: 36px; }
.pap-bside-search { position: relative; }
.pap-bside-search input { width: 100%; height: 44px; border: 1px solid var(--line, #e9e9e9); border-radius: 6px; padding: 0 44px 0 14px; font-size: 14px; background: var(--white, #fff); }
.pap-bside-search input:focus { outline: none; border-color: var(--main, #181818); }
.pap-bside-search button { position: absolute; right: 4px; top: 4px; width: 36px; height: 36px; border: 0; background: transparent; display: flex; align-items: center; justify-content: center; color: var(--main, #181818); cursor: pointer; }
.pap-bside-title { margin: 0 0 18px; font-family: var(--pap-serif); font-size: 26px; font-weight: 500; line-height: 1.1; color: var(--main, #181818); }
.pap-recent-first { display: flex; flex-direction: column; gap: 10px; text-decoration: none; padding-bottom: 18px; border-bottom: 1px solid var(--line, #e9e9e9); }
.pap-recent-first-img { display: block; aspect-ratio: 4 / 3; border-radius: 8px; overflow: hidden; margin-bottom: 6px; }
.pap-recent-first-img img { width: 100%; height: 100%; object-fit: cover; display: block; }
.pap-recent-meta { display: flex; flex-wrap: wrap; gap: 6px 16px; font-size: 12px; color: var(--main, #181818); }
.pap-recent-title { display: -webkit-box; -webkit-line-clamp: 2; -webkit-box-orient: vertical; overflow: hidden; font-size: 15px; font-weight: 500; line-height: 1.4; color: var(--main, #181818); }
.pap-recent-first .pap-recent-title { font-size: 16px; }
.pap-recent-first:hover .pap-recent-title, .pap-recent-list a:hover .pap-recent-title { color: var(--pap-sienne, #9c5a3c); }
.pap-recent-list { list-style: none; margin: 0; padding: 0; }
.pap-recent-list li { padding: 18px 0; border-bottom: 1px solid var(--line, #e9e9e9); }
.pap-recent-list a { display: grid; grid-template-columns: 64px minmax(0, 1fr); gap: 12px; align-items: start; text-decoration: none; }
.pap-recent-thumb img { width: 64px; height: 48px; object-fit: cover; border-radius: 4px; display: block; }
.pap-recent-body { display: flex; flex-direction: column; gap: 4px; min-width: 0; }
.pap-recent-body .pap-meta-item { font-size: 12px; color: var(--main, #181818); }
.pap-recent-body .pap-bicon { width: 13px; height: 13px; }
.pap-bside-cats { list-style: none; margin: 0; padding: 0; display: flex; flex-direction: column; gap: 10px; }
.pap-bside-cats a { font-size: 14px; font-weight: 500; color: var(--main, #181818); text-decoration: none; }
.pap-bside-cats a:hover, .pap-bside-cats a[aria-current] { color: var(--pap-sienne, #9c5a3c); }
.pap-bside-tags { list-style: none; margin: 0; padding: 0; display: flex; flex-wrap: wrap; gap: 8px; }
.pap-bside-tags a { display: inline-block; padding: 5px 12px; border: 1px solid var(--line, #e9e9e9); border-radius: 4px; font-size: 12px; color: var(--main, #181818); text-decoration: none; transition: border-color .2s, color .2s; }
.pap-bside-tags a:hover { border-color: var(--main, #181818); }

.pap-pagination { margin-top: 36px; }
.pap-pagination .nav-links { display: flex; flex-wrap: wrap; gap: 8px; }
.pap-pagination .page-numbers { min-width: 32px; height: 32px; padding: 0 8px; display: inline-flex; align-items: center; justify-content: center; border: 1px solid var(--line, #e9e9e9); border-radius: 4px; color: var(--main, #181818); text-decoration: none; font-size: 13px; font-weight: 500; }
.pap-pagination .page-numbers.current, .pap-pagination .page-numbers:hover { background: var(--main, #181818); border-color: var(--main, #181818); color: #fff; }
.pap-blog-empty { padding: 20px 0; color: var(--secondary, #4d4e4f); }
.screen-reader-text { position: absolute !important; width: 1px; height: 1px; overflow: hidden; clip: rect(1px,1px,1px,1px); white-space: nowrap; }

/* Article */
.pap-single .pap-content.entry { max-width: none; margin: 0; padding-bottom: 0; }
.pap-single .pap-meta { padding-bottom: 20px; border-bottom: 1px solid var(--line, #e9e9e9); margin-bottom: 28px; }
.pap-article { font-size: 17px; line-height: 1.8; }
.pap-article-end { margin-top: 56px; display: flex; flex-direction: column; gap: 32px; }
.pap-article-cta { background: var(--pap-safety-bg, #f6f1ea); border-radius: 12px; padding: 32px; }
.pap-article-cta-title { font-family: var(--pap-serif); font-size: 30px; line-height: 1.15; color: var(--main, #181818); margin: 0 0 10px; }
.pap-article-cta p { color: var(--secondary, #4d4e4f); }
.pap-article-nav { display: grid; grid-template-columns: 1fr 1fr; gap: 20px; border-top: 1px solid var(--line, #e9e9e9); padding-top: 28px; }
.pap-article-nav a { display: flex; flex-direction: column; gap: 6px; text-decoration: none; font-family: var(--pap-serif); font-size: 20px; line-height: 1.25; color: var(--main, #181818); }
.pap-article-nav a span { font-family: 'Kumbh Sans', sans-serif; font-size: 11px; letter-spacing: .14em; text-transform: uppercase; font-weight: 600; color: var(--secondary-2, #a0a0a0); }
.pap-article-nav .next { text-align: right; align-items: flex-end; }
@media (max-width: 575px) { .pap-article-nav { grid-template-columns: 1fr; } .pap-article-nav .next { text-align: left; align-items: flex-start; } }
.pap-related { border-top: 1px solid var(--line, #e9e9e9); padding: 64px 0 80px; }
.pap-related .heading { text-align: center; margin: 0 0 40px; }
.pap-related-grid { display: grid; grid-template-columns: repeat(3, minmax(0, 1fr)); gap: 32px; }
.pap-related .pap-bitem { border-bottom: 0; padding-bottom: 0; margin-bottom: 0; }
.pap-related .pap-bitem-title { font-size: 22px; }
@media (max-width: 991px) { .pap-related-grid { grid-template-columns: repeat(2, minmax(0, 1fr)); } }
@media (max-width: 575px) { .pap-related-grid { grid-template-columns: minmax(0, 1fr); } }
@media (prefers-reduced-motion: reduce) { .pap-bitem-img img { transition: none; } }
/* Fiche produit : date de livraison estimée */
.pap-eta { display: flex; align-items: center; gap: 16px; margin-top: 24px; padding: 16px 20px; border-radius: 14px; background: #fbf3ee; border: 1px solid #ecd2c4; color: var(--main, #181818); position: relative; overflow: hidden; }
.pap-eta::before { content: ''; position: absolute; left: 0; top: 0; bottom: 0; width: 4px; background: var(--pap-sienne, #9c5a3c); }
.pap-eta-icon { flex: 0 0 48px; width: 48px; height: 48px; border-radius: 50%; background: var(--pap-sienne, #9c5a3c); color: #fff; display: flex; align-items: center; justify-content: center; animation: papEtaPulse 2.4s ease-in-out infinite; }
.pap-eta-text { min-width: 0; }
.pap-eta-text p { margin: 0; }
.pap-eta-label { font-size: 11px; font-weight: 600; letter-spacing: .16em; text-transform: uppercase; color: var(--pap-sienne, #9c5a3c); }
.pap-eta-date { font-family: var(--pap-serif); font-size: 28px; line-height: 1.15; font-weight: 500; color: var(--main, #181818); margin: 2px 0 !important; }
.pap-eta-note { font-size: 13px; color: var(--secondary, #4d4e4f); }
@keyframes papEtaPulse { 0%, 100% { box-shadow: 0 0 0 0 rgba(156, 90, 60, .35); } 50% { box-shadow: 0 0 0 9px rgba(156, 90, 60, 0); } }
@media (prefers-reduced-motion: reduce) { .pap-eta-icon { animation: none; } }
@media (max-width: 575px) { .pap-eta-date { font-size: 24px; } .pap-eta { padding: 14px 16px; } }
.pap-eta-note strong { color: var(--pap-sienne, #9c5a3c); font-weight: 700; }

/* Pastilles coloris de la fiche : espacement resserré */
.pap-product .variant-picker-values { gap: 6px !important; column-gap: 6px !important; row-gap: 8px !important; }
.pap-product .variant-picker-values .color-btn { margin: 0 !important; }

/* ==========================================================================
   Guide des tailles (fenêtre) : version ergonomique
   ========================================================================== */
.pap-sg .modal-dialog { max-width: 560px; }
.pap-sg .modal-content { padding: 0; border-radius: 20px; overflow: hidden; border: 0; max-height: calc(100dvh - 32px); display: flex; flex-direction: column; }
.pap-sg-head { display: flex; justify-content: space-between; align-items: flex-start; gap: 16px; padding: 24px 24px 14px; }
.pap-sg-eyebrow { margin: 0 0 4px; font-size: 11px; font-weight: 600; letter-spacing: .16em; text-transform: uppercase; color: var(--pap-sienne, #9c5a3c); }
.pap-sg-title { margin: 0; font-family: var(--pap-serif); font-weight: 400; font-size: 34px; line-height: 1.05; color: var(--main, #181818); }
.pap-sg-close { flex: 0 0 40px; width: 40px; height: 40px; border-radius: 50%; border: 1px solid var(--line, #e9e9e9); background: var(--white, #fff); display: flex; align-items: center; justify-content: center; color: var(--main, #181818); cursor: pointer; }
.pap-sg-close:hover { border-color: var(--main, #181818); }
.pap-sg .pap-sg-tabs { display: grid; grid-template-columns: 1fr 1fr; gap: 4px; margin: 0 24px 4px; padding: 4px; list-style: none; background: var(--surface, #f3f3f3); border-radius: 999px; border: 0; }
.pap-sg .pap-sg-tabs .item-title { margin: 0; padding: 0; border: 0; text-align: center; cursor: pointer; border-radius: 999px; }
.pap-sg .pap-sg-tabs .item-title::after, .pap-sg .pap-sg-tabs .item-title::before { display: none !important; }
.pap-sg .pap-sg-tabs .item-title .inner { display: block; padding: 10px 12px; font-size: 14px; font-weight: 600; color: var(--secondary, #4d4e4f); border-radius: 999px; transition: background .2s, color .2s; }
.pap-sg .pap-sg-tabs .item-title.active .inner { background: var(--white, #fff); color: var(--main, #181818); box-shadow: 0 1px 4px rgba(0,0,0,.08); }
.pap-sg-body { padding: 18px 24px 26px; overflow-y: auto; }
.pap-sg .widget-content-tab { margin: 0; padding: 0; border: 0; }
.pap-sg-calc { display: flex; flex-direction: column; gap: 22px; }
.pap-sg-step { display: flex; flex-direction: column; gap: 12px; }
.pap-sg-label { margin: 0; display: flex; align-items: center; gap: 10px; font-size: 15px; font-weight: 600; color: var(--main, #181818); }
.pap-sg-label > span { flex: 0 0 24px; width: 24px; height: 24px; border-radius: 50%; background: var(--main, #181818); color: #fff; font-size: 12px; display: flex; align-items: center; justify-content: center; }
.pap-sg-label label { margin: 0; font-weight: 600; }
.pap-sg-options { display: grid; grid-template-columns: repeat(3, minmax(0, 1fr)); gap: 8px; }
.pap-sg-option { padding: 12px 8px; min-height: 56px; border: 1px solid var(--line, #e9e9e9); background: var(--white, #fff); border-radius: 12px; font: inherit; font-size: 14px; line-height: 1.25; color: var(--main, #181818); cursor: pointer; transition: border-color .2s, background .2s; }
.pap-sg-option:hover { border-color: var(--main, #181818); }
.pap-sg-option.select-option { border-color: var(--main, #181818); background: var(--main, #181818); color: #fff; }
.pap-sg-value { display: flex; align-items: center; justify-content: center; gap: 22px; }
.pap-sg-stepper { width: 44px; height: 44px; border-radius: 50%; border: 1px solid var(--line, #e9e9e9); background: var(--white, #fff); font-size: 22px; line-height: 1; color: var(--main, #181818); cursor: pointer; }
.pap-sg-stepper:hover { border-color: var(--main, #181818); }
.pap-sg-number { display: inline-flex; align-items: baseline; gap: 6px; min-width: 120px; justify-content: center; }
.pap-sg-number span { font-family: var(--pap-serif); font-size: 52px; line-height: 1; font-weight: 500; color: var(--main, #181818); font-variant-numeric: tabular-nums; }
.pap-sg-number small { font-size: 16px; color: var(--secondary, #4d4e4f); }
.pap-sg .pap-sg-range { position: relative; height: 28px; display: flex; align-items: center; }
.pap-sg .pap-sg-range .tow-bar-block { position: absolute; left: 0; right: 0; top: 50%; height: 4px; transform: translateY(-50%); border-radius: 4px; background: var(--line, #e9e9e9); }
.pap-sg .pap-sg-range .progress-size { height: 100%; border-radius: 4px; background: var(--pap-sienne, #9c5a3c); }
.pap-sg .pap-sg-range input[type=range] { position: relative; width: 100%; margin: 0; background: transparent; -webkit-appearance: none; appearance: none; height: 28px; }
.pap-sg .pap-sg-range input[type=range]::-webkit-slider-thumb { -webkit-appearance: none; width: 26px; height: 26px; border-radius: 50%; background: #fff; border: 2px solid var(--main, #181818); box-shadow: 0 2px 6px rgba(0,0,0,.15); cursor: pointer; }
.pap-sg .pap-sg-range input[type=range]::-moz-range-thumb { width: 22px; height: 22px; border-radius: 50%; background: #fff; border: 2px solid var(--main, #181818); cursor: pointer; }
.pap-sg .pap-sg-range input[type=range]::-webkit-slider-runnable-track { background: transparent; }
.pap-sg .pap-sg-range input[type=range]::-moz-range-track { background: transparent; }
.pap-sg-scale { display: flex; justify-content: space-between; font-size: 12px; color: var(--secondary-2, #a0a0a0); margin-top: -4px; }
.pap-sg-result { background: var(--pap-safety-bg, #f6f1ea); border: 1px solid var(--pap-safety-line, #e4d8c7); border-radius: 16px; padding: 18px 20px; text-align: center; display: flex; flex-direction: column; align-items: center; gap: 10px; }
.pap-sg-result-label { margin: 0; font-size: 11px; font-weight: 600; letter-spacing: .16em; text-transform: uppercase; color: var(--pap-sienne, #9c5a3c); }
.pap-sg .pap-sg-advice { border: 0; background: var(--main, #181818); color: #fff; border-radius: 999px; padding: 12px 30px; font-family: var(--pap-serif); font-size: 26px; font-weight: 500; line-height: 1.1; cursor: pointer; }
.pap-sg .pap-sg-advice:hover { background: var(--pap-sienne, #9c5a3c); }
.pap-sg .pap-sg-advice.is-wide { background: transparent; color: var(--main, #181818); font-family: inherit; font-size: 14px; font-weight: 400; padding: 0; cursor: default; }
.pap-sg-result-help { margin: 0; font-size: 12px; color: var(--secondary, #4d4e4f); }
.pap-sg-tips { border-top: 1px solid var(--line, #e9e9e9); padding-top: 14px; }
.pap-sg-tips summary { cursor: pointer; font-size: 14px; font-weight: 600; color: var(--main, #181818); list-style: none; display: flex; justify-content: space-between; }
.pap-sg-tips summary::after { content: '+'; font-size: 18px; line-height: 1; }
.pap-sg-tips[open] summary::after { content: '−'; }
.pap-sg-tips p { margin: 10px 0 0; font-size: 13px; line-height: 1.6; color: var(--secondary, #4d4e4f); }
.pap-sg-tablewrap { overflow-x: auto; border: 1px solid var(--line, #e9e9e9); border-radius: 14px; }
.pap-sg-table { width: 100%; border-collapse: collapse; font-size: 14px; margin: 0; }
.pap-sg-table th, .pap-sg-table td { padding: 12px 10px; text-align: center; border-bottom: 1px solid var(--line, #e9e9e9); white-space: nowrap; }
.pap-sg-table thead th { background: var(--surface, #f7f7f7); font-size: 12px; font-weight: 600; color: var(--secondary, #4d4e4f); white-space: normal; }
.pap-sg-table tbody tr:last-child th, .pap-sg-table tbody tr:last-child td { border-bottom: 0; }
.pap-sg-table tbody th { font-family: var(--pap-serif); font-size: 22px; font-weight: 500; }
.pap-sg-table td small { color: var(--secondary-2, #a0a0a0); }
.pap-sg-table tr.is-reco th, .pap-sg-table tr.is-reco td { background: var(--pap-safety-bg, #f6f1ea); }
.pap-sg-table tr.is-reco th { color: var(--pap-sienne, #9c5a3c); }
.pap-sg-note { margin: 14px 0 0; font-size: 13px; color: var(--secondary, #4d4e4f); }
@media (max-width: 575px) {
	.pap-sg .modal-dialog { margin: 0; max-width: none; min-height: 100%; align-items: flex-end; }
	.pap-sg .modal-content { border-radius: 20px 20px 0 0; max-height: 92dvh; }
	.pap-sg-head { padding: 20px 18px 12px; }
	.pap-sg-title { font-size: 28px; }
	.pap-sg .pap-sg-tabs { margin: 0 18px 4px; }
	.pap-sg-body { padding: 16px 18px calc(22px + env(safe-area-inset-bottom, 0px)); }
	.pap-sg-option { font-size: 13px; padding: 10px 6px; }
	.pap-sg-number span { font-size: 44px; }
	.pap-sg-table th, .pap-sg-table td { padding: 10px 6px; font-size: 13px; }
}
/* Guide des tailles : priorités sur les styles Modave */
.modal-size-guide.pap-sg .pap-sg-close svg { display: block; width: 18px; height: 18px; stroke: var(--main, #181818); }
.modal-size-guide.pap-sg .widget-menu-tab.pap-sg-tabs .item-title { background: transparent !important; padding: 0 !important; min-width: 0; border: 0 !important; height: auto; }
.modal-size-guide.pap-sg .widget-menu-tab.pap-sg-tabs .item-title .inner { display: block; padding: 10px 12px !important; line-height: 1.3; white-space: nowrap; background: transparent; }
.modal-size-guide.pap-sg .widget-menu-tab.pap-sg-tabs .item-title.active .inner { background: var(--white, #fff) !important; color: var(--main, #181818); }
.modal-size-guide.pap-sg .suggests-item.pap-sg-advice { background: var(--main, #181818) !important; color: #fff !important; }
.modal-size-guide.pap-sg .suggests-item.pap-sg-advice:hover { background: var(--pap-sienne, #9c5a3c) !important; }
.modal-size-guide.pap-sg .suggests-item.pap-sg-advice.is-wide { background: transparent !important; color: var(--main, #181818) !important; }
@media (max-width: 575px) { .modal-size-guide.pap-sg .widget-menu-tab.pap-sg-tabs .item-title .inner { font-size: 13px; padding: 9px 8px !important; } }

.modal-size-guide.pap-sg .pap-sg-close svg { flex: 0 0 18px; min-width: 18px; width: 18px !important; max-width: none; }

/* Boutons ronds : la maquette applique padding:12px 20px à tous les <button>, ce qui les rend ovales. */
button.icon-close-popup, .pap-sg-close, .pap-sg-stepper, .nav-swiper, button.swiper-button-prev, button.swiper-button-next, .scroll-top-button, .pswp__button, .tf-mini-cart-tool-close, button.icon-close { padding: 0 !important; aspect-ratio: 1 / 1; flex-shrink: 0; display: inline-flex; align-items: center; justify-content: center; }
button.icon-close-popup { width: 40px; height: 40px; min-width: 40px; border-radius: 50%; }
.pap-sg-close { width: 40px !important; height: 40px !important; }
.pap-sg-stepper { width: 44px !important; height: 44px !important; }
.nav-swiper { width: 40px !important; height: 40px !important; }
.pswp__button { width: 44px !important; height: 44px !important; }

button.icon-close-popup, .offcanvas button.icon-close-popup, .canvas-mb button.icon-close-popup { width: 40px !important; height: 40px !important; min-width: 40px; min-height: 40px; }
.toolbar-count.count-box, .tf-toolbar-bottom .toolbar-count { width: 18px !important; height: 18px !important; min-width: 18px; border-radius: 50% !important; padding: 0 !important; display: inline-flex; align-items: center; justify-content: center; line-height: 1; }

/* Fiche produit : petit fil d'Ariane à la place de la collection */
.pap-pcrumb { display:flex; align-items:center; justify-content:space-between; gap:12px; margin:0 0 10px; }
.pap-pcrumb .rank-math-breadcrumb p, .pap-pcrumb nav { margin:0; font-size:11px; letter-spacing:.08em; text-transform:uppercase; line-height:1.4; color:#8a8580; }
.pap-pcrumb a { color:#8a8580; transition:color .2s; }
.pap-pcrumb a:hover { color:var(--pap-sienne,#9c5a3c); }
.pap-pcrumb .separator { margin:0 6px; opacity:.6; }
.pap-pcrumb .last, .pap-pcrumb .separator:last-of-type { display:none; }
.pap-pcrumb-nav { display:flex; gap:4px; flex-shrink:0; }
.pap-pcrumb-nav a { width:28px; height:28px; border-radius:50%; display:inline-flex; align-items:center; justify-content:center; font-size:12px; color:#181818; border:1px solid #e9e6e2; }
.pap-pcrumb-nav a:hover { background:#181818; color:#fff; border-color:#181818; }
.tf-product-info-heading .tf-product-info-name { gap:0; }
.tf-product-info-heading .pap-pname { margin-bottom:6px; }
.tf-product-info-desc .tf-product-info-price { margin-top:0; }
/* Comparer / favoris : vrais cercles */
.tf-product-info-by-btn .btn-icon-action, .tf-product-info-buy-button .btn-icon-action {  width:52px !important; height:52px !important; min-width:52px; flex:0 0 52px !important; padding:0 !important; border-radius:50% !important; aspect-ratio:1/1; display:inline-flex; align-items:center; justify-content:center; }
.pap-pcrumb .separator:has(+ .last) { display:none; }

/* Icônes des cartes produit : ronds sans padding hérité */
.card-product .list-product-btn .btn-icon-action { padding:0 !important; aspect-ratio:1/1; }

/* Remonter le prix */
.tf-product-info-name h1.pap-pname { line-height:1 !important; margin:0 0 4px !important; }
.tf-product-info-name h1.pap-pname .pap-pname-base { line-height:1.4 !important; margin-bottom:6px; }
.tf-product-info-name h1.pap-pname .pap-pname-variant { line-height:1.05 !important; }
.tf-product-info-heading .tf-product-info-name { margin-bottom:10px !important; }

/* Fiche produit : respiration sous le header */
.pap-product > section.flat-spacing.pt-0 { padding-top:64px !important; }
@media (max-width:991px){ .pap-product > section.flat-spacing.pt-0 { padding-top:40px !important; } }
@media (max-width:575px){ .pap-product > section.flat-spacing.pt-0 { padding-top:24px !important; } }

/* Mini-panier mobile : le panier prend toute la largeur, suggestions masquées */
@media (max-width:767px){
.modal-shopping-cart .modal-content { flex-direction:column !important; width:min(420px,92vw) !important; max-width:min(420px,92vw) !important; }
.modal-shopping-cart .tf-minicart-recommendations { display:none !important; }
.modal-shopping-cart .modal-content > .d-flex.flex-column { width:100%; min-width:0; }
.pap-mini-cart { padding:16px; }
}

/* ==========================================================================
   Page Commande (bloc WooCommerce) — alignée sur le panier et la charte
   ========================================================================== */
.pap-steps { list-style:none; display:flex; justify-content:center; align-items:center; gap:10px; margin:14px 0 0; padding:0; font-size:13px; color:var(--secondary-2); flex-wrap:wrap; }
.pap-steps li { display:flex; align-items:center; gap:8px; }
.pap-steps li + li::before { content:""; width:28px; height:1px; background:var(--line); margin-right:2px; }
.pap-steps a { display:flex; align-items:center; gap:8px; color:inherit; }
.pap-steps a:hover { color:var(--primary); }
.pap-steps span { width:24px; height:24px; border-radius:50%; display:inline-flex; align-items:center; justify-content:center; border:1px solid var(--line); font-size:12px; font-weight:600; }
.pap-steps .is-done { color:var(--main); }
.pap-steps .is-done span { background:var(--main); border-color:var(--main); color:#fff; }
.pap-steps .is-current { color:var(--main); font-weight:600; }
.pap-steps .is-current span { border-color:var(--primary); color:var(--primary); }

.wp-block-woocommerce-checkout { font-family:inherit; color:var(--main); }
.wp-block-woocommerce-checkout .wc-block-components-sidebar-layout { gap:0; }
.wc-block-checkout .wc-block-components-checkout-step__title, .wc-block-checkout .wc-block-components-title.wc-block-components-checkout-step__title { font-family:var(--pap-serif); font-size:26px !important; font-weight:500; letter-spacing:0; line-height:1.2; color:var(--main); }
.wc-block-checkout .wc-block-components-checkout-step { margin-bottom:32px !important; }
.wc-block-checkout .wc-block-components-checkout-step__heading { margin-bottom:14px; }

/* Champs : identiques au code promo du panier */
.wc-block-checkout .wc-block-components-text-input input, .wc-block-checkout .wc-blocks-components-select__select, .wc-block-checkout .wc-block-components-textarea, .wp-block-woocommerce-checkout .wc-block-components-totals-coupon input, .wp-block-woocommerce-checkout input.pwgc-input, .wp-block-woocommerce-checkout input[type=text]:not(.wc-block-components-checkbox__input) { border:2px solid var(--line) !important; border-radius:8px !important; background:#fff !important; min-height:54px; font-size:15px !important; color:var(--main) !important; box-shadow:none !important; transition:border-color .2s; }
.wc-block-checkout .wc-block-components-text-input input:focus, .wc-block-checkout .wc-blocks-components-select__select:focus, .wc-block-checkout .wc-block-components-textarea:focus, .wp-block-woocommerce-checkout input[type=text]:focus { border-color:var(--main) !important; outline:none !important; }
.wc-block-checkout .wc-block-components-text-input label, .wc-block-checkout .wc-blocks-components-select__label { color:var(--secondary-2) !important; font-size:14px; }
.wc-block-checkout .wc-block-components-text-input.is-active label, .wc-block-checkout .wc-blocks-components-select__label { font-size:12px; }
.wc-block-checkout .wc-blocks-components-select__container { border-radius:8px; background:#fff; }
.wc-block-checkout .wc-block-components-address-form__address_2-toggle, .wc-block-checkout .wc-block-components-address-card__edit { color:var(--main); text-decoration:underline; text-underline-offset:3px; font-size:13px; }
.wc-block-checkout .wc-block-components-address-form__address_2-toggle:hover, .wc-block-checkout .wc-block-components-address-card__edit:hover { color:var(--primary); }
.wc-block-checkout .wc-block-components-address-card { border:2px solid var(--line); border-radius:8px; padding:16px; }

/* Cases à cocher et boutons radio */
.wp-block-woocommerce-checkout .wc-block-components-checkbox .wc-block-components-checkbox__input[type=checkbox] { border:1.5px solid #bdbdbd; border-radius:4px; width:18px; height:18px; min-width:18px; background:#fff; }
.wp-block-woocommerce-checkout .wc-block-components-checkbox .wc-block-components-checkbox__input[type=checkbox]:checked { background:var(--main); border-color:var(--main); }
.wp-block-woocommerce-checkout .wc-block-components-checkbox .wc-block-components-checkbox__mark { fill:#fff; }
.wp-block-woocommerce-checkout .wc-block-components-checkbox label { font-size:14px; align-items:flex-start; }
.wp-block-woocommerce-checkout .wc-block-components-radio-control__input { border:1.5px solid #bdbdbd; }
.wp-block-woocommerce-checkout .wc-block-components-radio-control__input:checked { border-color:var(--main); }
.wp-block-woocommerce-checkout .wc-block-components-radio-control__input:checked::before { background:var(--main); }
.wp-block-woocommerce-checkout .wc-block-components-radio-control-accordion-option, .wp-block-woocommerce-checkout .wc-block-components-radio-control__option { border-radius:8px; }
.wp-block-woocommerce-checkout .wc-block-components-radio-control--highlight-checked::after, .wp-block-woocommerce-checkout .wc-block-components-radio-control--highlight-checked .wc-block-components-radio-control-accordion-option--checked-option-highlighted, .wp-block-woocommerce-checkout .wc-block-components-radio-control--highlight-checked label.wc-block-components-radio-control__option--checked-option-highlighted { box-shadow:inset 0 0 0 2px var(--main) !important; border-radius:8px; }
.wc-block-checkout__guest-checkout-notice, .wc-block-checkout__terms { font-size:13px; color:var(--secondary); }
.wc-block-checkout__terms a { color:var(--main); text-decoration:underline; text-underline-offset:3px; }

/* Boutons : pilules noires comme « Passer la commande » du panier */
.wp-block-woocommerce-checkout .wc-block-components-button:not(.is-link), .wp-block-woocommerce-checkout .pwgc-apply-gift-card-button, .wp-block-woocommerce-checkout .wc-block-components-totals-coupon__button { background:var(--main) !important; color:#fff !important; border:1px solid var(--main) !important; border-radius:99px !important; min-height:52px; padding:0 28px !important; font-family:inherit; font-size:14px !important; font-weight:600 !important; letter-spacing:.02em; text-transform:none; box-shadow:none !important; transition:background-color .25s, border-color .25s; }
.wp-block-woocommerce-checkout .wc-block-components-button:not(.is-link):hover, .wp-block-woocommerce-checkout .pwgc-apply-gift-card-button:hover, .wp-block-woocommerce-checkout .wc-block-components-totals-coupon__button:hover { background:var(--primary) !important; border-color:var(--primary) !important; }
.wp-block-woocommerce-checkout .wc-block-components-checkout-place-order-button { min-height:56px; font-size:15px !important; }
.wp-block-woocommerce-checkout .wc-block-components-totals-coupon__button { min-height:54px; }
.wc-block-checkout__actions { margin-top:8px; }

/* Récapitulatif : même encart gris que le panier */
.wc-block-checkout__sidebar .wp-block-woocommerce-checkout-order-summary-block { background:var(--surface); border:0 !important; border-radius:12px; padding:8px 24px 16px; }
.wc-block-checkout__sidebar .wc-block-components-checkout-order-summary__title-text, .wc-block-components-checkout-order-summary__title-text { font-family:var(--pap-serif); font-size:26px !important; font-weight:500; }
.wp-block-woocommerce-checkout-order-summary-block .wc-block-components-totals-wrapper { border-top-color:#e4e4e4 !important; padding-left:0 !important; padding-right:0 !important; }
.wp-block-woocommerce-checkout-order-summary-block .wc-block-components-order-summary-item__image img { border-radius:4px; width:56px; height:auto; }
.wp-block-woocommerce-checkout-order-summary-block .wc-block-components-order-summary-item__quantity { background:var(--main); color:#fff; border:2px solid var(--surface); box-shadow:none; }
.wp-block-woocommerce-checkout-order-summary-block .wc-block-components-product-name { font-weight:500; font-size:14px; color:var(--main); }
.wp-block-woocommerce-checkout-order-summary-block .wc-block-components-product-metadata, .wp-block-woocommerce-checkout-order-summary-block .wc-block-components-product-details { font-size:13px; color:var(--secondary); }
.wp-block-woocommerce-checkout-order-summary-block .wc-block-components-totals-item__label, .wp-block-woocommerce-checkout-order-summary-block .wc-block-components-totals-item__value { font-size:14px; }
.wp-block-woocommerce-checkout-order-summary-block .wc-block-components-totals-footer-item .wc-block-components-totals-item__label, .wp-block-woocommerce-checkout-order-summary-block .wc-block-components-totals-footer-item .wc-block-components-totals-item__value { font-size:20px; font-weight:600; }
.wp-block-woocommerce-checkout-order-summary-block .wc-block-components-panel__button { font-size:14px; font-weight:500; }
.wp-block-woocommerce-checkout-order-summary-block .wc-block-components-panel__button:hover { color:var(--primary); }

/* Messages */
.wp-block-woocommerce-checkout .wc-block-components-notice-banner { border-radius:8px; font-size:14px; }

@media (min-width:992px){
.wc-block-checkout .wc-block-checkout__main { padding-right:48px !important; }
.wc-block-checkout__sidebar { position:sticky; top:110px; }
}
@media (max-width:767px){
.wc-block-checkout .wc-block-components-checkout-step__title { font-size:22px !important; }
.pap-steps { font-size:12px; gap:6px; }
.pap-steps li + li::before { width:14px; }
}
/* Récap mobile (bas de page) et entête repliable */
.wp-block-woocommerce-checkout .checkout-order-summary-block-fill { background:var(--surface); border:0 !important; border-radius:12px; padding:4px 20px 12px; }
.wc-block-checkout__sidebar .wp-block-woocommerce-checkout-order-summary-block .wc-block-components-checkout-order-summary__title { border-top:0 !important; }
.wp-block-woocommerce-checkout .wc-block-components-totals-wrapper:first-child { border-top:0 !important; }
.wc-block-checkout__sidebar.is-sticky { top:110px; }

/* ==========================================================================
   Header : menu burger à gauche, logo centré, icônes à droite (comme l'ancien site)
   ========================================================================== */
#header .wrapper-header { min-height:104px; flex-wrap:nowrap; }
#header .pap-h-left { display:flex; align-items:center; }
#header .pap-h-center { display:flex; justify-content:center; align-items:center; }
#header .pap-h-center .logo-header { display:inline-flex; }
#header .pap-h-center img.logo { width:220px; height:auto; max-width:100%; }
#header .pap-h-right .nav-icon { gap:22px; }
#header .pap-h-right .nav-account { display:list-item !important; }
.pap-burger { display:inline-flex !important; align-items:center; gap:12px; color:var(--main); padding:6px 0; }
.pap-burger-lines { width:24px; height:16px; display:flex; flex-direction:column; justify-content:space-between; }
.pap-burger-lines span { display:block; height:1.5px; background:currentColor; border-radius:2px; transition:width .25s ease, background-color .2s; }
.pap-burger-lines span:nth-child(2) { width:70%; }
.pap-burger:hover { color:var(--primary); }
.pap-burger:hover .pap-burger-lines span:nth-child(2) { width:100%; }
.pap-burger-label { font-size:12px; letter-spacing:.16em; text-transform:uppercase; font-weight:500; }
@media (max-width:991px){
  #header .wrapper-header { min-height:80px; }
  #header .pap-h-center img.logo { width:170px; }
  #header .pap-h-right .nav-icon { gap:16px; }
}
@media (max-width:767px){
  #header .wrapper-header { min-height:68px; }
  #header .pap-h-center img.logo { width:140px; }
  .pap-burger-label { display:none; }
  #header .pap-h-right .nav-icon { gap:12px; }
  #header .pap-h-right .nav-account { display:none !important; }
}
/* Le menu latéral sert aussi sur ordinateur */
@media (min-width:1200px){ #mobileMenu { width:420px; } }
#header .wrapper-header > .pap-h-left, #header .wrapper-header > .pap-h-center, #header .wrapper-header > .pap-h-right { flex:1 1 0 !important; width:auto !important; max-width:none; min-width:0; }
#header .wrapper-header > .pap-h-center { flex:0 0 auto !important; }

/* Burger net (SVG) + logo agrandi */
.pap-burger-icon { display:block; width:26px; height:18px; fill:currentColor; flex-shrink:0; shape-rendering:crispEdges; }
.pap-burger { gap:12px; line-height:1; }
.pap-burger-label { line-height:18px; }
#header .wrapper-header { min-height:112px; }
#header .pap-h-center img.logo { width:280px !important; }
@media (max-width:1199px){ #header .pap-h-center img.logo { width:240px !important; } }
@media (max-width:991px){ #header .wrapper-header { min-height:88px; } #header .pap-h-center img.logo { width:210px !important; } }
@media (max-width:767px){ #header .wrapper-header { min-height:72px; } #header .pap-h-center img.logo { width:170px !important; } .pap-burger-icon { width:24px; height:17px; } }
@media (max-width:374px){ #header .pap-h-center img.logo { width:150px !important; } }

/* ==========================================================================
   Mon compte — charte Peau à Peau
   ========================================================================== */
.pap-btn-pill { display:inline-flex !important; align-items:center; justify-content:center; min-height:52px; padding:0 30px !important; border-radius:99px !important; background:var(--main) !important; color:#fff !important; border:1px solid var(--main) !important; font-size:14px !important; font-weight:600 !important; line-height:1 !important; text-decoration:none !important; transition:background-color .25s, border-color .25s, color .25s; cursor:pointer; }
.pap-btn-pill:hover { background:var(--primary) !important; border-color:var(--primary) !important; color:#fff !important; }
.pap-btn-outline { background:transparent !important; color:var(--main) !important; }
.pap-btn-outline:hover { background:var(--main) !important; border-color:var(--main) !important; color:#fff !important; }
.pap-auth-eyebrow { font-size:11px; letter-spacing:.18em; text-transform:uppercase; color:var(--primary); font-weight:600; margin:0 0 8px; }

/* Connexion */
.pap-auth { display:grid; grid-template-columns:1fr 1fr; gap:32px; max-width:1040px; margin:8px auto 80px; align-items:stretch; }
.pap-auth-card { background:#fff; border:1px solid var(--line); border-radius:16px; padding:44px 48px; display:flex; flex-direction:column; }
.pap-auth-card--alt { background:var(--pap-safety-bg,#f6f1ea); border-color:transparent; }
.pap-auth-title { font-family:var(--pap-serif); font-size:34px; font-weight:500; line-height:1.15; margin:0 0 10px; }
.pap-auth-intro { color:var(--secondary); font-size:15px; line-height:1.6; margin:0 0 26px; }
.pap-form .form-row { margin:0 0 18px !important; padding:0 !important; }
.pap-form label { display:block; font-size:13px; font-weight:500; color:var(--main); margin-bottom:8px; }
.pap-form .required { color:var(--primary); text-decoration:none; }
.woocommerce-account .pap-content input.input-text, .woocommerce-account .pap-content select, .woocommerce-account .pap-content textarea, .woocommerce-account .pap-content .select2-container .select2-selection--single { width:100%; min-height:54px; border:2px solid var(--line) !important; border-radius:8px !important; padding:12px 16px; font-size:15px; background:#fff; box-shadow:none; transition:border-color .2s; }
.woocommerce-account .pap-content .select2-container .select2-selection--single .select2-selection__rendered { line-height:28px; padding-left:0; }
.woocommerce-account .pap-content .select2-container .select2-selection--single .select2-selection__arrow { height:50px; right:10px; }
.woocommerce-account .pap-content input.input-text:focus, .woocommerce-account .pap-content select:focus, .woocommerce-account .pap-content textarea:focus { border-color:var(--main) !important; outline:none; }
.pap-form .password-input { display:block; position:relative; }
.pap-form .show-password-input { position:absolute; right:14px; top:50%; transform:translateY(-50%); background:none; border:0; padding:0 !important; width:28px; height:28px; }
.pap-auth-row { display:flex; justify-content:space-between; align-items:center; gap:12px; margin:-2px 0 24px; flex-wrap:wrap; }
.pap-auth-row label { display:inline-flex; align-items:center; gap:8px; margin:0; font-weight:400; font-size:14px; cursor:pointer; }
.pap-auth-row input[type=checkbox], .woocommerce-account .pap-content input[type=checkbox] { width:18px; height:18px; accent-color:var(--main); }
.pap-auth-lost { font-size:14px; color:var(--main); text-decoration:underline; text-underline-offset:3px; }
.pap-auth-lost:hover { color:var(--primary); }
.pap-auth .woocommerce-form-login__submit, .pap-auth .woocommerce-form-register__submit { width:100%; }
.pap-auth-perks { list-style:none; margin:0 0 30px; padding:0; display:grid; gap:14px; }
.pap-auth-perks li { display:flex; align-items:center; gap:14px; font-size:15px; }
.pap-auth-perks svg { width:38px; height:38px; padding:8px; flex-shrink:0; border-radius:50%; background:#fff; color:var(--primary); }
.pap-auth-card--alt .pap-btn-pill { margin-top:auto; align-self:flex-start; }

/* Espace connecté : menu + contenu */
.woocommerce-account.logged-in .pap-content > .woocommerce { display:grid; grid-template-columns:280px 1fr; gap:48px; align-items:start; margin:8px 0 80px; }
.woocommerce-account .pap-content > .woocommerce > .woocommerce-notices-wrapper { grid-column:1 / -1; }
.pap-acc-nav { position:sticky; top:130px; background:var(--surface); border-radius:16px; padding:20px; }
.pap-acc-user { display:flex; align-items:center; gap:12px; padding:4px 8px 18px; margin-bottom:10px; border-bottom:1px solid #e4e4e4; }
.pap-acc-avatar { width:44px; height:44px; border-radius:50%; background:var(--main); color:#fff; display:inline-flex; align-items:center; justify-content:center; font-family:var(--pap-serif); font-size:22px; flex-shrink:0; }
.pap-acc-user-txt { display:flex; flex-direction:column; line-height:1.3; }
.pap-acc-hello { font-size:12px; color:var(--secondary); }
.pap-acc-user-txt strong { font-size:16px; font-weight:600; }
.pap-acc-nav ul { list-style:none; margin:0; padding:0; display:grid; gap:2px; }
.pap-acc-nav li a { display:flex; align-items:center; gap:12px; padding:12px 12px; border-radius:10px; color:var(--main); font-size:15px; transition:background-color .2s, color .2s; }
.pap-acc-nav li a:hover { background:#fff; color:var(--primary); }
.pap-acc-nav li.is-active a { background:#fff; font-weight:600; box-shadow:0 1px 0 rgba(0,0,0,.03); }
.pap-acc-nav li.is-active .pap-acc-ico { color:var(--primary); }
.pap-acc-nav li.woocommerce-MyAccount-navigation-link--customer-logout { margin-top:8px; padding-top:8px; border-top:1px solid #e4e4e4; }
.pap-acc-nav li.woocommerce-MyAccount-navigation-link--customer-logout a { color:var(--secondary); }
.pap-acc-ico { flex-shrink:0; }
.woocommerce-MyAccount-content { min-width:0; font-size:15px; }
.woocommerce-MyAccount-content h2, .woocommerce-MyAccount-content h3, .woocommerce-MyAccount-content legend { font-family:var(--pap-serif); font-weight:500; }
.woocommerce-MyAccount-content h2 { font-size:30px; }
.woocommerce-MyAccount-content h3 { font-size:24px; }
.woocommerce-MyAccount-content .button, .woocommerce-MyAccount-content button.button, .woocommerce-MyAccount-content a.button { display:inline-flex; align-items:center; justify-content:center; min-height:44px; padding:0 22px; border-radius:99px; background:var(--main); color:#fff; border:1px solid var(--main); font-size:14px; font-weight:600; transition:background-color .25s, border-color .25s; }
.woocommerce-MyAccount-content .button:hover { background:var(--primary); border-color:var(--primary); color:#fff; }
.woocommerce-MyAccount-content form .button[name=save_address], .woocommerce-MyAccount-content form .button[name=save_account_details] { min-height:52px; padding:0 32px; }
.woocommerce-MyAccount-content fieldset { border:1px solid var(--line); border-radius:12px; padding:20px 24px 8px; margin:24px 0; }
.woocommerce-MyAccount-content .form-row { margin-bottom:16px; }
.woocommerce-MyAccount-content label { font-size:13px; font-weight:500; margin-bottom:6px; display:block; }

/* Tableau de bord */
.pap-dash-title { font-family:var(--pap-serif); font-size:40px !important; font-weight:500; line-height:1.1; margin:0 0 10px; }
.pap-dash-intro { color:var(--secondary); margin:0 0 28px; }
.pap-dash-last { display:flex; justify-content:space-between; align-items:center; gap:20px; padding:24px 28px; border:1px solid var(--line); border-radius:16px; margin-bottom:24px; flex-wrap:wrap; }
.pap-dash-label { font-size:12px; letter-spacing:.14em; text-transform:uppercase; color:var(--secondary); margin:0 0 6px; }
.pap-dash-order { font-family:var(--pap-serif); font-size:22px; margin:0 0 6px; }
.pap-dash-meta { margin:0; display:flex; align-items:center; gap:12px; font-weight:600; }
.pap-status { display:inline-block; font-size:12px; font-weight:600; padding:4px 12px; border-radius:99px; background:var(--surface); color:var(--main); }
.pap-status--completed, .pap-status--lpc_delivered { background:#e8f3e5; color:#2f7a22; }
.pap-status--processing, .pap-status--lpc_transit { background:#f6ece6; color:var(--primary); }
.pap-status--cancelled, .pap-status--failed, .pap-status--refunded { background:#fbe9e9; color:#b42b2b; }
.pap-dash-grid { display:grid; grid-template-columns:repeat(2,1fr); gap:16px; }
.pap-dash-card { display:flex; flex-direction:column; gap:4px; padding:24px; border-radius:16px; background:var(--surface); color:var(--main); transition:transform .25s, box-shadow .25s, background-color .25s; }
.pap-dash-card .pap-acc-ico { width:40px; height:40px; padding:9px; border-radius:50%; background:#fff; color:var(--primary); margin-bottom:12px; }
.pap-dash-card strong { font-size:17px; font-weight:600; }
.pap-dash-card span { font-size:14px; color:var(--secondary); }
.pap-dash-card:hover { background:var(--pap-safety-bg,#f6f1ea); transform:translateY(-2px); color:var(--main); }
.pap-dash-help { display:flex; justify-content:space-between; align-items:center; gap:16px; flex-wrap:wrap; margin-top:28px; padding-top:22px; border-top:1px solid var(--line); font-size:14px; color:var(--secondary); }
.pap-dash-help p { margin:0; }
.pap-dash-help a { color:var(--main); text-decoration:underline; text-underline-offset:3px; }
.pap-dash-help a:hover { color:var(--primary); }

/* Commandes */
.woocommerce-MyAccount-content table.shop_table { width:100%; border-collapse:separate; border-spacing:0; border:1px solid var(--line); border-radius:12px; overflow:hidden; font-size:14px; }
.woocommerce-MyAccount-content table.shop_table th { background:var(--surface); font-weight:600; font-size:12px; letter-spacing:.08em; text-transform:uppercase; padding:14px 16px; text-align:left; border:0; }
.woocommerce-MyAccount-content table.shop_table td { padding:16px; border:0; border-top:1px solid var(--line); vertical-align:middle; }
.woocommerce-MyAccount-content table.shop_table td a:not(.button) { color:var(--main); font-weight:600; }
.woocommerce-MyAccount-content .woocommerce-orders-table .button { min-height:38px; padding:0 18px; font-size:13px; margin:2px; }
.woocommerce-MyAccount-content mark { background:var(--surface); color:var(--main); padding:2px 10px; border-radius:99px; font-weight:600; }
.woocommerce-MyAccount-content .woocommerce-info, .woocommerce-MyAccount-content .woocommerce-message { border-radius:12px; background:var(--surface); border:0; padding:20px 24px; display:flex; justify-content:space-between; align-items:center; gap:16px; flex-wrap:wrap; }
.woocommerce-Addresses { display:grid; grid-template-columns:1fr 1fr; gap:20px; margin-top:16px; }
.woocommerce-Addresses::before, .woocommerce-Addresses::after { display:none !important; }
.woocommerce-Addresses .woocommerce-Address { width:auto !important; float:none !important; border:1px solid var(--line); border-radius:16px; padding:24px; }
.woocommerce-Address-title { display:flex; justify-content:space-between; align-items:baseline; gap:12px; margin-bottom:12px; }
.woocommerce-Address-title h2 { font-size:22px !important; margin:0; }
.woocommerce-Address-title a.edit { font-size:13px; color:var(--main); text-decoration:underline; text-underline-offset:3px; }
.woocommerce-Address address { font-style:normal; line-height:1.7; color:var(--secondary); }

@media (max-width:991px){
  .pap-auth { grid-template-columns:1fr; gap:20px; }
  .woocommerce-account.logged-in .pap-content > .woocommerce { grid-template-columns:1fr; gap:24px; }
  .pap-acc-nav { position:static; padding:12px; }
  .pap-acc-nav ul { display:flex; overflow-x:auto; gap:6px; scrollbar-width:none; }
  .pap-acc-nav ul::-webkit-scrollbar { display:none; }
  .pap-acc-nav li a { white-space:nowrap; padding:10px 14px; font-size:14px; }
  .pap-acc-nav li.woocommerce-MyAccount-navigation-link--customer-logout { margin:0; padding:0; border:0; }
  .pap-acc-user { padding:4px 4px 12px; }
}
@media (max-width:575px){
  .pap-auth-card { padding:28px 22px; border-radius:14px; }
  .pap-auth-title { font-size:28px; }
  .pap-dash-title { font-size:32px !important; }
  .pap-dash-grid, .woocommerce-Addresses { grid-template-columns:1fr; }
  .pap-dash-last { padding:20px; }
  .woocommerce-MyAccount-content table.shop_table_responsive thead { display:none; }
  .woocommerce-MyAccount-content table.shop_table_responsive tr { display:block; border-top:1px solid var(--line); padding:8px 0; }
  .woocommerce-MyAccount-content table.shop_table_responsive td { display:flex; justify-content:space-between; border:0; padding:8px 16px; }
  .woocommerce-MyAccount-content table.shop_table_responsive td::before { content:attr(data-title); font-weight:600; }
}
.pap-auth form.login, .pap-auth form.register, .pap-auth .pap-form { border:0 !important; padding:0 !important; margin:0 !important; background:none !important; border-radius:0 !important; box-shadow:none !important; }

.woocommerce-account.logged-in .pap-content > .woocommerce::before, .woocommerce-account.logged-in .pap-content > .woocommerce::after { display:none !important; content:none !important; }
.woocommerce-account .pap-acc-nav, .woocommerce-account .woocommerce-MyAccount-content { float:none !important; width:auto !important; }

.woocommerce-MyAccount-content .woocommerce-info::before, .woocommerce-MyAccount-content .woocommerce-message::before, .woocommerce-MyAccount-content .woocommerce-error::before { display:none !important; }
.woocommerce-MyAccount-content .woocommerce-info { flex-direction:row-reverse; justify-content:flex-end; }
.woocommerce-MyAccount-content .woocommerce-info .button { margin-left:auto; }

.woocommerce-Address-title { flex-direction:column; align-items:flex-start; gap:6px; }
.woocommerce-Address-title h2, .woocommerce-Address-title h3 { line-height:1.2 !important; font-size:22px !important; }
.woocommerce-Address-title a.edit { white-space:nowrap; }

/* ==========================================================================
   Pages de commande classiques (Payer la commande, Confirmation) + messages
   ========================================================================== */
/* Messages WooCommerce partout */
.woocommerce-error, .woocommerce-info, .woocommerce-message { list-style:none; margin:0 0 24px !important; padding:18px 22px 18px 52px !important; border:0 !important; border-radius:12px !important; background:var(--surface) !important; color:var(--main) !important; font-size:15px; line-height:1.6; position:relative; }
.woocommerce-error::before, .woocommerce-info::before, .woocommerce-message::before { content:"" !important; font-family:inherit !important; position:absolute; left:20px; top:21px; width:18px; height:18px; border-radius:50%; background:var(--primary); -webkit-mask:url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' viewBox='0 0 24 24'%3E%3Cpath d='M12 2a10 10 0 1 0 0 20 10 10 0 0 0 0-20zm1 15h-2v-2h2zm0-4h-2V7h2z'/%3E%3C/svg%3E") center/contain no-repeat; mask:url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' viewBox='0 0 24 24'%3E%3Cpath d='M12 2a10 10 0 1 0 0 20 10 10 0 0 0 0-20zm1 15h-2v-2h2zm0-4h-2V7h2z'/%3E%3C/svg%3E") center/contain no-repeat; }
.woocommerce-error { background:#fbeeee !important; }
.woocommerce-error::before { background:#b42b2b; }
.woocommerce-message { background:#eef5ec !important; }
.woocommerce-message::before { background:#2f7a22; -webkit-mask-image:url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' viewBox='0 0 24 24'%3E%3Cpath d='M12 2a10 10 0 1 0 0 20 10 10 0 0 0 0-20zm-1.5 14.5-4-4 1.4-1.4 2.6 2.6 5.6-5.6 1.4 1.4z'/%3E%3C/svg%3E"); mask-image:url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' viewBox='0 0 24 24'%3E%3Cpath d='M12 2a10 10 0 1 0 0 20 10 10 0 0 0 0-20zm-1.5 14.5-4-4 1.4-1.4 2.6 2.6 5.6-5.6 1.4 1.4z'/%3E%3C/svg%3E"); }
.woocommerce-error li { margin:0; }
.woocommerce-error a, .woocommerce-info a:not(.button), .woocommerce-message a:not(.button) { color:var(--main); text-decoration:underline; text-underline-offset:3px; }
.woocommerce-info .button, .woocommerce-message .button { float:right; min-height:40px; padding:0 20px; border-radius:99px; background:var(--main); color:#fff; border:0; font-size:13px; font-weight:600; display:inline-flex; align-items:center; margin-left:16px; }
.woocommerce-info .button:hover, .woocommerce-message .button:hover { background:var(--primary); color:#fff; }

/* Payer la commande */
#order_review { max-width:880px; margin:0 auto 80px; }
#order_review table.shop_table, .woocommerce-order-details table.shop_table, .woocommerce-table--order-details { width:100%; border-collapse:separate !important; border-spacing:0; border:1px solid var(--line) !important; border-radius:16px !important; overflow:hidden; margin:0 0 28px !important; font-size:15px; }
#order_review table.shop_table th, #order_review table.shop_table td, .woocommerce-table--order-details th, .woocommerce-table--order-details td { padding:16px 22px !important; border:0 !important; border-top:1px solid var(--line) !important; text-align:left; vertical-align:middle; }
#order_review table.shop_table thead th, .woocommerce-table--order-details thead th { border-top:0 !important; background:var(--surface); font-size:12px; letter-spacing:.1em; text-transform:uppercase; font-weight:600; }
#order_review table.shop_table td.product-total, #order_review table.shop_table tfoot td, .woocommerce-table--order-details td:last-child, .woocommerce-table--order-details tfoot td { text-align:right; }
#order_review table.shop_table th.product-total, .woocommerce-table--order-details thead th:last-child { text-align:right; }
#order_review table.shop_table .product-name .wc-item-meta, .woocommerce-table--order-details .wc-item-meta { list-style:none; margin:4px 0 0; padding:0; font-size:13px; color:var(--secondary); }
#order_review table.shop_table .wc-item-meta p, .woocommerce-table--order-details .wc-item-meta p { display:inline; margin:0; }
#order_review table.shop_table tfoot th, .woocommerce-table--order-details tfoot th { font-weight:500; color:var(--secondary); }
#order_review table.shop_table tfoot tr:last-child th, #order_review table.shop_table tfoot tr:last-child td, .woocommerce-table--order-details tfoot tr:last-child th, .woocommerce-table--order-details tfoot tr:last-child td { font-size:19px; font-weight:600; color:var(--main); background:var(--surface); }
.woocommerce-checkout #payment, .woocommerce-order-pay #payment { background:var(--surface) !important; border-radius:16px !important; padding:8px 0 0; }
.woocommerce-checkout #payment ul.payment_methods, .woocommerce-order-pay #payment ul.payment_methods { border-bottom:1px solid #e4e4e4 !important; padding:20px 24px !important; margin:0; list-style:none; }
#payment ul.payment_methods li { line-height:1.6; }
#payment ul.payment_methods li.woocommerce-notice, #payment ul.payment_methods .woocommerce-info { background:#fff !important; margin:0 !important; }
#payment div.payment_box { background:#fff !important; border-radius:10px; color:var(--secondary) !important; font-size:14px; }
#payment div.payment_box::before { display:none !important; }
#payment .place-order { padding:20px 24px 24px !important; margin:0 !important; display:flex; flex-direction:column; gap:16px; }
#payment .woocommerce-privacy-policy-text p { font-size:13px; color:var(--secondary); margin:0; line-height:1.6; }
#payment .woocommerce-privacy-policy-text a { color:var(--main); text-decoration:underline; text-underline-offset:3px; }
#place_order, .woocommerce #payment #place_order { width:100%; float:none !important; min-height:56px; border-radius:99px !important; background:var(--main) !important; color:#fff !important; border:1px solid var(--main) !important; font-size:15px !important; font-weight:600 !important; padding:0 30px !important; transition:background-color .25s, border-color .25s; }
#place_order:hover { background:var(--primary) !important; border-color:var(--primary) !important; }

/* Confirmation de commande */
.woocommerce-order { max-width:880px; margin:0 auto 80px; }
.woocommerce-thankyou-order-received, .woocommerce-notice--success { font-family:var(--pap-serif); font-size:28px; line-height:1.3; text-align:center; margin:0 0 28px !important; padding:0 !important; background:none !important; }
.woocommerce-thankyou-order-received::before, .woocommerce-notice--success::before { display:none !important; }
ul.woocommerce-order-overview { list-style:none; display:grid; grid-template-columns:repeat(auto-fit,minmax(150px,1fr)); gap:0; margin:0 0 32px !important; padding:0 !important; border:1px solid var(--line); border-radius:16px; overflow:hidden; }
ul.woocommerce-order-overview::before, ul.woocommerce-order-overview::after { display:none !important; }
ul.woocommerce-order-overview li { float:none !important; margin:0 !important; padding:18px 20px !important; border:0 !important; border-right:1px solid var(--line) !important; font-size:12px !important; letter-spacing:.08em; text-transform:uppercase; color:var(--secondary); }
ul.woocommerce-order-overview li:last-child { border-right:0 !important; }
ul.woocommerce-order-overview li strong { display:block; margin-top:6px; font-size:16px !important; letter-spacing:0; text-transform:none; color:var(--main); font-weight:600; }
.woocommerce-order-details__title, .woocommerce-column__title, .woocommerce-customer-details h2 { font-family:var(--pap-serif); font-weight:500; font-size:26px; margin:0 0 14px; }
.woocommerce-customer-details .woocommerce-columns { display:grid; grid-template-columns:1fr 1fr; gap:20px; }
.woocommerce-customer-details .woocommerce-columns::before, .woocommerce-customer-details .woocommerce-columns::after { display:none !important; }
.woocommerce-customer-details .woocommerce-column { width:auto !important; float:none !important; }
.woocommerce-customer-details address { border:1px solid var(--line) !important; border-radius:16px !important; padding:22px !important; font-style:normal; line-height:1.7; color:var(--secondary); }
.woocommerce-order-details .order-again .button { min-height:48px; padding:0 26px; border-radius:99px; background:var(--main); color:#fff; font-weight:600; display:inline-flex; align-items:center; }
.woocommerce-order-details .order-again .button:hover { background:var(--primary); }
@media (max-width:767px){
  #order_review table.shop_table th, #order_review table.shop_table td { padding:14px 14px !important; }
  .woocommerce-customer-details .woocommerce-columns { grid-template-columns:1fr; }
  ul.woocommerce-order-overview li { border-right:0 !important; border-bottom:1px solid var(--line) !important; }
  .woocommerce-thankyou-order-received { font-size:24px; }
}
#order_review table.shop_table tbody td:last-child, #order_review table.shop_table thead th:last-child { text-align:right !important; }
#order_review table.shop_table .product-quantity { text-align:center; color:var(--secondary); }

/* ==========================================================================
   Page Notre histoire (qui-sommes-nous)
   ========================================================================== */
.pap-content.entry .pap-story { max-width:1080px; margin:0 auto 96px; }
.pap-story-intro { max-width:720px; margin:0 auto 48px; text-align:center; }
.pap-story-eyebrow { font-size:12px; letter-spacing:.2em; text-transform:uppercase; color:var(--primary); font-weight:600; margin:0 0 14px !important; }
.pap-story-lead { font-family:var(--pap-serif); font-size:28px !important; line-height:1.4 !important; color:var(--main); margin:0 !important; text-wrap:balance; }
.pap-story-duo { display:grid; grid-template-columns:1fr 1fr; gap:24px; margin:0 0 80px; }
.pap-story-fig { margin:0; display:flex; flex-direction:column; gap:14px; }
.pap-story-fig img, .pap-story-ph { width:100%; aspect-ratio:4/3; object-fit:cover; border-radius:16px; display:block; margin:0 !important; }
.pap-story-ph { background:var(--pap-safety-bg,#f6f1ea); border:1px dashed #d8c3a5; display:flex; align-items:center; justify-content:center; color:#9c8f80; font-size:14px; }
.pap-story-fig figcaption { display:flex; flex-direction:column; gap:2px; padding:0 4px; }
.pap-story-fig figcaption strong { font-family:var(--pap-serif); font-weight:500; font-size:22px; color:var(--main); }
.pap-story-fig figcaption span { font-size:14px; color:var(--secondary); }
.pap-story-fig--now figcaption strong { color:var(--primary); }
.pap-story-chapters { position:relative; max-width:760px; margin:0 auto 72px; padding-left:40px; }
.pap-story-chapters::before { content:""; position:absolute; left:7px; top:10px; bottom:10px; width:1px; background:var(--line); }
.pap-chapter { position:relative; margin:0 0 48px; }
.pap-chapter:last-child { margin-bottom:0; }
.pap-chapter::before { content:""; position:absolute; left:-40px; top:6px; width:15px; height:15px; border-radius:50%; background:#fff; border:2px solid var(--primary); }
.pap-chapter--now::before { background:var(--primary); }
.pap-chapter-date { font-size:12px !important; letter-spacing:.16em; text-transform:uppercase; color:var(--primary); font-weight:600; margin:0 0 6px !important; }
.pap-content.entry .pap-chapter h2 { font-family:var(--pap-serif); font-weight:500; font-size:32px; line-height:1.2; margin:0 0 14px; }
.pap-chapter p { font-size:16px; line-height:1.75; color:var(--secondary); margin:0 0 12px; }
.pap-story-quote { max-width:820px; margin:0 auto 72px !important; padding:48px 40px !important; text-align:center; background:var(--pap-safety-bg,#f6f1ea); border:0 !important; border-radius:20px; }
.pap-story-quote p { font-family:var(--pap-serif); font-style:italic; font-size:28px !important; line-height:1.4 !important; color:var(--main); margin:0 0 16px !important; text-wrap:balance; }
.pap-story-quote cite { font-style:normal; font-size:13px; letter-spacing:.06em; color:var(--secondary); }
.pap-story-values { display:grid; grid-template-columns:repeat(3,1fr); gap:20px; margin:0 0 72px; }
.pap-value { padding:28px 26px; border:1px solid var(--line); border-radius:16px; }
.pap-content.entry .pap-value h3 { font-family:var(--pap-serif); font-weight:500; font-size:22px; margin:0 0 8px; }
.pap-value p { margin:0; font-size:15px; color:var(--secondary); line-height:1.6; }
.pap-story-cta { text-align:center; }
.pap-content.entry .pap-story-cta h2 { font-family:var(--pap-serif); font-weight:500; font-size:36px; margin:0 0 8px; }
.pap-story-cta > p { color:var(--secondary); margin:0 0 22px; }
.pap-story-source { font-size:12px !important; color:var(--secondary-2) !important; margin-top:40px !important; }
.pap-story-source a { color:inherit; text-decoration:underline; }
@media (max-width:767px){
  .pap-story-lead { font-size:22px !important; }
  .pap-story-duo { grid-template-columns:1fr; gap:32px; margin-bottom:56px; }
  .pap-story-chapters { padding-left:30px; }
  .pap-chapter::before { left:-30px; }
  .pap-story-chapters::before { left:6px; }
  .pap-content.entry .pap-chapter h2 { font-size:26px; }
  .pap-story-quote { padding:32px 22px !important; }
  .pap-story-quote p { font-size:22px !important; }
  .pap-story-values { grid-template-columns:1fr; }
}
@media (max-width:991px){ .pap-story-values { grid-template-columns:1fr; } }
.pap-story-chapters::before { z-index:0; } .pap-chapter::before { z-index:1; }

/* Mon compte mobile : rien ne déborde */
@media (max-width:991px){
  .woocommerce-account.logged-in .pap-content > .woocommerce { grid-template-columns:minmax(0,1fr) !important; }
  .woocommerce-account .pap-acc-nav, .woocommerce-account .woocommerce-MyAccount-content { min-width:0; max-width:100%; }
  .pap-acc-nav ul { max-width:100%; -webkit-overflow-scrolling:touch; }
}
@media (max-width:575px){
  .woocommerce-MyAccount-content .form-row-first, .woocommerce-MyAccount-content .form-row-last { width:100% !important; float:none !important; }
  .woocommerce-MyAccount-content fieldset { padding:16px 16px 4px; }
  .woocommerce-MyAccount-content form .button[name=save_account_details], .woocommerce-MyAccount-content form .button[name=save_address] { width:100%; justify-content:center; }
}
.woocommerce-MyAccount-content input.input-text, .woocommerce-MyAccount-content select { max-width:100%; box-sizing:border-box; }
.woocommerce-MyAccount-content em, .woocommerce-MyAccount-content .description { display:block; font-size:12px; color:var(--secondary); overflow-wrap:anywhere; }

/* Lisibilité des textes posés sur les vraies photos */
.tf-sw-slideshow .wrap-slider { position:relative; }
.tf-sw-slideshow .wrap-slider > img { position:relative; z-index:0; }
.tf-sw-slideshow .wrap-slider::after { content:''; position:absolute; inset:0; z-index:1; pointer-events:none; background:linear-gradient(90deg, rgba(255,255,255,.82) 0%, rgba(255,255,255,.55) 32%, rgba(255,255,255,0) 58%); }
.tf-sw-slideshow .wrap-slider .box-content { position:absolute; z-index:2; }
.collection-position-3 .img-style { position:relative; display:block; }
.collection-position-3 .img-style::after { content:''; position:absolute; inset:0; pointer-events:none; border-radius:inherit; background:linear-gradient(180deg, rgba(255,255,255,.85) 0%, rgba(255,255,255,0) 38%, rgba(255,255,255,0) 72%, rgba(255,255,255,.75) 100%); }
.collection-position-3 .content { z-index:2; }
@media (max-width:767px){ .tf-sw-slideshow .wrap-slider::after { background:linear-gradient(90deg, rgba(255,255,255,.85) 0%, rgba(255,255,255,.6) 55%, rgba(255,255,255,.15) 100%); } }

/* Carte cadeau : choix du montant en cartes */
.variant-picker-values.pap-amounts { display:grid !important; grid-template-columns:repeat(2,minmax(0,1fr)); gap:12px; }
.variant-picker-values.pap-amounts .pap-amount { width:auto !important; height:auto !important; min-height:84px; aspect-ratio:auto !important; border-radius:14px !important; padding:16px 18px !important; border:1.5px solid var(--line) !important; background:#fff !important; display:flex !important; flex-direction:column; align-items:flex-start; justify-content:center; gap:4px; text-align:left; cursor:pointer; transition:border-color .2s, background-color .2s, box-shadow .2s; }
.variant-picker-values.pap-amounts .pap-amount:hover { border-color:var(--main) !important; }
.variant-picker-values.pap-amounts .pap-amount.active, .variant-picker-values.pap-amounts .pap-amount[aria-checked="true"] { border-color:var(--main) !important; background:var(--pap-safety-bg,#f6f1ea) !important; box-shadow:inset 0 0 0 1px var(--main); }
.pap-amount-value { font-family:var(--pap-serif); font-size:28px; line-height:1; font-weight:500; color:var(--main); white-space:nowrap; }
.pap-amount-hint { font-size:13px; line-height:1.35; color:var(--secondary); }
.variant-picker-values.pap-amounts .pap-amount[aria-checked="true"] .pap-amount-hint { color:var(--primary); }
.pap-eta--gift .pap-eta-date { font-size:26px; }
@media (max-width:420px){ .variant-picker-values.pap-amounts { grid-template-columns:1fr; } }
.variant-picker-values.pap-amounts .pap-amount, .variant-picker-values.pap-amounts .pap-amount.active { color:var(--main) !important; align-items:flex-start !important; text-align:left !important; }
.variant-picker-values.pap-amounts .pap-amount .pap-amount-value { color:var(--main) !important; }
.variant-picker-values.pap-amounts .pap-amount::before, .variant-picker-values.pap-amounts .pap-amount::after { display:none !important; }
/* Champs de la carte cadeau (Pour, De, Message) */
#pwgc-purchase-container, .pwgc-field-container { margin-top:8px; }
.pwgc-field-container { margin-bottom:14px !important; }
.pwgc-field-container label, #pwgc-purchase-container label { display:block; font-size:12px !important; letter-spacing:.12em; text-transform:uppercase; font-weight:600 !important; color:var(--main); margin-bottom:8px !important; }
.pwgc-field-container input[type=text], .pwgc-field-container input[type=email], .pwgc-field-container input[type=date], .pwgc-field-container textarea, #pwgc-purchase-container input:not([type=checkbox]):not([type=radio]), #pwgc-purchase-container textarea { width:100% !important; max-width:100% !important; min-height:52px; border:2px solid var(--line) !important; border-radius:8px !important; padding:12px 16px !important; font-size:15px !important; background:#fff; box-shadow:none !important; box-sizing:border-box; transition:border-color .2s; }
.pwgc-field-container textarea, #pwgc-purchase-container textarea { min-height:110px; resize:vertical; }
.pwgc-field-container input:focus, .pwgc-field-container textarea:focus, #pwgc-purchase-container input:focus, #pwgc-purchase-container textarea:focus { border-color:var(--main) !important; outline:none; }
.pwgc-field-container .pwgc-subtitle, #pwgc-purchase-container .pwgc-subtitle, .pwgc-field-container small { display:block; font-size:12px; color:var(--secondary-2); margin-top:6px; text-transform:none; letter-spacing:0; }
body .variant-picker-item .variant-picker-values.pap-amounts .pap-amount.active, body .variant-picker-item .variant-picker-values.pap-amounts .pap-amount[aria-checked="true"] { border:2px solid #181818 !important; box-shadow:none !important; }

/* ==========================================================================
   Confirmation de commande (v2)
   ========================================================================== */
.woocommerce-order { max-width:880px; margin:0 auto 96px; }
p.woocommerce-thankyou-order-received { display:flex !important; flex-direction:column; align-items:center; gap:10px; text-align:center; margin:8px 0 40px !important; padding:0 !important; background:none !important; border:0 !important; font-family:inherit; font-size:inherit; }
p.woocommerce-thankyou-order-received::before { display:none !important; }
.pap-ty-check { width:60px; height:60px; border-radius:50%; background:var(--pap-safety-bg,#f6f1ea); color:var(--primary); display:inline-flex; align-items:center; justify-content:center; }
.pap-ty-title { font-family:var(--pap-serif); font-size:40px; line-height:1.15; font-weight:500; color:var(--main); }
.pap-ty-sub { font-size:16px; color:var(--secondary); max-width:560px; line-height:1.6; }
.pap-ty-sub strong { color:var(--main); font-weight:600; overflow-wrap:anywhere; }
/* Récapitulatif en pastilles */
ul.woocommerce-order-overview { display:grid !important; grid-template-columns:repeat(4,minmax(0,1fr)); background:var(--surface); border:0 !important; border-radius:16px; }
ul.woocommerce-order-overview li { min-width:0; border-right:1px solid #e6e6e6 !important; font-size:11px !important; letter-spacing:.12em; line-height:1.4; }
ul.woocommerce-order-overview li strong { font-size:15px !important; overflow-wrap:anywhere; word-break:break-word; }
ul.woocommerce-order-overview li.email { grid-column:span 2; }
ul.woocommerce-order-overview li.date { order:3; } ul.woocommerce-order-overview li.order { order:1; } ul.woocommerce-order-overview li.total { order:2; } ul.woocommerce-order-overview li.email { order:5; } ul.woocommerce-order-overview li.method { order:4; }
ul.woocommerce-order-overview li.email, ul.woocommerce-order-overview li.method { border-top:1px solid #e6e6e6 !important; }
ul.woocommerce-order-overview li.total strong { font-family:var(--pap-serif); font-size:22px !important; font-weight:500; }
/* Et maintenant ? */
.pap-ty-next { margin:0 0 48px; padding:32px 36px; border:1px solid var(--line); border-radius:16px; }
.pap-ty-next h2 { font-family:var(--pap-serif); font-weight:500; font-size:28px; margin:0 0 20px; }
.pap-ty-next ol { list-style:none; margin:0 0 24px; padding:0; display:grid; grid-template-columns:repeat(3,minmax(0,1fr)); gap:20px; }
.pap-ty-next li { display:flex; gap:14px; align-items:flex-start; }
.pap-ty-num { flex-shrink:0; width:30px; height:30px; border-radius:50%; border:1.5px solid var(--primary); color:var(--primary); display:inline-flex; align-items:center; justify-content:center; font-size:13px; font-weight:600; }
.pap-ty-next li strong { display:block; font-size:15px; color:var(--main); margin-bottom:4px; }
.pap-ty-next li p { margin:0; font-size:14px; line-height:1.55; color:var(--secondary); }
.pap-ty-actions { display:flex; gap:12px; flex-wrap:wrap; }
.pap-ty-help { margin:20px 0 0; font-size:13px; color:var(--secondary); }
.pap-ty-help a { color:var(--main); text-decoration:underline; text-underline-offset:3px; }
/* Détail de commande */
.woocommerce-order-details__title, .woocommerce-column__title, .woocommerce-customer-details h2, .wc-block-order-confirmation-additional-fields-wrapper h2, .woocommerce-order h2 { font-family:var(--pap-serif) !important; font-weight:500 !important; font-size:28px !important; margin:0 0 16px !important; }
.woocommerce-table--order-details tfoot tr th, .woocommerce-table--order-details tfoot tr td { font-size:14px !important; font-weight:400 !important; color:var(--secondary) !important; background:transparent !important; }
.woocommerce-table--order-details tfoot tr.pap-total-order_total th, .woocommerce-table--order-details tfoot tr.pap-total-order_total td { font-size:20px !important; font-weight:600 !important; color:var(--main) !important; background:var(--surface) !important; }
.woocommerce-table--order-details tfoot tr.pap-total-order_total td small, .woocommerce-table--order-details .includes_tax { font-size:12px !important; font-weight:400 !important; color:var(--secondary) !important; }
.woocommerce-table--order-details tfoot tr.pap-total-payment_method th, .woocommerce-table--order-details tfoot tr.pap-total-payment_method td { font-size:14px !important; color:var(--secondary) !important; background:transparent !important; }
.woocommerce-table--order-details td.product-name { font-weight:600; color:var(--main); }
.woocommerce-table--order-details .wc-item-meta li { font-weight:400; }
.woocommerce-table--order-details .wc-item-meta strong { font-weight:500; color:var(--secondary); }
.woocommerce-table--order-details .product-quantity { font-weight:400; color:var(--secondary); }
.woocommerce-customer-details address { background:var(--pap-safety-bg,#f6f1ea) !important; border:0 !important; line-height:1.8; }
.woocommerce-customer-details address p { margin:6px 0 0 !important; display:flex; align-items:center; gap:8px; }
.woocommerce-customer-details address p::before { display:none !important; }
.wc-block-order-confirmation-additional-fields-wrapper { margin-top:40px; }
.wc-block-order-confirmation-additional-fields-wrapper table, .wc-block-components-additional-fields-list { width:100%; border:1px solid var(--line) !important; border-radius:12px; border-collapse:separate; overflow:hidden; }
.wc-block-order-confirmation-additional-fields-wrapper th, .wc-block-order-confirmation-additional-fields-wrapper td, .wc-block-components-additional-fields-list dt, .wc-block-components-additional-fields-list dd { padding:14px 18px !important; font-size:14px !important; font-weight:400 !important; color:var(--secondary) !important; border:0 !important; }
.wc-block-order-confirmation-additional-fields-wrapper td:last-child { color:var(--main) !important; font-weight:600 !important; text-align:right; }
@media (max-width:767px){
  .pap-ty-title { font-size:30px; }
  ul.woocommerce-order-overview { grid-template-columns:repeat(2,minmax(0,1fr)); }
  ul.woocommerce-order-overview li { border-right:0 !important; border-bottom:1px solid #e6e6e6 !important; border-top:0 !important; }
  ul.woocommerce-order-overview li.email { grid-column:span 2; }
  .pap-ty-next { padding:24px 20px; }
  .pap-ty-next ol { grid-template-columns:1fr; }
}
/* === Drapeau français / origine === */
.pap-flag{display:inline-block;flex:0 0 auto;border-radius:2px;box-shadow:0 0 0 1px rgba(24,24,24,.12);vertical-align:-1px}
.pap-origin{display:inline-flex;align-items:center;gap:8px;font-size:12px;font-weight:600;letter-spacing:.14em;text-transform:uppercase;line-height:1}
.pap-hero-origin{margin:0 0 18px}
.pap-hero-origin .pap-origin{padding:8px 14px;border-radius:99px;background:rgba(255,255,255,.88);color:#181818;backdrop-filter:blur(4px)}
.pap-pp-origin{margin:10px 0 14px}
.pap-pp-origin .pap-origin{color:#4d4e4f;font-size:11px}
.pap-flag-box{display:inline-flex;align-items:center;justify-content:center;height:100%}
.pap-flag-box .pap-flag{border-radius:3px}
.pap-footer-origin{display:flex;gap:10px;align-items:baseline}
.pap-footer-origin .pap-flag{position:relative;top:2px}
@media (max-width:767px){.pap-hero-origin{margin-bottom:12px}.pap-hero-origin .pap-origin{font-size:10px;padding:6px 11px;letter-spacing:.12em}}

@media (min-width:1200px){.tf-sw-iconbox .sw-pagination-iconbox{display:none}}

/* Logo header agrandi, signature réduite (logo-peauapeau-header.svg) */
#header .pap-h-center img.logo{width:310px !important}
@media (max-width:1199px){#header .pap-h-center img.logo{width:265px !important}}
@media (max-width:991px){#header .pap-h-center img.logo{width:230px !important}}
@media (max-width:575px){#header .pap-h-center img.logo{width:185px !important}}
@media (max-width:374px){#header .pap-h-center img.logo{width:160px !important}}

/* === Bandeau cookies === */
.pap-cc{position:fixed;z-index:9999;left:16px;right:16px;bottom:16px;display:flex;justify-content:center;pointer-events:none}
.pap-cc[hidden]{display:none}
.pap-cc-box{pointer-events:auto;max-width:720px;width:100%;background:#fff;color:#181818;border:1px solid #e9e6e2;border-radius:16px;box-shadow:0 18px 50px rgba(24,24,24,.18);padding:22px 24px}
.pap-cc-title{font-family:'Cormorant Garamond',Georgia,serif;font-size:24px;line-height:1.2;margin:0 0 6px}
.pap-cc-text{font-size:14px;line-height:1.55;color:#4d4e4f;margin:0 0 14px}
.pap-cc-text a{color:#9c5a3c;text-decoration:underline}
.pap-cc-prefs{display:grid;gap:8px;margin:0 0 14px;padding:12px 14px;background:#faf7f3;border-radius:10px}
.pap-cc-prefs[hidden]{display:none}
.pap-cc-opt{display:flex;gap:10px;align-items:flex-start;font-size:14px;line-height:1.4;cursor:pointer}
.pap-cc-opt input{margin-top:3px;accent-color:#9c5a3c}
.pap-cc-btns{display:flex;flex-wrap:wrap;gap:10px;justify-content:flex-end}
.pap-cc-btn{flex:1 1 0;min-width:140px;height:46px;padding:0 18px;border-radius:99px;border:1.5px solid #181818;background:#181818;color:#fff;font-size:14px;font-weight:600;cursor:pointer;transition:background .2s,border-color .2s,color .2s}
.pap-cc-btn:hover{background:#9c5a3c;border-color:#9c5a3c;color:#fff}
.pap-cc-btn.pap-cc-ghost{background:#fff;color:#181818}
.pap-cc-btn.pap-cc-ghost:hover{background:#181818;color:#fff;border-color:#181818}
.pap-cc-btn[hidden]{display:none}
.pap-cc-link{margin-left:16px;font-size:12px;color:inherit;text-decoration:underline}
@media (max-width:575px){.pap-cc{left:10px;right:10px;bottom:76px}.pap-cc-box{padding:18px}.pap-cc-btn{min-width:calc(50% - 5px);height:44px}}

.pap-cc-btn{display:inline-flex;align-items:center;justify-content:center;text-align:center;line-height:1}


/* En-tête : un peu plus de respiration */
#header .wrapper-header { padding-top: 10px; padding-bottom: 10px; }
@media (max-width: 767px) { #header .wrapper-header { padding-top: 5px; padding-bottom: 5px; } }

/* ==========================================================================
   Typographie unifiée (oct. 2026) : Playfair Display pour les titres,
   Raleway (police de la marque) pour le texte et l'interface.
   ========================================================================== */
:root {
	--pap-serif: 'Playfair Display', Georgia, 'Times New Roman', serif;
	--pap-sans: 'Raleway', 'Raleway Fallback', 'Helvetica Neue', Arial, sans-serif;
}
body, .font-2, button, input, select, textarea, .tf-btn, h4, h5, h6 { font-family: var(--pap-sans); }
/* Raleway a des chiffres « elzéviriens » par défaut : chiffres alignés pour les prix, tailles, dates. */
body { font-variant-numeric: lining-nums; font-feature-settings: 'lnum' 1; }
.title-display, h1, h2, h3 { font-family: var(--pap-serif); letter-spacing: -.015em; }
/* Raleway est fine en 400 : 500 pour le texte courant (lisibilité). */
body, p, li, td, th, label, input, select, textarea { font-weight: 500; }
strong, b { font-weight: 700; }

/* Accents manuscrits (police du logo) : uniquement sur quelques mots, toujours en grand. */
:root { --pap-script: 'PAP Script', 'Playfair Display', Georgia, serif; }
.pap-home .ph-hero__title em,
.pap-home .ph-block__title em,
.pap-home.is-editorial .ph-title__light,
.pap-home .ph-picker__name,
.pap-pname-variant {
	font-family: var(--pap-script);
	font-style: normal;
	font-weight: 400;
	letter-spacing: 0;
}
.pap-home .ph-hero__title em { font-size: 1.02em; line-height: 1.1; margin-top: 10px; }
.pap-home .ph-block__title em { font-size: 1.25em; line-height: 1; }
.pap-home.is-editorial .ph-title__light { font-size: .78em; margin-bottom: 2px; color: var(--ph-accent, #9c5a3c); }
.pap-home .ph-picker__name { font-size: 56px; line-height: 1.1; }
@media (max-width: 575px) { .pap-home .ph-picker__name { font-size: 46px; } }
/* ==========================================================================
   Page Livraisons & retours (.pap-lr)
   ========================================================================== */
.pap-content.entry:has(.pap-lr) { max-width: 1080px; }
.pap-lr { --lr-cream: #f6f1ea; --lr-line: #e7ded2; --lr-accent: #9c5a3c; padding-bottom: 40px; }
.pap-content.entry .pap-lr ul, .pap-content.entry .pap-lr ol { list-style: none; margin: 0; padding: 0; }
.pap-content.entry .pap-lr li { margin: 0; }
.pap-content.entry .pap-lr h2 { margin: 0 0 18px; font-family: var(--pap-serif); font-weight: 700; font-size: clamp(28px, 3.2vw, 40px); line-height: 1.12; letter-spacing: -.02em; }
.pap-lr .pap-lr-eyebrow { margin: 0 0 12px; font-size: 11px; font-weight: 600; letter-spacing: .28em; text-transform: uppercase; color: var(--lr-accent); }
.pap-lr .pap-lr-sec { padding: clamp(56px, 7vw, 88px) 0 0; }
.pap-lr .pap-lr-lead { max-width: 680px; font-size: 17px; }
.pap-content.entry .pap-lr a.tf-btn { text-decoration: none; }

/* Les 3 chiffres clés */
.pap-lr .pap-lr-keys { display: grid; gap: 16px; margin: 8px 0 32px; }
.pap-lr .pap-lr-keys li { display: flex; flex-direction: column; gap: 4px; padding: 28px 24px; border: 1px solid var(--lr-line); border-radius: 14px; background: #fff; text-align: center; }
.pap-lr .pap-lr-key-n { font-family: var(--pap-serif); font-weight: 700; font-size: 40px; line-height: 1.1; color: var(--lr-accent); }
.pap-lr .pap-lr-key-t { font-weight: 700; font-size: 16px; color: var(--main); }
.pap-lr .pap-lr-key-d { font-size: 14px; color: var(--secondary); }
@media (min-width: 768px) { .pap-lr .pap-lr-keys { grid-template-columns: repeat(3, 1fr); gap: 24px; } }

/* Encart suivi de colis */
.pap-lr .pap-lr-track { display: grid; gap: 20px; align-items: center; padding: clamp(28px, 4vw, 44px); border-radius: 14px; background: var(--lr-cream); }
.pap-content.entry .pap-lr .pap-lr-track h2 { margin-bottom: 10px; font-size: clamp(26px, 2.6vw, 32px); }
.pap-lr .pap-lr-track p { margin: 0; }
.pap-lr .pap-lr-track > div > p:last-child { max-width: 520px; }
@media (min-width: 768px) { .pap-lr .pap-lr-track { grid-template-columns: 1fr auto; gap: 40px; } }

/* Frise de livraison */
.pap-lr .pap-lr-steps { display: grid; gap: 0; margin: 28px 0 40px; counter-reset: lr; }
.pap-lr .pap-lr-steps li { position: relative; display: flex; flex-direction: column; gap: 6px; padding: 0 0 28px 56px; counter-increment: lr; }
.pap-lr .pap-lr-steps li::before { content: counter(lr, decimal-leading-zero); position: absolute; left: 0; top: -4px; font-family: var(--pap-serif); font-weight: 700; font-size: 26px; color: var(--lr-accent); }
.pap-lr .pap-lr-steps li::after { content: ""; position: absolute; left: 15px; top: 34px; bottom: 6px; width: 1px; background: var(--lr-line); }
.pap-lr .pap-lr-steps li:last-child::after { display: none; }
.pap-lr .pap-lr-steps strong { font-size: 17px; color: var(--main); }
.pap-lr .pap-lr-steps span { font-size: 15px; color: var(--secondary); line-height: 1.6; }
@media (min-width: 992px) {
	.pap-lr .pap-lr-steps { grid-template-columns: repeat(4, 1fr); gap: 32px; }
	.pap-lr .pap-lr-steps li { padding: 52px 0 0; border-top: 1px solid var(--lr-line); }
	.pap-lr .pap-lr-steps li::before { top: 14px; }
	.pap-lr .pap-lr-steps li::after { display: none; }
}

/* Tableau des tarifs */
.pap-lr .pap-lr-table { overflow-x: auto; border: 1px solid var(--lr-line); border-radius: 14px; background: #fff; }
.pap-content.entry .pap-lr table { margin: 0; font-size: 15px; min-width: 620px; }
.pap-content.entry .pap-lr th, .pap-content.entry .pap-lr td { border: 0; border-bottom: 1px solid var(--lr-line); padding: 18px 20px; vertical-align: top; }
.pap-content.entry .pap-lr tbody tr:last-child th, .pap-content.entry .pap-lr tbody tr:last-child td { border-bottom: 0; }
.pap-content.entry .pap-lr thead th { font-size: 11px; font-weight: 600; letter-spacing: .2em; text-transform: uppercase; color: var(--secondary); background: #fbf9f6; }
.pap-content.entry .pap-lr tbody th { font-weight: 700; color: var(--main); width: 32%; }
.pap-content.entry .pap-lr td strong { color: var(--lr-accent); }

/* Retours en 3 cartes */
.pap-lr .pap-lr-cards { display: grid; gap: 16px; margin: 28px 0 24px; }
.pap-lr .pap-lr-cards li { display: flex; flex-direction: column; gap: 8px; padding: 28px; border-radius: 14px; background: var(--lr-cream); }
.pap-lr .pap-lr-card-n { display: inline-flex; align-items: center; justify-content: center; width: 40px; height: 40px; margin-bottom: 8px; border-radius: 50%; background: var(--lr-accent); color: #fff; font-family: var(--pap-serif); font-weight: 700; font-size: 18px; }
.pap-lr .pap-lr-cards strong { font-size: 18px; color: var(--main); }
.pap-lr .pap-lr-cards span:not(.pap-lr-card-n) { font-size: 15px; line-height: 1.6; color: var(--secondary); }
@media (min-width: 768px) { .pap-lr .pap-lr-cards { grid-template-columns: repeat(3, 1fr); gap: 24px; } }
.pap-lr .pap-lr-note { max-width: 760px; font-size: 14px; color: var(--secondary); }

/* Cas particuliers */
.pap-lr .pap-lr-faq { margin-top: 20px; border-top: 1px solid var(--lr-line); }
.pap-lr .pap-lr-faq details { border-bottom: 1px solid var(--lr-line); }
.pap-lr .pap-lr-faq summary { display: flex; justify-content: space-between; gap: 16px; padding: 22px 0; cursor: pointer; list-style: none; font-family: var(--pap-serif); font-weight: 700; font-size: 19px; color: var(--main); }
.pap-lr .pap-lr-faq summary::-webkit-details-marker { display: none; }
.pap-lr .pap-lr-faq summary::after { content: "+"; flex: none; font-family: var(--pap-sans); font-weight: 300; font-size: 24px; line-height: 1; transition: transform .2s; }
.pap-lr .pap-lr-faq details[open] summary::after { transform: rotate(45deg); }
.pap-lr .pap-lr-faq details p { margin: -4px 0 22px; max-width: 720px; color: var(--secondary); }

/* Aide */
.pap-lr .pap-lr-help { margin-top: clamp(56px, 7vw, 88px); padding: clamp(36px, 5vw, 56px) 24px; border-radius: 14px; background: var(--lr-cream); text-align: center; }
.pap-lr .pap-lr-help p { margin: 0 0 20px; }
.pap-content.entry .pap-lr .pap-lr-keys { margin: 8px 0 32px; }
.pap-content.entry .pap-lr .pap-lr-steps { margin: 32px 0 44px; }
.pap-content.entry .pap-lr .pap-lr-cards { margin: 28px 0 24px; }
.pap-content.entry .pap-lr tbody th { background: #fff; }

/* ==========================================================================
   Charte des pages de contenu (pages + articles) — alignée sur Livraisons & retours
   ========================================================================== */
.pap-page-title h1 { font-family: var(--pap-serif); font-weight: 700; letter-spacing: -.02em; }
.pap-content.entry { --ce-cream: #f6f1ea; --ce-line: #e7ded2; --ce-accent: #9c5a3c; max-width: 780px; padding-bottom: 24px; font-size: 16px; line-height: 1.8; color: var(--secondary); }
.pap-content.entry > p:first-child, .pap-content.entry > .pap-toc + p { font-size: 18px; line-height: 1.75; color: var(--main); }
.pap-content.entry p { margin: 0 0 1.1em; }
.pap-content.entry strong { color: var(--main); font-weight: 700; }
.pap-content.entry a { color: var(--main); text-decoration: underline; text-decoration-color: var(--ce-accent); text-underline-offset: 3px; text-decoration-thickness: 1px; }
.pap-content.entry a:hover { color: var(--ce-accent); }

/* Titres */
.pap-content.entry h2 { position: relative; margin: 64px 0 18px; padding-top: 22px; font-family: var(--pap-serif); font-weight: 700; font-size: clamp(26px, 3vw, 36px); line-height: 1.15; letter-spacing: -.02em; color: var(--main); }
.pap-content.entry h2::before { content: ""; position: absolute; top: 0; left: 0; width: 36px; height: 2px; background: var(--ce-accent); }
.pap-content.entry > h2:first-child { margin-top: 8px; }
.pap-content.entry h3 { margin: 36px 0 10px; font-family: var(--pap-sans); font-weight: 700; font-size: 19px; line-height: 1.35; letter-spacing: 0; color: var(--main); }
.pap-content.entry h4, .pap-content.entry h5, .pap-content.entry h6 { margin: 32px 0 10px; font-family: var(--pap-sans); font-size: 12px; font-weight: 700; letter-spacing: .24em; text-transform: uppercase; color: var(--ce-accent); }

/* Listes */
.pap-content.entry ul:not([class]), .pap-content.entry ol:not([class]) { margin: 0 0 1.4em; padding: 0; list-style: none; }
.pap-content.entry :is(ul,ol):not([class]) > li { position: relative; margin: 0 0 .6em; padding-left: 26px; }
.pap-content.entry ul:not([class]) > li::before { content: ""; position: absolute; left: 4px; top: .72em; width: 7px; height: 7px; border-radius: 50%; background: var(--ce-accent); }
.pap-content.entry ol:not([class]) { counter-reset: ce; }
.pap-content.entry ol:not([class]) > li { counter-increment: ce; padding-left: 34px; }
.pap-content.entry ol:not([class]) > li::before { content: counter(ce); position: absolute; left: 0; top: .15em; display: inline-flex; align-items: center; justify-content: center; width: 22px; height: 22px; border-radius: 50%; background: var(--ce-cream); color: var(--ce-accent); font-family: var(--pap-serif); font-weight: 700; font-size: 13px; line-height: 1; }
.pap-content.entry li > p { margin: 0; }

/* Médias, citations, encadrés */
.pap-content.entry img { border-radius: 14px; margin: 32px auto; }
.pap-content.entry blockquote { margin: 36px 0; padding: 28px 32px; border: 0; border-left: 3px solid var(--ce-accent); border-radius: 0 14px 14px 0; background: var(--ce-cream); }
.pap-content.entry blockquote p { margin: 0; font-family: var(--pap-serif); font-style: italic; font-size: 21px; line-height: 1.5; color: var(--main); }
.pap-content.entry .pap-callout { margin: 28px 0; padding: 20px 24px; border-radius: 14px; background: var(--ce-cream); border-left: 3px solid var(--ce-accent); color: var(--main); }
.pap-content.entry hr { margin: 48px 0; border: 0; border-top: 1px solid var(--ce-line); }
.pap-content.entry a[data-pap-btn] { display: inline-flex; align-items: center; padding: 14px 28px; border-radius: 999px; background: var(--main); color: #fff; font-size: 14px; font-weight: 600; letter-spacing: .02em; text-decoration: none; text-transform: none; }
.pap-content.entry a[data-pap-btn]:hover { background: var(--ce-accent); color: #fff; }

/* Tableaux */
.pap-content.entry table { width: 100%; margin: 28px 0; border-collapse: separate; border-spacing: 0; border: 1px solid var(--ce-line); border-radius: 14px; overflow: hidden; font-size: 15px; background: #fff; }
.pap-content.entry th, .pap-content.entry td { border: 0; border-bottom: 1px solid var(--ce-line); padding: 14px 18px; text-align: left; vertical-align: top; }
.pap-content.entry tr:last-child > th, .pap-content.entry tr:last-child > td { border-bottom: 0; }
.pap-content.entry thead th { background: #fbf9f6; font-size: 11px; font-weight: 700; letter-spacing: .18em; text-transform: uppercase; color: var(--secondary); }

/* Accordéons (FAQ) */
.pap-content.entry .pap-faq-list { margin: 8px 0 40px; border-top: 1px solid var(--ce-line); }
.pap-content.entry details { border-bottom: 1px solid var(--ce-line); }
.pap-content.entry summary { display: flex; justify-content: space-between; align-items: center; gap: 20px; padding: 22px 0; cursor: pointer; list-style: none; font-family: var(--pap-serif); font-weight: 700; font-size: 19px; line-height: 1.35; color: var(--main); }
.pap-content.entry summary::-webkit-details-marker { display: none; }
.pap-content.entry summary::after { content: "+"; flex: none; font-family: var(--pap-sans); font-weight: 300; font-size: 26px; line-height: 1; color: var(--ce-accent); transition: transform .2s; }
.pap-content.entry details[open] summary::after { transform: rotate(45deg); }
.pap-content.entry details > *:not(summary) { margin-top: -4px; }
.pap-content.entry details > p:last-child, .pap-content.entry details > ul:last-child { margin-bottom: 22px; }
.pap-content.entry .pap-calc { margin: 24px 0; padding: clamp(24px, 4vw, 36px); border: 0; border-radius: 14px; background: var(--ce-cream); }

/* Pages légales */
.pap-content.entry .pap-toc { margin: 0 0 48px; padding: 28px 32px; border-radius: 14px; background: var(--ce-cream); }
.pap-content.entry .pap-toc-title { margin: 0 0 12px; font-size: 11px; font-weight: 700; letter-spacing: .24em; text-transform: uppercase; color: var(--ce-accent); }
.pap-content.entry .pap-toc ol { columns: 2 280px; column-gap: 32px; margin: 0; padding: 0; list-style: none; }
.pap-content.entry .pap-toc li { break-inside: avoid; margin: 0 0 6px; padding-left: 0; font-size: 14px; line-height: 1.5; }
.pap-content.entry .pap-toc li::before { display: none; }
.pap-content.entry .pap-toc a { text-decoration: none; }
.pap-content.entry .pap-toc a:hover { text-decoration: underline; }
.pap-content.entry .pap-legal-date { margin-top: 48px; font-size: 13px; color: var(--secondary); }
.pap-content.entry [id] { scroll-margin-top: 110px; }

/* Contact */
.pap-content.entry:has(.pap-contact-grid) { max-width: 1080px; }
.pap-content.entry:has(.pap-contact-grid) > p:first-child { max-width: 680px; margin: 0 auto 40px; text-align: center; }
.pap-content.entry .pap-contact-grid { display: grid; gap: 24px; align-items: start; }
@media (min-width: 992px) { .pap-content.entry .pap-contact-grid { grid-template-columns: 7fr 4fr; gap: 32px; } }
.pap-content.entry .pap-contact-card { padding: clamp(24px, 4vw, 40px); border-radius: 14px; }
.pap-content.entry .pap-contact-card--form { border: 1px solid var(--ce-line); background: #fff; }
.pap-content.entry .pap-contact-card--info { background: var(--ce-cream); }
.pap-content.entry .pap-contact-card h2 { margin-top: 0; font-size: clamp(24px, 2.4vw, 30px); }
.pap-content.entry .pap-contact-hours { margin-top: 18px; font-size: 14px; }
.pap-content.entry .pap-contact-links { display: flex; flex-direction: column; gap: 8px; margin: 18px 0 0; padding-top: 18px; border-top: 1px solid var(--ce-line); font-size: 14px; }

/* Encart d'aide final */
.pap-page-help { max-width: 1080px; margin: clamp(56px, 7vw, 88px) auto clamp(56px, 7vw, 96px); padding: clamp(36px, 5vw, 56px) 24px; border-radius: 14px; background: #f6f1ea; text-align: center; }
.pap-page-help-eyebrow { margin: 0 0 10px; font-size: 11px; font-weight: 700; letter-spacing: .24em; text-transform: uppercase; color: #9c5a3c; }
.pap-page-help h2 { margin: 0 0 10px; font-family: var(--pap-serif); font-weight: 700; font-size: clamp(26px, 3vw, 34px); letter-spacing: -.02em; }
.pap-page-help p { margin: 0 0 22px; color: var(--secondary); }
.pap-page-help-actions { display: flex; flex-wrap: wrap; justify-content: center; align-items: center; gap: 16px 28px; }
.pap-page-help-link { font-weight: 600; color: var(--main); text-decoration: none; border-bottom: 1px solid currentColor; padding-bottom: 2px; }
.pap-page-help-link::after { content: " \2192"; }

/* La page Livraisons & retours garde sa mise en page spécifique */
.pap-content.entry .pap-lr h2::before { display: none; }
.pap-content.entry .pap-lr h2 { padding-top: 0; }




.pap-content.entry .pap-lr table { border: 0; border-radius: 0; }
.pap-content.entry .pap-lr details > *:not(summary) { margin-top: 0; }
.pap-content.entry .pap-contact-card ul { margin: 0; }
.pap-content.entry .pap-toc ol, .pap-content.entry .pap-toc li { list-style: none; }
.pap-content.entry .pap-toc li::marker { content: ''; }

.pap-content.entry .pap-contact-card--form .pap-form { margin: 0; padding: 0; border: 0; background: transparent; box-shadow: none; }

.pap-chapter-fig { margin: 28px 0 0; }
.pap-chapter-fig img { width: 100%; height: auto; border-radius: 14px; margin: 0 !important; }
.pap-chapter-fig figcaption { margin-top: 10px; font-size: 13px; color: var(--secondary); }
.pap-story-fig--now img { object-position: center 30%; }

/* Pied de page : bouton Nous contacter */
.footer .pap-footer-contact { display: inline-flex; align-items: center; gap: 8px; margin-top: 14px; padding: 9px 18px; border: 1px solid var(--main); border-radius: 999px; font-size: 13px; font-weight: 600; color: var(--main); text-decoration: none; transition: background .2s, color .2s; }
.footer .pap-footer-contact .icon { font-size: 12px; }
.footer .pap-footer-contact:hover { background: var(--main); color: #fff; }
.footer .footer-info:empty { display: none; }

.pap-content.entry a.tf-btn, .pap-content.entry a.tf-btn:hover, .pap-content.entry a.tf-btn .text { color: #fff; text-decoration: none; }
.footer .pap-footer-contact { align-self: flex-start; width: auto; max-width: max-content; }

/* Titres Playfair allégés (graisse 500 au lieu de 700) */
.pap-page-title h1, .title-display, h1, h2, h3.heading, .pap-content.entry h2, .pap-content.entry summary, .pap-page-help h2, .pap-content.entry .pap-lr h2, .pap-lr .pap-lr-key-n, .pap-lr .pap-lr-faq summary, .pap-lr .pap-lr-steps li::before, .pap-lr .pap-lr-card-n, .pap-content.entry ol:not([class]) > li::before { font-weight: 500; }
.pap-page-title h1 { letter-spacing: -.01em; }

/* Carte de lancement du guide des tailles interactif */
.pap-calc--launch { text-align: center; }
.pap-calc--launch .pap-calc-visual { display: flex; align-items: center; justify-content: center; gap: 18px; margin: 0 0 18px; }
.pap-calc--launch .pap-calc-cm { font-family: var(--pap-serif); font-weight: 500; font-size: 40px; line-height: 1; color: var(--main); }
.pap-calc--launch .pap-calc-cm small { margin-left: 4px; font-family: var(--pap-sans); font-size: 14px; color: var(--secondary); }
.pap-calc--launch .pap-calc-arrow { font-size: 22px; color: #9c5a3c; }
.pap-calc--launch .pap-calc-size { display: inline-flex; align-items: center; justify-content: center; width: 64px; height: 64px; border-radius: 50%; background: #9c5a3c; color: #fff; font-family: var(--pap-serif); font-size: 28px; }
.pap-calc--launch .pap-calc-title { margin: 0 0 6px; font-family: var(--pap-serif); font-weight: 500; font-size: 24px; color: var(--main); }
.pap-calc--launch .pap-calc-help { max-width: 380px; margin: 0 auto 22px; font-size: 15px; }
.pap-calc--launch .tf-btn { color: #fff; text-decoration: none; }
.pap-sg .pap-sg-shop { display: inline-flex; margin-top: 14px; color: #fff; text-decoration: none; }

/* Pictos de la marque (ancien site), teintés par masque */
.pap-picto { display: inline-block; flex: none; background: currentColor; -webkit-mask: var(--pic) center / contain no-repeat; mask: var(--pic) center / contain no-repeat; }
.pap-picto--cigogne { --pic: url(../images/pap/picto-cigogne-2x.png); width: 46px; height: 27px; }
.pap-picto--epingle { --pic: url(../images/pap/picto-epingle-2x.png); width: 30px; height: 31px; }
.pap-picto--babyphone { --pic: url(../images/pap/picto-babyphone-2x.png); width: 20px; height: 32px; }

/* Accueil : réassurance en 3 pictos */
.pap-home .ph-trust__list--pictos { grid-template-columns: 1fr; gap: 18px; }
.pap-home .ph-trust__list--pictos li, .pap-home .ph-trust__list--pictos li > a { display: flex; align-items: center; gap: 16px; color: var(--ph-muted, #5b5c5d); text-decoration: none; }
.pap-home .ph-trust__list--pictos .pap-picto { color: #9c5a3c; }
.pap-home .ph-trust__list--pictos li > span:first-child, .pap-home .ph-trust__list--pictos a > span:first-child { width: 46px; }
.pap-home .ph-trust__list--pictos strong .pap-flag { vertical-align: -1px; margin-left: 4px; }
.pap-home .ph-trust__list--pictos a:hover strong { color: #9c5a3c; }
@media (min-width: 768px) { .pap-home .ph-trust__list--pictos { grid-template-columns: repeat(3, auto); justify-content: space-between; } }

/* Panier : la cigogne apporte le colis */
.modal-shopping-cart .pap-ship-flight { margin: 4px 0 18px; padding: 16px 18px 14px; border-radius: 14px; background: #f6f1ea; }
.pap-ship-track { position: relative; height: 34px; margin-bottom: 10px; }
.pap-ship-track::before { content: ""; position: absolute; left: 0; right: 26px; top: 21px; border-top: 1.5px dashed rgba(156, 90, 60, .45); }
.pap-ship-stork { position: absolute; left: 0; top: 2px; color: #9c5a3c; animation: pap-stork-fly 2.6s cubic-bezier(.45, .05, .25, 1) .3s both, pap-stork-bob 1.6s ease-in-out 2.9s infinite; }
.pap-ship-home { position: absolute; right: 0; top: 10px; width: 20px; height: 20px; border-radius: 50%; background: #9c5a3c; box-shadow: 0 0 0 5px rgba(156, 90, 60, .15); }
.pap-ship-home::after { content: "\2713"; position: absolute; inset: 0; display: flex; align-items: center; justify-content: center; color: #fff; font-size: 11px; font-weight: 700; }
.pap-ship-text { margin: 0; font-size: 13px; line-height: 1.45; color: var(--secondary); }
.pap-ship-text strong { display: block; font-size: 14px; color: var(--main); }
@keyframes pap-stork-fly { from { left: 0; opacity: 0; } 12% { opacity: 1; } to { left: calc(100% - 82px); opacity: 1; } }
@keyframes pap-stork-bob { 0%, 100% { transform: translateY(0); } 50% { transform: translateY(-3px); } }
.modal-shopping-cart:not(.show) .pap-ship-stork { animation: none; }
@media (prefers-reduced-motion: reduce) { .pap-ship-stork { animation: none; left: calc(100% - 82px); } }
/* Sans la colonne de suggestions, le panier garde une largeur confortable */
.modal-shopping-cart .modal-content { max-width: 460px !important; }
.modal-shopping-cart .pap-ship-flight { margin: 6px 20px 18px; }

/* Réassurance accueil : pictos plus grands, empilés sur mobile */
.pap-home .ph-trust__list--pictos { grid-template-columns: 1fr !important; gap: 0; padding: 8px 0; }
.pap-home .ph-trust__list--pictos li { padding: 16px 4px; border-bottom: 1px solid var(--ph-line, #e7ded2); font-size: 14px; }
.pap-home .ph-trust__list--pictos li:last-child { border-bottom: 0; }
.pap-home .ph-trust__list--pictos li, .pap-home .ph-trust__list--pictos li > a { gap: 20px; }
.pap-home .ph-trust__list--pictos li > span:first-child, .pap-home .ph-trust__list--pictos a > span:first-child { width: 64px; display: inline-flex; justify-content: center; }
.pap-home .ph-trust__list--pictos strong { font-size: 16px; margin-bottom: 2px; }
.pap-home .ph-trust__list--pictos .pap-picto--cigogne { width: 64px; height: 38px; }
.pap-home .ph-trust__list--pictos .pap-picto--epingle { width: 42px; height: 43px; }
.pap-home .ph-trust__list--pictos .pap-picto--babyphone { width: 28px; height: 45px; }
@media (min-width: 992px) {
	.pap-home .ph-trust__list--pictos { grid-template-columns: repeat(3, auto) !important; justify-content: space-between; gap: 32px; padding: 36px 0; }
	.pap-home .ph-trust__list--pictos li { padding: 0; border: 0; font-size: 15px; }
	.pap-home .ph-trust__list--pictos li, .pap-home .ph-trust__list--pictos li > a { gap: 22px; }
	.pap-home .ph-trust__list--pictos li > span:first-child, .pap-home .ph-trust__list--pictos a > span:first-child { width: 84px; }
	.pap-home .ph-trust__list--pictos strong { font-size: 18px; }
	.pap-home .ph-trust__list--pictos .pap-picto--cigogne { width: 84px; height: 49px; }
	.pap-home .ph-trust__list--pictos .pap-picto--epingle { width: 54px; height: 55px; }
	.pap-home .ph-trust__list--pictos .pap-picto--babyphone { width: 36px; height: 58px; }
}
/* Mobile et tablette : pages de contenu sans filets */
@media (max-width: 991px) {
	.pap-content.entry h2::before { display: none; }
	.pap-content.entry h2 { padding-top: 0; margin-top: 44px; }
	.pap-content.entry .pap-faq-list, .pap-content.entry details { border: 0; }
	.pap-content.entry summary { padding: 14px 0; }
	.pap-content.entry hr { display: none; }
	.pap-lr .pap-lr-keys li { border-color: transparent; background: #f6f1ea; }
	.pap-lr .pap-lr-steps li::after { display: none; }
	.pap-lr .pap-lr-table { border-color: transparent; }
	.pap-content.entry .pap-lr th, .pap-content.entry .pap-lr td { border-bottom: 0; }
	.pap-lr .pap-lr-faq, .pap-lr .pap-lr-faq details { border: 0; }
	.pap-content.entry table, .pap-content.entry th, .pap-content.entry td { border-color: transparent; }
	.pap-content.entry tbody tr:nth-child(odd) { background: #fbf9f6; }
	.pap-content.entry .pap-contact-links { border-top: 0; padding-top: 0; }
	.pap-chapter, .pap-story-chapters { border-left: 0 !important; }
}
/* Sans filets, sur tous les écrans */

	.pap-content.entry h2::before { display: none; }
	.pap-content.entry h2 { padding-top: 0; margin-top: 44px; }
	.pap-content.entry .pap-faq-list, .pap-content.entry details { border: 0; }
	.pap-content.entry summary { padding: 14px 0; }
	.pap-content.entry hr { display: none; }
	.pap-lr .pap-lr-keys li { border-color: transparent; background: #f6f1ea; }
	.pap-lr .pap-lr-steps li::after { display: none; }
	.pap-lr .pap-lr-table { border-color: transparent; }
	.pap-content.entry .pap-lr th, .pap-content.entry .pap-lr td { border-bottom: 0; }
	.pap-lr .pap-lr-faq, .pap-lr .pap-lr-faq details { border: 0; }
	.pap-content.entry table, .pap-content.entry th, .pap-content.entry td { border-color: transparent; }
	.pap-content.entry tbody tr:nth-child(odd) { background: #fbf9f6; }
	.pap-content.entry .pap-contact-links { border-top: 0; padding-top: 0; }
	.pap-chapter, .pap-story-chapters { border-left: 0 !important; }


.pap-lr .pap-lr-steps li { border-top: 0 !important; }
.pap-content.entry .pap-toc { border: 0; }

/* Mode d'emploi : étapes illustrées */
.pap-content.entry:has(.pap-howto) { max-width: 1080px; }
.pap-content.entry:has(.pap-howto) > *:not(.pap-howto) { max-width: 780px; margin-left: auto; margin-right: auto; }
.pap-content.entry ol.pap-howto { display: grid; gap: 16px; margin: 28px 0 56px; padding: 0; list-style: none; counter-reset: none; }
.pap-content.entry .pap-howto-step { display: grid; grid-template-columns: 38% 1fr; gap: 18px; align-items: center; margin: 0; padding: 14px; border-radius: 14px; background: #fbf9f6; }
.pap-content.entry .pap-howto-step::before { display: none; }
.pap-howto-fig { margin: 0; aspect-ratio: 1 / 2; display: flex; align-items: flex-end; justify-content: center; border-radius: 10px; background: #fff; overflow: hidden; }
.pap-howto-fig img { width: 100%; height: 100%; object-fit: contain; object-position: center bottom; margin: 0 !important; border-radius: 0 !important; }
.pap-howto-ph { align-self: center; font-family: var(--pap-serif); font-size: 32px; color: #d8c3a5; }
.pap-howto-txt { display: flex; flex-direction: column; gap: 4px; }
.pap-howto-n { display: inline-flex; align-items: center; justify-content: center; width: 30px; height: 30px; margin-bottom: 6px; border-radius: 50%; background: #9c5a3c; color: #fff; font-family: var(--pap-serif); font-size: 15px; }
.pap-howto-txt strong { font-size: 17px; line-height: 1.3; color: var(--main); }
.pap-howto-txt span:last-child { font-size: 14px; line-height: 1.55; color: var(--secondary); }
@media (min-width: 992px) {
	.pap-content.entry ol.pap-howto { grid-template-columns: repeat(5, 1fr); gap: 20px; }
	.pap-content.entry .pap-howto-step { grid-template-columns: 1fr; align-items: start; padding: 16px 16px 22px; text-align: center; }
	.pap-howto-txt { align-items: center; }
}
.pap-content.entry ul.pap-checks { margin: 0 0 28px; padding: 0; list-style: none; }
.pap-content.entry ul.pap-checks li { position: relative; margin: 0 0 12px; padding-left: 34px; }
.pap-content.entry ul.pap-checks li::before { content: "\2713"; position: absolute; left: 0; top: 2px; display: inline-flex; align-items: center; justify-content: center; width: 22px; height: 22px; border-radius: 50%; background: #f6f1ea; color: #9c5a3c; font-size: 12px; font-weight: 700; }
/* Mode d'emploi v3 : 3 gestes, bascule Maman / Papa */
.pap-howto-switch { display: inline-flex; gap: 4px; margin: 4px 0 0; padding: 4px; border-radius: 999px; background: #f6f1ea; }
.pap-content.entry:has(.pap-howto) > .pap-howto-switch { display: flex; width: max-content; max-width: 100%; }
.pap-howto-switch button { min-width: 96px; padding: 9px 20px; border: 0; border-radius: 999px; background: transparent; color: var(--main); font: 500 15px/1 var(--pap-sans); cursor: pointer; transition: background .2s, color .2s; }
.pap-howto-switch button.is-active { background: #9c5a3c; color: #fff; }
.pap-howto-switch button:focus-visible { outline: 2px solid #9c5a3c; outline-offset: 2px; }
.pap-howto--3 .pap-howto-fig { aspect-ratio: 1 / 1; align-items: center; }
.pap-howto--3 .pap-howto-fig img { object-position: center; }
.pap-howto[data-pap-who="maman"] .pap-howto-img--papa, .pap-howto[data-pap-who="papa"] .pap-howto-img--maman { display: none; }
@media (min-width: 992px) {
	.pap-content.entry ol.pap-howto.pap-howto--3 { grid-template-columns: repeat(3, 1fr); gap: 24px; }
	.pap-howto--3 .pap-howto-txt strong { font-size: 18px; }
	.pap-howto--3 .pap-howto-txt span:last-child { font-size: 15px; max-width: 30ch; }
}
/* Cartes produit : titre et prix un peu plus grands, sans pastille */
body .card-product .card-product-info .pap-card-variant { font-size: 29px; line-height: 1.12; }
body .card-product .card-product-info .pap-card-base { font-size: 11.5px; }
body .card-product .card-product-info .price { display: block; margin-top: 4px; font-size: 17px; font-weight: 500; }
@media (max-width: 575px) {
	body .card-product .card-product-info .pap-card-variant { font-size: 24px; }
	body .card-product .card-product-info .price { font-size: 15.5px; }
}
body .card-product .list-color-product { display: none; }
/* ===== Page panier : charte éditoriale ===== */
.pap-ship-flight--page { margin: 0 0 30px; padding: 22px 26px 20px; border-radius: 18px; background: #f6f1ea; }
.pap-ship-flight--page .pap-ship-text { font-size: 14px; }
.pap-ship-flight--page .pap-ship-text strong { margin-bottom: 2px; font-family: var(--pap-serif); font-size: 20px; font-weight: 500; }
.pap-cart-page .tf-table-page-cart { border-collapse: separate; border-spacing: 0 12px; margin-top: -12px; }
.pap-cart-page .tf-table-page-cart thead th { padding: 0 12px 4px; border: 0 !important; font-family: var(--pap-sans); font-size: 11.5px; font-weight: 600; letter-spacing: .16em; text-transform: uppercase; color: var(--secondary); }
.pap-cart-page .tf-table-page-cart thead th:first-child { padding-left: 18px; }
.pap-cart-page .tf-cart-item td { padding: 18px 12px; border: 0 !important; background: #fbf9f6; vertical-align: middle; }
.pap-cart-page .tf-cart-item td:first-child { padding-left: 18px; border-radius: 16px 0 0 16px; }
.pap-cart-page .tf-cart-item td:last-child { padding-right: 18px; border-radius: 0 16px 16px 0; }
.pap-cart-page .tf-cart-item .img-box { flex: 0 0 auto; width: 84px; }
.pap-cart-page .tf-cart-item .img-box img { width: 84px; height: 108px; object-fit: cover; border-radius: 10px; }
.pap-cart-page .cart-title { display: flex; flex-direction: column; gap: 2px; text-decoration: none; }
.pap-cart-page .cart-title .pap-card-base { font-size: 10.5px; }
.pap-cart-page .cart-title .pap-card-variant { font-size: 25px; line-height: 1.1; }
.pap-cart-page .cart-title:hover .pap-card-variant { color: #9c5a3c; }
.pap-cart-page .variant-box { margin-top: 4px; font-size: 13px; }
.pap-cart-page .cart-price, .pap-cart-page .cart-total { font-size: 16px; font-weight: 500; }
.pap-cart-page .wg-quantity { height: 44px; border: 1px solid #e6dccf; border-radius: 999px; background: #fff; }
.pap-cart-page .wg-quantity .btn-quantity { width: 38px; border-radius: 50%; font-size: 18px; color: var(--main); }
.pap-cart-page .wg-quantity .btn-quantity:hover { color: #9c5a3c; }
.pap-cart-page .remove-cart .remove { display: inline-flex; align-items: center; justify-content: center; width: 38px; height: 38px; border-radius: 50%; font-size: 14px; color: var(--secondary); transition: background .2s, color .2s; }
.pap-cart-page .remove-cart .remove:hover { background: #f6f1ea; color: #9c5a3c; }
.pap-cart-page .ip-discount-code { display: flex; align-items: center; gap: 8px; margin-top: 18px; padding: 5px 5px 5px 22px; border: 1px solid #e6dccf !important; border-radius: 999px; background: #fff; }
.pap-cart-page .ip-discount-code input { flex: 1; min-width: 0; height: 44px; padding: 0; border: 0 !important; background: transparent; box-shadow: none !important; font-size: 14px; }
.pap-cart-page .ip-discount-code .tf-btn { height: 44px; padding: 0 26px; border-radius: 999px; background: var(--main); color: #fff; font-weight: 500; }
.pap-cart-page .ip-discount-code .tf-btn:hover { background: #9c5a3c; }
/* Récapitulatif */
body .cart_totals.box-order { padding: 30px 28px; border: 0; border-radius: 20px; background: #f6f1ea; }
body .cart_totals.box-order > * { border: 0 !important; }
body .cart_totals .title { margin-bottom: 20px; font-family: var(--pap-serif); font-size: 27px; font-weight: 500; }
body .cart_totals .subtotal { padding: 0 0 18px; font-size: 15px; }
body .cart_totals .ship { display: block; padding: 0 0 18px; }
body .cart_totals .ship > .text-button { display: block; margin-bottom: 10px; font-size: 11.5px; font-weight: 600; letter-spacing: .16em; text-transform: uppercase; color: var(--secondary); }
body .cart_totals .ship-item { position: relative; margin: 0 0 8px; padding: 0; border: 0; }
body .cart_totals .ship-item input[type=radio] { position: absolute; width: 1px; height: 1px; opacity: 0; pointer-events: none; }
body .cart_totals .ship-item label { position: relative; display: flex; align-items: center; justify-content: space-between; gap: 12px; width: 100%; margin: 0; padding: 13px 16px 13px 46px; border: 1px solid #e6dccf; border-radius: 14px; background: #fff; font-size: 14px; line-height: 1.35; color: var(--main); cursor: pointer; transition: border-color .2s, box-shadow .2s; }
body .cart_totals .ship-item label::before { content: ""; position: absolute; left: 16px; top: 50%; width: 18px; height: 18px; margin-top: -9px; border: 1.5px solid #c9b9a6; border-radius: 50%; background: #fff; box-sizing: border-box; transition: border .2s; }
body .cart_totals .ship-item label::after { display: none; }
body .cart_totals .ship-item label:hover { border-color: #c9b9a6; }
body .cart_totals .ship-item input:checked + label { border-color: #9c5a3c; box-shadow: inset 0 0 0 1px #9c5a3c; }
body .cart_totals .ship-item input:checked + label::before { border: 5.5px solid #9c5a3c; }
body .cart_totals .ship-item input:focus-visible + label { outline: 2px solid #9c5a3c; outline-offset: 2px; }
body .cart_totals .ship-item .price { flex: 0 0 auto; white-space: nowrap; font-weight: 600; }
body .cart_totals .total-order { align-items: flex-start !important; margin: 4px 0 22px; padding-top: 18px; font-family: var(--pap-serif); font-size: 24px; font-weight: 500; }
body .cart_totals .total-order .total { text-align: right; }
body .cart_totals .total-order .includes_tax, body .cart_totals .total-order small { display: block; margin-top: 2px; font-family: var(--pap-sans); font-size: 12px; font-weight: 400; color: var(--secondary); }
body .cart_totals .check-agree { display: flex; align-items: flex-start; gap: 10px; margin-bottom: 16px; }
body .cart_totals .check-agree input[type=checkbox] { -webkit-appearance: none; appearance: none; flex: 0 0 20px; width: 20px; height: 20px; margin: 1px 0 0; border: 1.5px solid #c9b9a6; border-radius: 6px; background: #fff center / 12px no-repeat; cursor: pointer; transition: background-color .2s, border-color .2s; }
body .cart_totals .check-agree input[type=checkbox]::before, body .cart_totals .check-agree input[type=checkbox]::after { display: none; }
body .cart_totals .check-agree input[type=checkbox]:checked { border-color: #9c5a3c; background-color: #9c5a3c; background-image: url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' viewBox='0 0 12 10'%3E%3Cpath d='M1 5l3.5 3.5L11 1.5' fill='none' stroke='%23fff' stroke-width='2' stroke-linecap='round' stroke-linejoin='round'/%3E%3C/svg%3E"); }
body .cart_totals .check-agree label { margin: 0; font-size: 14px; line-height: 1.45; }
body .cart_totals .check-agree label::before, body .cart_totals .check-agree label::after { display: none; }
body .cart_totals .check-agree a { color: var(--main); text-decoration: underline; text-underline-offset: 3px; }
body .cart_totals .checkout-button { display: flex; align-items: center; justify-content: center; width: 100%; height: 54px; border-radius: 999px; background: var(--main); color: #fff; font-size: 15px; font-weight: 500; letter-spacing: .02em; }
body .cart_totals .checkout-button:hover { background: #9c5a3c; }
body .cart_totals .box-progress-checkout > p:last-child { margin: 14px 0 0; font-size: 14px; }
@media (max-width: 767px) {
	.pap-ship-flight--page { padding: 18px 18px 16px; }
	.pap-cart-page .tf-cart-item .img-box, .pap-cart-page .tf-cart-item .img-box img { width: 72px; }
	.pap-cart-page .tf-cart-item .img-box img { height: 92px; }
	body .cart_totals.box-order { padding: 24px 20px; }
}
body .cart_totals.box-order, body .cart_totals.box-order.bg-surface { background: #f6f1ea !important; }
body .cart_totals .total-order .total small, body .cart_totals .total-order .total small * { font-family: var(--pap-sans) !important; font-size: 12px !important; font-weight: 400 !important; color: var(--secondary); }
body .cart_totals .check-agree label, body .cart_totals .check-agree a { text-transform: none !important; }
/* Footer : phrase d'origine plus discrète, drapeau conservé */
body .footer .pap-footer-origin { display: flex; align-items: flex-start; gap: 10px; max-width: 320px; font-size: 13px !important; line-height: 1.55 !important; color: var(--secondary); }
body .footer .pap-footer-origin svg, body .footer .pap-footer-origin img { flex: 0 0 auto; width: 22px !important; height: auto; margin-top: 2px; }
/* ===== Page commande : charte éditoriale (homogène avec le panier) ===== */
body .pap-steps .is-current span { border-color: #9c5a3c; color: #9c5a3c; }
body .pap-steps .is-done span { background: var(--main); }
body .pap-steps li + li::before { background: #e6dccf; }
/* Paiement express : encart crème, sans filets */
body .wc-block-components-express-payment--checkout { margin-bottom: 8px; }
body .wc-block-components-express-payment--checkout .wc-block-components-express-payment__title-container { border: 0 !important; }
body .wc-block-components-express-payment--checkout .wc-block-components-express-payment__title-container::before, body .wc-block-components-express-payment--checkout .wc-block-components-express-payment__title-container::after { display: none !important; }
body .wc-block-components-express-payment--checkout .wc-block-components-express-payment__title { padding: 0 !important; font-family: var(--pap-sans) !important; font-size: 11.5px !important; font-weight: 600 !important; letter-spacing: .16em; text-transform: uppercase; color: var(--secondary) !important; }
body .wc-block-components-express-payment--checkout .wc-block-components-express-payment__content { padding: 18px !important; border: 0 !important; border-radius: 18px !important; background: #f6f1ea; }
body .wc-block-components-express-payment--checkout .wc-block-components-express-payment__content::after { display: none !important; }
body .wc-block-components-express-payment__event-buttons > li, body .wc-block-components-express-payment__event-buttons iframe, body .wc-block-components-express-payment__event-buttons button { border-radius: 999px !important; overflow: hidden; }
body .wc-block-components-express-payment-continue-rule { margin: 22px 0 30px !important; font-size: 13px; color: var(--secondary); text-transform: none; }
body .wc-block-components-express-payment-continue-rule::before, body .wc-block-components-express-payment-continue-rule::after { border: 0 !important; background: transparent !important; }
/* Champs */
body .wc-block-checkout .wc-block-components-text-input input, body .wc-block-checkout .wc-blocks-components-select__select, body .wc-block-checkout .wc-block-components-textarea, body .wc-block-checkout .wc-blocks-components-select__container { border: 1px solid #e6dccf !important; border-radius: 12px !important; background: #fff !important; box-shadow: none !important; }
body .wc-block-checkout .wc-block-components-text-input input:focus, body .wc-block-checkout .wc-blocks-components-select__select:focus, body .wc-block-checkout .wc-block-components-textarea:focus { border-color: #9c5a3c !important; box-shadow: 0 0 0 1px #9c5a3c !important; }
body .wc-block-checkout .wc-block-components-address-card { padding: 18px 20px; border: 0 !important; border-radius: 16px; background: #fbf9f6; }
body .wc-block-checkout .wc-block-components-address-card address { font-size: 14px; line-height: 1.6; }
body .wc-block-checkout .wc-block-components-address-card__address-section--primary { font-weight: 600; }
/* Cases à cocher et boutons radio */
body .wp-block-woocommerce-checkout .wc-block-components-checkbox .wc-block-components-checkbox__input[type=checkbox] { width: 20px; height: 20px; min-width: 20px; border: 1.5px solid #c9b9a6; border-radius: 6px; }
body .wp-block-woocommerce-checkout .wc-block-components-checkbox .wc-block-components-checkbox__input[type=checkbox]:checked { border-color: #9c5a3c; background: #9c5a3c; }
body .wp-block-woocommerce-checkout .wc-block-components-checkbox .wc-block-components-checkbox__input[type=checkbox]:focus { outline: 2px solid rgba(156,90,60,.35); outline-offset: 2px; }
body .wp-block-woocommerce-checkout .wc-block-components-radio-control__input { flex: 0 0 18px; width: 18px !important; height: 18px !important; min-width: 18px; min-height: 18px; border: 1.5px solid #c9b9a6 !important; border-radius: 50% !important; background: #fff; }
body .wp-block-woocommerce-checkout .wc-block-components-radio-control__input:checked { border: 5.5px solid #9c5a3c !important; }
body .wp-block-woocommerce-checkout .wc-block-components-radio-control__input:checked::before { display: none !important; }
/* Options de livraison et moyens de paiement : cartes séparées */
body .wp-block-woocommerce-checkout .wc-block-components-radio-control, body .wp-block-woocommerce-checkout .wc-block-components-radio-control--highlight-checked { display: flex; flex-direction: column; gap: 8px; border: 0 !important; }
body .wp-block-woocommerce-checkout .wc-block-components-radio-control--highlight-checked::after { display: none !important; }
body .wp-block-woocommerce-checkout .wc-block-components-radio-control__option, body .wp-block-woocommerce-checkout .wc-block-components-radio-control-accordion-option { margin: 0 !important; border: 1px solid #e6dccf !important; border-radius: 14px !important; background: #fff; box-shadow: none !important; transition: border-color .2s, box-shadow .2s; }
body .wp-block-woocommerce-checkout .wc-block-components-radio-control__option::after, body .wp-block-woocommerce-checkout .wc-block-components-radio-control-accordion-option::after { display: none !important; }
body .wp-block-woocommerce-checkout .wc-block-components-radio-control__option:hover { border-color: #c9b9a6 !important; }
body .wp-block-woocommerce-checkout .wc-block-components-radio-control__option-checked, body .wp-block-woocommerce-checkout .wc-block-components-radio-control-accordion-option--checked-option-highlighted, body .wp-block-woocommerce-checkout .wc-block-components-radio-control__option--checked-option-highlighted { border-color: #9c5a3c !important; box-shadow: inset 0 0 0 1px #9c5a3c !important; }
body .wp-block-woocommerce-checkout .wc-block-components-radio-control-accordion-option .wc-block-components-radio-control__option { border: 0 !important; box-shadow: none !important; }
body .wp-block-woocommerce-checkout .wc-block-components-radio-control__label, body .wp-block-woocommerce-checkout .wc-block-components-radio-control__secondary-label { font-size: 14px; }
body .wp-block-woocommerce-checkout .wc-block-components-radio-control__secondary-label { font-weight: 600; text-transform: none; }
/* Bouton de commande */
body .wp-block-woocommerce-checkout .wc-block-components-checkout-place-order-button { min-height: 56px; border-radius: 999px !important; font-weight: 500; letter-spacing: .02em; }
body .wp-block-woocommerce-checkout .wc-block-components-checkout-place-order-button:hover { background: #9c5a3c !important; }
body .wp-block-woocommerce-checkout .wc-block-components-checkout-return-to-cart-button { font-size: 14px; color: var(--main); }
/* Résumé de commande : comme le récapitulatif du panier */
body .wc-block-checkout__sidebar .wp-block-woocommerce-checkout-order-summary-block, body .wp-block-woocommerce-checkout .checkout-order-summary-block-fill { padding: 10px 28px 22px; border: 0 !important; border-radius: 20px; background: #f6f1ea !important; }
body .wp-block-woocommerce-checkout-order-summary-block .wc-block-components-totals-wrapper, body .wp-block-woocommerce-checkout-order-summary-block .wc-block-components-order-summary, body .wp-block-woocommerce-checkout-order-summary-block .wc-block-components-panel { border: 0 !important; }
body .wp-block-woocommerce-checkout-order-summary-block .wc-block-components-totals-wrapper { padding-top: 14px !important; padding-bottom: 14px !important; }
body .wp-block-woocommerce-checkout-order-summary-block .wc-block-components-order-summary-item__image img { width: 60px; border-radius: 10px; }
body .wp-block-woocommerce-checkout-order-summary-block .wc-block-components-order-summary-item__quantity { background: #9c5a3c; border-color: #f6f1ea; }
body .wp-block-woocommerce-checkout-order-summary-block .wc-block-components-product-name { font-family: var(--pap-serif); font-size: 17px; font-style: italic; font-weight: 400; }
body .wp-block-woocommerce-checkout-order-summary-block .wc-block-components-totals-footer-item .wc-block-components-totals-item__label, body .wp-block-woocommerce-checkout-order-summary-block .wc-block-components-totals-footer-item .wc-block-components-totals-item__value { font-family: var(--pap-serif); font-size: 24px !important; font-weight: 500; }
body .wp-block-woocommerce-checkout-order-summary-block .wc-block-components-totals-footer-item-tax { font-size: 12px; color: var(--secondary); }
body .wp-block-woocommerce-checkout-order-summary-block .wc-block-components-totals-coupon input { border-radius: 999px !important; }
body .wp-block-woocommerce-checkout-order-summary-block .wc-block-components-totals-coupon__button { border-radius: 999px !important; }
/* Footer mobile et tablette : bloc marque centré, mentions légales alignées */
@media (max-width: 991px) {
	body .footer .footer-infor { display: flex; flex-direction: column; align-items: center; text-align: center; }
	body .footer .footer-logo { margin-bottom: 18px; }
	body .footer .footer-logo a { display: inline-block; }
	body .footer .footer-logo img, body .footer .footer-logo svg { width: 250px !important; max-width: 80vw; height: auto; }
	body .footer .footer-address { display: flex; flex-direction: column; align-items: center; }
	body .footer .pap-footer-origin { display: block; max-width: 340px; margin: 0 auto 20px; text-align: center; }
	body .footer .pap-footer-origin svg { display: inline-block; width: 22px !important; margin: 0 6px 0 0; vertical-align: -2px; }
	body .footer .pap-footer-contact { margin-left: auto; margin-right: auto; }
	body .footer .tf-social-icon { justify-content: center; }
	body .footer .footer-bottom-wrap { display: flex; flex-direction: column; align-items: center; gap: 14px; text-align: center; }
	body .footer .footer-bottom-wrap .left { display: flex; flex-direction: column; align-items: center; gap: 10px; }
	body .footer .footer-bottom-wrap .left p { margin: 0; }
	body .footer .pap-legal { display: flex; flex-wrap: wrap; justify-content: center; align-items: center; gap: 6px 18px; margin: 0; }
	body .footer .pap-legal ul, body .footer .pap-legal .menu { display: contents; }
	body .footer .pap-legal li { margin: 0; padding: 0; list-style: none; }
	body .footer .pap-legal a { font-size: 12.5px; line-height: 1.4; }
	body .footer .pap-legal .pap-cc-link { margin: 0; }
	body .footer .tf-payment { display: flex; align-items: center; justify-content: center; gap: 10px; }
	body .footer .tf-payment p { margin: 0; }
}
body .wp-block-woocommerce-checkout-order-summary-block .wc-block-components-totals-wrapper:not(:has(.wc-block-components-totals-item, .wc-block-components-panel, .wc-block-components-order-summary, .wc-block-components-order-summary-item, input, button, .wc-block-components-totals-coupon, img)) { display: none; }
body .wp-block-woocommerce-checkout-order-summary-block .wc-block-components-totals-wrapper, body .wp-block-woocommerce-checkout-order-summary-block .wc-block-components-totals-wrapper::before, body .wp-block-woocommerce-checkout-order-summary-block .wc-block-components-totals-wrapper::after { border-top: 0 !important; border-bottom: 0 !important; }
body .wp-block-woocommerce-checkout-order-summary-block .wc-block-components-panel__button { border: 0 !important; }
body .wp-block-woocommerce-checkout-order-summary-block .wc-block-components-totals-coupon, body .wp-block-woocommerce-checkout-order-summary-block .wc-block-components-panel { border-top: 0 !important; border-bottom: 0 !important; }
body .wp-block-woocommerce-checkout input[type=text], body .wp-block-woocommerce-checkout .pwgc-gift-card-input, body .wp-block-woocommerce-checkout [class*=gift-card] input { border: 1px solid #e6dccf !important; border-radius: 12px !important; box-shadow: none !important; }
body .wp-block-woocommerce-checkout .pwgc-apply-gift-card-button, body .wp-block-woocommerce-checkout [class*=gift-card] button { border-radius: 999px !important; }
body .wp-block-woocommerce-checkout .wc-block-components-checkout-place-order-button { width: 100%; }
/* Barre mobile : compteur panier identique au compteur favoris */
body .tf-toolbar-bottom .toolbar-icon { position: relative; }
body .tf-toolbar-bottom .toolbar-icon .toolbar-count, body .tf-toolbar-bottom .toolbar-icon .toolbar-count.count-box { position: absolute; top: -6px; right: -9px; left: auto; display: inline-flex; align-items: center; justify-content: center; min-width: 17px; width: auto; height: 17px; padding: 0 4px; border-radius: 999px; background: #9c5a3c; color: #fff; font-size: 10px; font-weight: 600; line-height: 1; }
body .tf-toolbar-bottom .toolbar-icon .toolbar-count[hidden] { display: none; }
/* Footer : champ newsletter plus compact */
body .footer .footer-newsletter .form-newsletter { max-width: 340px; }
body .footer .footer-newsletter .subscribe-content { position: relative; }
body .footer .footer-newsletter .subscribe-email { height: 44px !important; padding: 0 50px 0 18px !important; border: 1px solid #e6dccf !important; border-radius: 999px !important; font-size: 13px !important; background: #fff; }
body .footer .footer-newsletter .subscribe-email:focus { border-color: #9c5a3c !important; }
body .footer .footer-newsletter .button-submit { position: absolute; top: 50%; right: 5px; transform: translateY(-50%); }
body .footer .footer-newsletter .subscribe-button { width: 34px !important; height: 34px !important; min-width: 34px; padding: 0 !important; border-radius: 50% !important; font-size: 13px !important; display: inline-flex; align-items: center; justify-content: center; }
body .footer .footer-newsletter .subscribe-button:hover { background: #9c5a3c !important; }
body .footer .footer-newsletter .subscribe-button .icon { font-size: 13px !important; }
body .footer .footer-newsletter .tf-cart-checkbox { margin-top: 12px; }
@media (max-width: 991px) { body .footer .footer-newsletter .form-newsletter { max-width: none; } }
body .footer .footer-newsletter .button-submit { top: 5px !important; right: 5px !important; bottom: auto !important; transform: none !important; height: 34px; margin: 0 !important; line-height: 0; }
body .footer .footer-newsletter .subscribe-content fieldset { margin: 0; }
body .footer .pap-legal { display: flex; flex-wrap: wrap; align-items: center; gap: 4px 16px; }
body .footer .pap-legal ul, body .footer .pap-legal .menu { display: contents; }
body .footer .pap-legal li { margin: 0; padding: 0; list-style: none; }
body .footer .pap-legal .pap-cc-link { margin: 0 !important; }
/* Bas de footer : une seule ligne de base, aucun soulignement */
body .footer .footer-bottom-wrap .left { display: flex; flex-wrap: wrap; align-items: center; gap: 6px 24px; }
body .footer .footer-bottom-wrap .left > p, body .footer .pap-legal, body .footer .pap-legal a, body .footer .pap-credit { margin: 0 !important; font-size: 12.5px !important; line-height: 1.4 !important; }
body .footer .pap-legal a, body .footer .pap-legal .pap-cc-link, body .footer .pap-credit a { text-decoration: none !important; border: 0 !important; background-image: none !important; color: var(--secondary); padding: 0 !important; }
body .footer .pap-legal a::before, body .footer .pap-legal a::after, body .footer .pap-cc-link::before, body .footer .pap-cc-link::after { display: none !important; }
body .footer .pap-legal a:hover, body .footer .pap-credit a:hover { color: #9c5a3c; }
body .footer .pap-credit { color: var(--secondary); }
body .footer .pap-credit a { color: var(--main); }
body .footer .footer-bottom-wrap { align-items: center; }
@media (max-width: 991px) { body .footer .footer-bottom-wrap .left { flex-direction: column; gap: 10px; } }
body .footer .pap-legal ul.footer-menu-list { display: contents !important; }
body .footer .pap-legal li { display: flex !important; align-items: center; line-height: 1.4 !important; font-size: 12.5px !important; }
body .footer .pap-legal a { display: block !important; }

/* ===== Blog v2 : même charte que les pages ===== */
.pap-blog--v2 .pap-page-title, .pap-single--v2 .pap-page-title { margin-bottom: 28px; }
.pap-blog-banner { margin: 0 0 30px; overflow: hidden; border-radius: 20px; aspect-ratio: 1989 / 361; background: #f6f1ea; }
.pap-blog-banner img { display: block; width: 100%; height: 100%; object-fit: cover; object-position: center; }
.pap-blog-intro { max-width: 640px; margin: 0 auto 34px; font-size: 15px; line-height: 1.65; text-align: center; color: var(--secondary); }
.pap-blog-filters { display: flex; flex-wrap: wrap; align-items: center; justify-content: space-between; gap: 16px; margin: 0 0 34px; }
.pap-blog-cats { display: flex; flex-wrap: wrap; gap: 8px; }
.pap-blog-cats a { display: inline-flex; align-items: center; padding: 9px 18px; border: 1px solid #e6dccf; border-radius: 999px; background: #fff; font-size: 13px; line-height: 1.2; color: var(--main); text-decoration: none; transition: background .2s, color .2s, border-color .2s; }
.pap-blog-cats a:hover { border-color: #9c5a3c; color: #9c5a3c; }
.pap-blog-cats a.is-active { border-color: var(--main); background: var(--main); color: #fff; }
.pap-blog-search { position: relative; width: 260px; max-width: 100%; }
.pap-blog-search input[type=search] { width: 100%; height: 42px; padding: 0 44px 0 18px; border: 1px solid #e6dccf; border-radius: 999px; background: #fff; font-size: 13px; }
.pap-blog-search input[type=search]:focus { border-color: #9c5a3c; outline: 0; }
.pap-blog-search button { position: absolute; top: 4px; right: 4px; display: inline-flex; align-items: center; justify-content: center; width: 34px; height: 34px; padding: 0; border: 0; border-radius: 50%; background: var(--main); color: #fff; }
.pap-blog-search button:hover { background: #9c5a3c; }
.pap-bgrid { display: grid; grid-template-columns: repeat(3, minmax(0, 1fr)); gap: 40px 28px; }
.pap-bcard { display: flex; flex-direction: column; margin: 0; }
.pap-bcard-img { position: relative; display: flex; align-items: center; justify-content: center; aspect-ratio: 4 / 3; margin-bottom: 18px; padding: 12px; overflow: hidden; border-radius: 18px; background: #f6f1ea; }
.pap-bcard-img img { display: block; width: 100%; height: 100%; object-fit: contain; border-radius: 10px; transition: transform .5s ease; }
.pap-bcard:hover .pap-bcard-img img { transform: scale(1.03); }
.pap-bcard-cat { margin: 0 0 8px; font-size: 11px; font-weight: 600; letter-spacing: .16em; text-transform: uppercase; color: #9c5a3c; }
.pap-bcard-title { margin: 0 0 10px; font-family: var(--pap-serif); font-size: 22px; font-weight: 500; line-height: 1.28; }
.pap-bcard-title a { color: var(--main); text-decoration: none; }
.pap-bcard-title a:hover { color: #9c5a3c; }
.pap-bcard-excerpt { display: -webkit-box; margin: 0 0 12px; overflow: hidden; font-size: 14px; line-height: 1.6; color: var(--secondary); -webkit-line-clamp: 3; -webkit-box-orient: vertical; }
.pap-bcard-meta { margin: auto 0 0; font-size: 12.5px; color: var(--secondary-2, #8a8a8a); }
.pap-blog--v2 .pap-pagination { margin-top: 48px; }
.pap-blog-empty { padding: 40px 0; text-align: center; color: var(--secondary); }
/* Article */
.pap-single-cat { margin: 0 0 10px; font-size: 11.5px; font-weight: 600; letter-spacing: .16em; text-transform: uppercase; }
.pap-single-cat a { color: #9c5a3c; text-decoration: none; }
.pap-single--v2 .pap-page-title h1 { max-width: 860px; margin-left: auto; margin-right: auto; text-wrap: balance; }
.pap-single-meta { margin: 12px 0 0; font-size: 13px; color: var(--secondary); }
.pap-single-fig { display: flex; align-items: center; justify-content: center; max-width: 900px; margin: 0 auto 44px; padding: 16px; border-radius: 22px; background: #f6f1ea; }
.pap-single-fig img { display: block; width: auto; max-width: 100%; height: auto; max-height: 540px; object-fit: contain; border-radius: 12px; }
body .pap-single--v2 .pap-article { max-width: 760px; margin: 0 auto; }
body .pap-single--v2 .pap-article img { max-width: 100%; height: auto; border-radius: 14px; }
body .pap-single--v2 .pap-article-end { max-width: 760px; margin: 48px auto 0; }
body .pap-single--v2 .pap-article-cta { padding: 32px; border: 0; border-radius: 20px; background: #f6f1ea; text-align: center; }
body .pap-single--v2 .pap-article-cta-title { margin: 0 0 8px; font-family: var(--pap-serif); font-size: 24px; font-weight: 500; color: var(--main); }
body .pap-single--v2 .pap-article-cta p { font-size: 14.5px; color: var(--secondary); }
body .pap-single--v2 .pap-article-cta .tf-btn { margin-top: 8px; border-radius: 999px; }
body .pap-single--v2 .pap-article-nav { display: grid; grid-template-columns: 1fr 1fr; gap: 14px; margin-top: 20px; border: 0; padding: 0; }
body .pap-single--v2 .pap-article-nav a { display: flex; flex-direction: column; gap: 6px; padding: 18px 20px; border: 0; border-radius: 16px; background: #fbf9f6; font-family: var(--pap-serif); font-size: 16px; line-height: 1.35; color: var(--main); text-decoration: none; transition: background .2s; }
body .pap-single--v2 .pap-article-nav a:hover { background: #f6f1ea; }
body .pap-single--v2 .pap-article-nav a span { font-family: var(--pap-sans); font-size: 11px; font-weight: 600; letter-spacing: .14em; text-transform: uppercase; color: #9c5a3c; }
body .pap-single--v2 .pap-article-nav .next { text-align: right; }
.pap-single--v2 .pap-related { margin: 80px 0 0; padding: 0; border: 0; }
.pap-related-title { margin: 0 0 32px; font-family: var(--pap-serif); font-size: clamp(28px, 3vw, 36px); font-weight: 500; text-align: center; }
.pap-single--v2 .pap-bcard-title { font-size: 20px; }
@media (max-width: 1199px) { .pap-bgrid { grid-template-columns: repeat(2, minmax(0, 1fr)); } }
@media (max-width: 767px) {
	.pap-blog-banner { aspect-ratio: 2.4 / 1; border-radius: 16px; }
	.pap-blog-filters { flex-direction: column; align-items: stretch; }
	.pap-blog-cats { flex-wrap: nowrap; margin: 0 -16px; padding: 0 16px 4px; overflow-x: auto; scrollbar-width: none; }
	.pap-blog-cats a { flex: 0 0 auto; }
	.pap-blog-search { width: 100%; }
	.pap-bgrid { grid-template-columns: 1fr; gap: 34px; }
	.pap-single-fig { padding: 10px; border-radius: 16px; }
	body .pap-single--v2 .pap-article-nav { grid-template-columns: 1fr; }
	body .pap-single--v2 .pap-article-nav .next { text-align: left; }
	body .pap-single--v2 .pap-article-cta { padding: 24px 20px; }
}
.pap-blog-filters { justify-content: center; }
.pap-blog-cats { justify-content: center; }
@media (max-width: 767px) { .pap-blog-cats { justify-content: flex-start; } }

.pap-single-fig { max-width: 760px; }
.pap-single-fig img { max-height: 420px; }
.pap-single--v2 .pap-page-title h1 { font-size: clamp(30px, 3.4vw, 44px); line-height: 1.15; }
@media (max-width: 767px) { .pap-single-fig img { max-height: 320px; } }

body .pap-single--v2 .pap-content.entry.pap-article { max-width: 760px !important; margin-left: auto !important; margin-right: auto !important; }
body .pap-single--v2 .pap-content.entry.pap-article h2 { font-size: clamp(24px, 2.4vw, 30px); }

body .pap-single--v2 .pap-article-cta .pap-article-cta-title { font-family: var(--pap-serif) !important; font-size: 24px !important; font-weight: 500 !important; line-height: 1.3 !important; color: var(--main) !important; }
