/* Centre moderne PW (extrait pw-buy/pw-rub + variables) - ne touche PAS au cadre */
:root{
--ui-bg:#FFF;--ui-text:#1f2937;--ui-muted:#64748b;--ui-accent:#019875;--ui-accent-800:#017a5e;
--ui-dark:#333;--ui-border:#E6E6E6;--ui-radius:12px;--ui-gap:20px;--ui-gap-sm:12px;--ui-max:1200px;
--ui-success:#16a34a;--ui-success-bg:#dcfce7;--ui-warning:#f59e0b;--ui-warning-bg:#fef3c7;--ui-danger:#dc2626;--ui-danger-bg:#fee2e2;--ui-info:#0284c7;--ui-info-bg:#e0f2fe;
--ui-space-xs:4px;--ui-space-sm:8px;--ui-space-md:16px;--ui-space-lg:24px;--ui-space-xl:32px;--ui-space-2xl:48px;
--ui-font-sans:'Inter',system-ui,-apple-system,sans-serif;
--ui-text-xs:12px;--ui-text-sm:14px;--ui-text-base:16px;--ui-text-lg:18px;--ui-text-xl:24px;--ui-leading-tight:1.25;--ui-leading-normal:1.5;
--ui-radius-sm:6px;--ui-radius-md:10px;--ui-radius-lg:16px;--ui-radius-full:9999px;
--ui-shadow-sm:0 1px 2px rgba(0,0,0,.06);--ui-shadow-md:0 4px 12px rgba(0,0,0,.08);--ui-shadow-lg:0 10px 30px rgba(0,0,0,.12);
--ui-duration-fast:120ms;--ui-duration-normal:200ms;--ui-ease:cubic-bezier(.4,0,.2,1);
}

/* === from ui-kit.css === */


/* Cards rubriques homepage IC */
.pw-rubriques-row { display: grid; grid-template-columns: repeat(3, 1fr); gap: 24px; margin: 0 0 48px; }
.pw-rubrique-card { display: flex; flex-direction: column; text-decoration: none; color: #242e39; border-radius: 12px; overflow: hidden; box-shadow: 0 4px 16px rgba(36, 46, 57, 0.08); transition: transform .25s ease, box-shadow .25s ease; }
.pw-rubrique-card:hover,
.pw-rubrique-card:focus-visible { transform: translateY(-4px); box-shadow: 0 14px 32px rgba(36, 46, 57, 0.18); text-decoration: none; color: #242e39; }
.pw-rubrique-card--visite { background: #EDDECD; }
.pw-rubrique-card--plastique { background: #D6E1EC; }
.pw-rubrique-card--correspondance { background: #E9D8D7; }
.pw-rubrique-media { padding: 24px 24px 0; display: flex; align-items: center; justify-content: center; }
.pw-rubrique-media img { width: 100%; height: auto; max-width: 280px; border-radius: 8px; box-shadow: 0 4px 12px rgba(36, 46, 57, 0.12); display: block; }
.pw-rubrique-body { padding: 20px 24px 24px; display: flex; flex-direction: column; flex: 1; gap: 12px; }
.pw-rubrique-title { font-family: 'Outfit', sans-serif; font-size: 22px; font-weight: 700; color: #242e39; margin: 0; line-height: 1.2; }
.pw-rubrique-list { list-style: none; padding: 0; margin: 0; flex: 1; font-size: 14px; line-height: 1.7; color: #242e39; }
.pw-rubrique-list li { padding-left: 14px; position: relative; }
.pw-rubrique-list li::before { content: "•"; position: absolute; left: 0; top: 0; color: #017a5e; font-weight: 700; }
.pw-rubrique-footer { display: flex; align-items: center; justify-content: space-between; margin-top: 8px; padding-top: 14px; border-top: 1px solid rgba(36, 46, 57, 0.1); }
.pw-rubrique-badge { font-size: 14px; font-weight: 700; color: #242e39; background: rgba(255, 255, 255, 0.7); padding: 5px 12px; border-radius: 20px; }
.pw-rubrique-cta { font-size: 13px; font-weight: 600; text-transform: uppercase; letter-spacing: 0.5px; color: var(--ui-accent-800, #017a5e); transition: transform .2s ease; display: inline-block; }
.pw-rubrique-card:hover .pw-rubrique-cta { color: #242e39; transform: translateX(2px); }
@media (max-width: 900px) {

    .pw-rubriques-row { grid-template-columns: 1fr; gap: 16px; margin: 0 0 32px; }
    .pw-rubrique-media img { max-width: 240px; }
}


/* Pages rubrique IC */
.pw-rub-main { max-width: 1600px; margin: 24px 3% 32px 21%; padding: 0; text-align: left; font-size: 14px; box-sizing: border-box; }
.pw-rub-breadcrumbs { margin: 0 !important; padding: 0 !important; }
.pw-rub-breadcrumbs ol { list-style: none; padding: 0; margin: 0; display: flex; flex-wrap: wrap; align-items: center; gap: 4px; font-size: 13px; line-height: 1.4; }
.pw-rub-breadcrumbs li { display: inline-flex; align-items: center; }
.pw-rub-breadcrumbs li:not(:first-child)::before { content: "›"; margin: 0 8px; color: #94a3b8; font-weight: 400; }
.pw-rub-breadcrumbs a,
.pw-rub-breadcrumbs a:link,
.pw-rub-breadcrumbs a:visited { color: var(--ui-accent-800, #017a5e); text-decoration: none; display: inline-flex; align-items: center; gap: 6px; padding: 5px 10px; border-radius: 6px; transition: background .2s, color .2s; }
.pw-rub-breadcrumbs a:hover { background: rgba(140, 174, 193, 0.12); color: #242e39; text-decoration: none; }
.pw-rub-breadcrumbs a i { font-size: 12px; }
.pw-rub-breadcrumbs li[aria-current] { color: #242e39; font-weight: 600; padding: 5px 4px; }
.pw-rub-hero { background: linear-gradient(180deg, #f6fafc 0%, #e6eef4 100%); padding: 28px 32px 30px; margin: 0 0 28px; border-radius: 12px; }
.pw-rub-hero--sub { padding: 18px 32px 20px; margin: 0 0 24px; }
.pw-rub-hero--sub .pw-rub-hero-inner { grid-template-columns: 1fr; gap: 0; }
.pw-rub-hero--sub .pw-rub-h1 { font-size: 28px; }
.pw-rub-hero--sub .pw-rub-subtitle { font-size: 15px; max-width: 760px; }

/* Page /acheter.php (raccourcis commande) */
.pw-buy-h1 { text-transform: lowercase; }
.pw-buy-h1::first-letter { text-transform: uppercase; }
.pw-buy-layout { display: grid; grid-template-columns: 1.4fr 1fr; gap: 28px; margin: 0 0 40px; align-items: start; }
.pw-buy-product { display: flex; flex-direction: column; gap: 24px; min-width: 0; }
.pw-buy-figure { margin: 0; background: #fff; border-radius: 12px; padding: 14px; display: flex; align-items: center; justify-content: center; min-height: 130px; border: 1px solid rgba(36, 46, 57, 0.06); }
.pw-buy-figure img { max-width: 100%; max-height: 110px; width: auto; height: auto; object-fit: contain; display: block; }
.pw-buy-card { background: #fff; border-radius: 12px; padding: 22px 24px 0; border: 1px solid rgba(36, 46, 57, 0.06); box-shadow: 0 2px 8px rgba(36, 46, 57, 0.06); }
.pw-buy-section-title { font-family: 'Outfit', sans-serif; font-size: 18px; font-weight: 700; color: #242e39; margin: 0 0 16px; padding-bottom: 12px; border-bottom: 1px solid rgba(36, 46, 57, 0.08); display: flex; align-items: center; gap: 10px; }
.pw-buy-section-title i { color: var(--ui-accent-800, #017a5e); font-size: 16px; }
.pw-buy-dl { margin: 0 0 16px; display: grid; grid-template-columns: minmax(140px, 38%) 1fr; gap: 10px 16px; }
.pw-buy-dl dt { font-weight: 600; color: #64748b; font-size: 14px; line-height: 1.4; }
.pw-buy-dl dd { color: #242e39; font-size: 14px; line-height: 1.4; margin: 0; }
.pw-buy-dl dd strong { color: var(--ui-accent-800, #017a5e); }
.pw-buy-modify,
.pw-buy-modify:link,
.pw-buy-modify:visited { display: inline-flex; align-items: center; gap: 8px; color: var(--ui-accent-800, #017a5e); text-decoration: none; font-size: 13px; font-weight: 600; padding: 14px 0 18px; margin-top: 8px; border-top: 1px solid rgba(36, 46, 57, 0.08); width: 100%; text-transform: uppercase; letter-spacing: 0.5px; transition: color .2s, transform .2s; }
.pw-buy-modify:hover { color: #242e39; transform: translateX(2px); text-decoration: none; }
.pw-buy-sidebar { display: flex; flex-direction: column; gap: 16px; position: sticky; top: 24px; }
.pw-buy-price-card { background: #fff; border-radius: 12px; padding: 20px 22px; border: 1px solid rgba(36, 46, 57, 0.06); box-shadow: 0 4px 12px rgba(36, 46, 57, 0.08); }
.pw-buy-price-row { display: flex; justify-content: space-between; align-items: baseline; padding: 6px 0; font-size: 14px; color: #475569; }
.pw-buy-price-row span:last-child { color: #242e39; font-weight: 500; }
.pw-buy-price-row--reduc span { color: #16a34a !important; font-weight: 600 !important; }
.pw-buy-price-incl { color: #16a34a !important; font-weight: 600 !important; }
.pw-buy-price-total { display: flex; justify-content: space-between; align-items: baseline; margin-top: 8px; padding-top: 12px; border-top: 1px solid rgba(36, 46, 57, 0.08); }
.pw-buy-price-total span:first-child { font-size: 14px; font-weight: 600; color: #242e39; text-transform: uppercase; letter-spacing: 0.5px; }
.pw-buy-price-total-amount { font-family: 'Outfit', sans-serif; font-size: 28px; font-weight: 700; color: var(--ui-accent-800, #017a5e); line-height: 1; }
.pw-buy-conception { background: #fff; border-radius: 12px; padding: 14px 16px; border: 1px solid rgba(36, 46, 57, 0.06); box-shadow: 0 2px 6px rgba(36, 46, 57, 0.04); }
.pw-buy-conception-label { display: flex; align-items: flex-start; gap: 10px; cursor: pointer; }
.pw-buy-conception-label input[type="checkbox"] { margin-top: 3px; width: 18px; height: 18px; accent-color: var(--ui-accent, #019875); flex-shrink: 0; cursor: pointer; }
.pw-buy-conception-text { display: flex; flex-direction: column; gap: 2px; font-size: 14px; line-height: 1.4; }
.pw-buy-conception-text strong { color: #242e39; font-weight: 600; }
.pw-buy-conception-text em { color: var(--ui-accent-800, #017a5e); font-style: normal; font-weight: 600; font-size: 13px; }
.pw-buy-pays { background: #fff; border-radius: 12px; padding: 16px 18px; border: 1px solid rgba(36, 46, 57, 0.06); box-shadow: 0 2px 6px rgba(36, 46, 57, 0.04); }
.pw-buy-pays label { display: flex; align-items: center; gap: 6px; font-size: 13px; font-weight: 600; color: #242e39; margin: 0 0 8px; }
.pw-buy-pays label i { color: var(--ui-accent-800, #017a5e); }
.pw-buy-select { width: 100%; padding: 10px 14px; background: #fff; border: 1px solid rgba(36, 46, 57, 0.15); border-radius: 8px; font-family: inherit; font-size: 14px; color: #242e39; cursor: pointer; appearance: none; -webkit-appearance: none; background-image: url("data:image/svg+xml;utf8,<svg xmlns='http://www.w3.org/2000/svg' viewBox='0 0 24 24' fill='none' stroke='%235e8497' stroke-width='2' stroke-linecap='round' stroke-linejoin='round'><polyline points='6 9 12 15 18 9'></polyline></svg>"); background-repeat: no-repeat; background-position: right 12px center; background-size: 16px; padding-right: 36px; }
.pw-buy-select:focus { outline: 2px solid var(--ui-accent, #019875); outline-offset: 1px; }
.pw-buy-cta,
.pw-buy-cta:link,
.pw-buy-cta:visited { display: flex; align-items: center; justify-content: center; gap: 10px; text-align: center; padding: 16px 24px; background: var(--ui-accent, #019875); color: #fff !important; text-decoration: none !important; font-family: 'Outfit', sans-serif; font-size: 16px; font-weight: 700; text-transform: uppercase; letter-spacing: 0.5px; border-radius: 10px; box-shadow: 0 4px 16px rgba(140, 174, 193, 0.4); transition: transform .2s, box-shadow .2s; }
.pw-buy-cta:hover { transform: translateY(-1px); box-shadow: 0 8px 22px rgba(140, 174, 193, 0.5); }
.pw-buy-infos { background: #fff; border-radius: 12px; border: 1px solid rgba(36, 46, 57, 0.06); overflow: hidden; }
.pw-buy-infos .pw-rub-aide-item { border-bottom: 1px solid rgba(36, 46, 57, 0.08); }
.pw-buy-infos .pw-rub-aide-item:last-child { border-bottom: 0; }
.pw-buy-infos .pw-rub-aide-q { display: flex; align-items: center; gap: 10px; padding: 14px 44px 14px 16px; font-size: 14px; }
.pw-buy-infos .pw-rub-aide-q i { color: var(--ui-accent-800, #017a5e); font-size: 14px; }
.pw-buy-infos .pw-rub-aide-a { padding: 0 16px 14px; font-size: 14px; }
.pw-buy-desc { margin: 32px 0 48px; background: #fff; border-radius: 12px; padding: 24px 28px; border: 1px solid rgba(36, 46, 57, 0.06); box-shadow: 0 2px 8px rgba(36, 46, 57, 0.04); }
.pw-buy-desc .pw-rub-section-title { margin-bottom: 16px; }
.pw-buy-empty { text-align: center; padding: 64px 24px; color: #64748b; font-size: 16px; }
.pw-buy-empty a { color: var(--ui-accent-800, #017a5e); }
@media (max-width: 1000px) {

    .pw-buy-layout { grid-template-columns: 1fr; gap: 24px; }
    .pw-buy-sidebar { position: static; }
}

@media (max-width: 600px) {

    .pw-buy-figure { padding: 12px; min-height: 110px; }
    .pw-buy-figure img { max-height: 90px; }
    .pw-buy-card { padding: 18px 18px 0; }
    .pw-buy-dl { grid-template-columns: 1fr; gap: 4px 0; }
    .pw-buy-dl dt { margin-top: 8px; }
    .pw-buy-dl dt:first-child { margin-top: 0; }
    .pw-buy-price-total-amount { font-size: 24px; }
    .pw-buy-cta { padding: 14px 20px; font-size: 15px; }
    .pw-buy-desc { padding: 20px 16px; }
}


/* Pages article (guides /aide/) */
.pw-article { max-width: 820px; margin: 0 auto 48px; }
.pw-article-figure { margin: 0 0 28px; border-radius: 12px; overflow: hidden; box-shadow: 0 4px 16px rgba(36, 46, 57, 0.08); background: linear-gradient(180deg, #f6fafc 0%, #e6eef4 100%); padding: 32px; display: flex; align-items: center; justify-content: center; min-height: 240px; }
.pw-article-figure img { max-width: 100%; max-height: 220px; width: auto; height: auto; object-fit: contain; display: block; }
.pw-article-content { color: #334155; font-size: 16px; line-height: 1.75; }
.pw-article-content p { margin: 0 0 14px; }
.pw-article-lead { font-size: 18px !important; color: #242e39 !important; font-weight: 500; margin: 0 0 24px !important; padding: 16px 20px; background: #f8fafc; border-left: 3px solid var(--ui-accent, #019875); border-radius: 4px; }
.pw-article-content h2,
.pw-article-content .pw-article-h2 { font-family: 'Outfit', sans-serif; font-size: 24px; font-weight: 700; color: #242e39; margin: 32px 0 12px; line-height: 1.25; scroll-margin-top: 100px; }
.pw-article-content h3,
.pw-article-content .pw-article-h3 { font-family: 'Outfit', sans-serif; font-size: 18px; font-weight: 600; color: #242e39; margin: 22px 0 8px; line-height: 1.3; }
.pw-article-content ul,
.pw-article-content ol { margin: 0 0 14px; padding-left: 24px; }
.pw-article-content li { margin: 0 0 6px; }
.pw-article-content strong { color: #242e39; font-weight: 600; }
.pw-article-content a,
.pw-article-content a:link,
.pw-article-content a:visited { color: var(--ui-accent-800, #017a5e); text-decoration: underline; }
.pw-article-content a:hover { color: #242e39; }
.pw-article-callout { margin: 22px 0; padding: 16px 20px; background: #f0f7fa; border-left: 3px solid var(--ui-accent, #019875); border-radius: 6px; font-size: 15px; }
.pw-article-callout strong { color: var(--ui-accent-800, #017a5e); text-transform: uppercase; letter-spacing: 0.5px; font-size: 12.5px; display: block; margin: 0 0 6px; }
.pw-article-cta { margin: 36px 0 0; padding: 24px 28px; background: linear-gradient(180deg, #f6fafc 0%, #e6eef4 100%); border-radius: 12px; text-align: center; }
.pw-article-cta h2 { margin: 0 0 8px !important; font-size: 22px !important; }
.pw-article-cta p { margin: 0 0 16px; color: #64748b; }
.pw-article-cta-btn,
.pw-article-cta-btn:link,
.pw-article-cta-btn:visited { display: inline-block; padding: 12px 28px; background: var(--ui-accent, #019875); color: #fff !important; text-decoration: none !important; text-transform: uppercase; letter-spacing: 0.5px; font-weight: 600; font-size: 14px; border-radius: 8px; box-shadow: 0 4px 12px rgba(140, 174, 193, 0.3); transition: transform .2s, box-shadow .2s; }
.pw-article-cta-btn:hover { transform: translateY(-1px); box-shadow: 0 6px 16px rgba(140, 174, 193, 0.4); color: #fff !important; }
@media (max-width: 700px) {

    .pw-article-figure { padding: 24px; min-height: 180px; margin-bottom: 20px; }
    .pw-article-figure img { max-height: 160px; }
    .pw-article-content { font-size: 15px; }
    .pw-article-lead { font-size: 16px !important; padding: 12px 16px; }
    .pw-article-content h2 { font-size: 21px; }
    .pw-article-cta { padding: 20px 16px; }
}

.pw-sitemap-card .pw-rub-product-title { margin: 0 0 12px; padding-bottom: 12px; border-bottom: 1px solid rgba(36, 46, 57, 0.08); display: flex; align-items: center; gap: 10px; }
.pw-sitemap-card .pw-rub-product-title i { color: var(--ui-accent-800, #017a5e); font-size: 18px; }
@media (max-width: 600px) {

    .pw-rub-hero--sub { padding: 14px 14px 16px; }
    .pw-rub-hero--sub .pw-rub-h1 { font-size: 22px; }
}

.pw-rub-hero-inner { display: grid; grid-template-columns: 1.4fr 1fr; gap: 32px; align-items: center; }
.pw-rub-hero-text { display: flex; flex-direction: column; gap: 10px; min-width: 0; }
.pw-rub-hero-visual { display: flex; justify-content: center; align-items: center; }
.pw-rub-hero-visual img { width: 100%; max-width: 440px; aspect-ratio: 5 / 3; object-fit: cover; border-radius: 12px; box-shadow: 0 12px 28px rgba(36, 46, 57, 0.18); display: block; }
.pw-rub-eyebrow { display: inline-block; font-size: 13px; font-weight: 600; text-transform: uppercase; letter-spacing: 0.8px; color: var(--ui-accent-800, #017a5e); margin: 0; }
.pw-rub-h1 { font-family: 'Outfit', sans-serif; font-size: 34px; line-height: 1.15; font-weight: 700; color: #242e39; margin: 0; }
.pw-rub-subtitle { font-size: 16px; line-height: 1.55; color: #64748b; margin: 4px 0 0; }
.pw-rub-layout { display: grid; grid-template-columns: 320px 1fr; gap: 24px; margin: 0 0 40px; align-items: start; }
.pw-rub-devis { margin: 0; border-radius: 12px; overflow: hidden; box-shadow: 0 2px 8px rgba(36, 46, 57, 0.06); border: 1px solid rgba(36, 46, 57, 0.06); background: #fff; }
.pw-rub-devis > * { margin-top: 0 !important; }
.pw-rub-products { display: flex; flex-direction: column; gap: 24px; margin: 0; }
.pw-rub-product { background: #fff; border-radius: 12px; box-shadow: 0 2px 8px rgba(36, 46, 57, 0.06); border: 1px solid rgba(36, 46, 57, 0.06); padding: 22px 24px 24px; transition: box-shadow .2s ease; }
.pw-rub-product:hover { box-shadow: 0 6px 16px rgba(36, 46, 57, 0.1); }
.pw-rub-product-head { display: flex; flex-wrap: wrap; align-items: baseline; justify-content: space-between; gap: 8px; margin: 0 0 16px; padding-bottom: 12px; border-bottom: 1px solid rgba(36, 46, 57, 0.08); }
.pw-rub-product-title { font-family: 'Outfit', sans-serif; font-size: 21px; font-weight: 700; color: #242e39; margin: 0; line-height: 1.2; }
.pw-rub-product-link,
.pw-rub-product-link:link,
.pw-rub-product-link:visited { font-size: 12.5px; font-weight: 600; color: var(--ui-accent-800, #017a5e); text-decoration: none; text-transform: uppercase; letter-spacing: 0.5px; padding: 6px 12px; background: rgba(140, 174, 193, 0.12); border-radius: 6px; transition: background .2s ease, color .2s ease, transform .2s ease; display: inline-block; white-space: nowrap; }
.pw-rub-product-link:hover { background: var(--ui-accent, #019875); color: #fff; transform: translateX(2px); text-decoration: none; }
.pw-rub-product-grid { display: grid; grid-template-columns: 180px 1fr; gap: 20px; align-items: start; }
.pw-rub-product-media img { width: 100%; height: auto; border-radius: 8px; box-shadow: 0 2px 8px rgba(36, 46, 57, 0.08); display: block; }
.pw-rub-variants { display: flex; flex-direction: column; gap: 16px; min-width: 0; }
.pw-rub-variant-title { font-family: 'Outfit', sans-serif; font-size: 14px; font-weight: 600; color: #242e39; margin: 0 0 8px; line-height: 1.35; }
.pw-rub-tarifs { list-style: none; padding: 0; margin: 0; display: grid; grid-template-columns: repeat(2, 1fr); gap: 6px; }
.pw-rub-tarifs li a,
.pw-rub-tarifs li a:link,
.pw-rub-tarifs li a:visited { display: block; padding: 8px 12px; background: #f8fafc; border: 1px solid rgba(36, 46, 57, 0.08); border-radius: 6px; color: #242e39; text-decoration: none; font-size: 13.5px; font-weight: 500; line-height: 1.3; transition: background .15s, border-color .15s, color .15s; }
.pw-rub-tarifs li a:hover { background: var(--ui-accent, #019875); border-color: var(--ui-accent, #019875); color: #fff; text-decoration: none; }
.pw-rub-aide { margin: 0 0 48px; }
.pw-rub-section-title { font-family: 'Outfit', sans-serif; font-size: 24px; font-weight: 700; color: #242e39; margin: 0 0 18px; line-height: 1.2; }
.pw-rub-aide-grid { background: #fff; border-radius: 12px; box-shadow: 0 2px 8px rgba(36, 46, 57, 0.06); border: 1px solid rgba(36, 46, 57, 0.06); overflow: hidden; }
.pw-rub-aide-item { border-bottom: 1px solid rgba(36, 46, 57, 0.08); }
.pw-rub-aide-item:last-of-type { border-bottom: 0; }
.pw-rub-aide-q { list-style: none; cursor: pointer; padding: 16px 44px 16px 20px; font-size: 15px; font-weight: 600; color: #242e39; position: relative; transition: background .2s; }
.pw-rub-aide-q::-webkit-details-marker { display: none; }
.pw-rub-aide-q::after { content: "+"; position: absolute; right: 16px; top: 50%; transform: translateY(-50%); font-size: 22px; font-weight: 400; color: var(--ui-accent-800, #017a5e); line-height: 1; }
.pw-rub-aide-item[open] .pw-rub-aide-q::after { content: "−"; }
.pw-rub-aide-q:hover { background: #f8fafc; }
.pw-rub-aide-a { padding: 0 20px 16px; color: #334155; line-height: 1.65; font-size: 14.5px; }
.pw-rub-aide-a p { margin: 0 0 10px; max-width: 70ch; }
.pw-rub-aide-a p:last-child { margin-bottom: 0; }
.pw-rub-aide-a ul { margin: 0; padding-left: 20px; }
.pw-rub-aide-a li { margin: 0 0 4px; }
.pw-rub-seo { background: #fff; border-radius: 12px; box-shadow: 0 2px 8px rgba(36, 46, 57, 0.06); border: 1px solid rgba(36, 46, 57, 0.06); padding: 26px 32px 28px; margin: 0 0 48px; }
.pw-rub-seo .pw-rub-h2 { font-family: 'Outfit', sans-serif; font-size: 24px; font-weight: 700; color: #242e39; margin: 0 0 14px; line-height: 1.2; }
.pw-rub-h3 { font-family: 'Outfit', sans-serif; font-size: 18px; font-weight: 700; color: #242e39; margin: 22px 0 8px; line-height: 1.3; }
.pw-rub-seo p { color: #334155; line-height: 1.7; font-size: 15px; margin: 0 0 12px; max-width: 72ch; }
@media (max-width: 1100px) {

    .pw-rub-layout { grid-template-columns: 290px 1fr; gap: 20px; }
    .pw-rub-hero-inner { gap: 24px; }
}

@media (max-width: 900px) {

    .pw-rub-main { width: 100%; margin: 16px 0 24px; padding: 0 16px; }
    .pw-rub-breadcrumbs { padding: 0 20px; }
    .pw-rub-hero { padding: 22px 20px 24px; }
    .pw-rub-hero-inner { grid-template-columns: 1fr; gap: 18px; }
    .pw-rub-hero-visual { order: -1; }
    .pw-rub-hero-visual img { max-width: 320px; }
    .pw-rub-h1 { font-size: 26px; }
    .pw-rub-subtitle { font-size: 15px; }
    .pw-rub-layout { grid-template-columns: 1fr; gap: 24px; justify-items: center; }
    .pw-rub-devis { width: 100%; max-width: 480px; margin: 0 auto; }
    .pw-rub-products { width: 100%; }
    .pw-rub-product-grid { grid-template-columns: 1fr; }
    .pw-rub-product-media { max-width: 200px; }
    .pw-rub-seo { padding: 22px 18px 24px; }
}

@media (max-width: 600px) {

    .pw-rub-main { padding: 0 12px; }
    .pw-rub-breadcrumbs { padding: 0 14px; }
    .pw-rub-hero { padding: 18px 14px 20px; }
    .pw-rub-hero-visual img { max-width: 280px; }
    .pw-rub-h1 { font-size: 22px; }
    .pw-rub-product { padding: 16px 14px; }
    .pw-rub-tarifs { grid-template-columns: 1fr; }
    .pw-rub-aide-q { padding: 14px 40px 14px 16px; font-size: 14.5px; }
    .pw-rub-aide-a { padding: 0 16px 14px; }
    .pw-rub-seo .pw-rub-h2 { font-size: 21px; }
    .pw-rub-h3 { font-size: 17px; }
}

/* === from pw-buy.css === */

/* Le centre prend la largeur du cadre PW (#all), pas un max-width ui-kit */
.pw-rub-main,.pw-buy-wrap{max-width:none !important;margin:0 !important;padding-left:0 !important;padding-right:0 !important;width:auto !important}
.pw-rub-main{padding-top:8px !important;padding-bottom:8px !important}

/* touslesproduits en pleine largeur de la fenetre (demande Sarah, scope page acheter) */
.touslesproduits{width:100vw !important;max-width:100vw !important;margin-left:calc(50% - 50vw) !important;margin-right:calc(50% - 50vw) !important;box-sizing:border-box}
