:root{--cpd-orange:#ff6b00;--cpd-red:#ff3344;--cpd-ink:#111;--cpd-soft:#fff5ef;--cpd-line:#ececec;--cpd-radius:18px}.cpd-directory,.cpd-portal,.cpd-pricing{font-family:Inter,Arial,sans-serif;color:var(--cpd-ink)}.cpd-filter{display:flex;gap:10px;margin:0 0 28px}.cpd-filter input{flex:1;border:1px solid var(--cpd-line);padding:14px 16px;border-radius:12px}.cpd-filter button,.cpd-btn{border:0;background:linear-gradient(90deg,var(--cpd-red),var(--cpd-orange));color:#fff!important;padding:11px 16px;border-radius:9px;text-decoration:none;font-weight:700;display:inline-block;cursor:pointer}.cpd-btn-dark{background:#111}.cpd-btn-light{background:#eee;color:#111!important}.cpd-grid{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:22px}.cpd-card{background:#fff;border:1px solid var(--cpd-line);border-radius:var(--cpd-radius);overflow:hidden;box-shadow:0 8px 26px rgba(0,0,0,.035);transition:.25s transform,.25s box-shadow}.cpd-card:hover{transform:translateY(-6px);box-shadow:0 16px 40px rgba(0,0,0,.09)}.cpd-plan-premium{border-color:#ff9c63;box-shadow:0 10px 34px rgba(255,107,0,.12)}.cpd-card-media{display:block;height:190px;overflow:hidden;background:#fafafa}.cpd-card-media img{width:100%;height:100%;object-fit:cover;transition:transform .45s ease}.cpd-card:hover .cpd-card-media img{transform:scale(1.055)}.cpd-logo-fallback{display:grid;height:100%;place-items:center;font-size:64px;font-weight:800}.cpd-card-body{padding:20px}.cpd-plan-badge,.cpd-plan-pill{font-size:12px;font-weight:800;padding:6px 9px;border-radius:999px;background:#fff0e6;color:#c95400}.cpd-card h3{margin:12px 0 8px;font-size:21px}.cpd-card h3 a{color:#111;text-decoration:none}.cpd-card p{color:#555}.cpd-card-actions{display:flex;align-items:center;gap:12px;margin-top:18px}.cpd-link{color:#111;font-weight:700}.cpd-single-actions{margin-top:24px}.cpd-auth-card{max-width:470px;margin:30px auto;background:#fff;border:1px solid var(--cpd-line);border-radius:var(--cpd-radius);padding:28px;box-shadow:0 20px 60px rgba(0,0,0,.06)}.cpd-portal{display:grid;grid-template-columns:250px 1fr;min-height:720px;background:#fafafa;border-radius:24px;overflow:hidden;border:1px solid #eee}.cpd-sidebar{background:#111;color:#fff;padding:28px 18px}.cpd-brand{padding:0 10px 28px}.cpd-brand strong{font-size:24px}.cpd-brand span{display:block;color:#aaa;margin-top:4px}.cpd-sidebar nav{display:flex;flex-direction:column;gap:5px}.cpd-sidebar a{color:#ddd;text-decoration:none;padding:12px 14px;border-radius:10px;font-weight:600}.cpd-sidebar a:hover,.cpd-sidebar a.active{background:linear-gradient(90deg,#ff3344,#ff6b00);color:#fff}.cpd-main{padding:34px}.cpd-hero{background:linear-gradient(135deg,#fff1eb,#fff);border-radius:22px;padding:30px;display:flex;justify-content:space-between;gap:20px;align-items:flex-start;border:1px solid #ffe0d0}.cpd-eyebrow{color:var(--cpd-orange);font-weight:800;font-size:12px;text-transform:uppercase}.cpd-hero h2{font-size:32px;line-height:1.08;margin:8px 0}.cpd-kpis{display:grid;grid-template-columns:repeat(3,1fr);gap:16px;margin:22px 0}.cpd-kpis>div,.cpd-panel,.cpd-lead,.cpd-upgrade,.cpd-notice{background:#fff;border:1px solid var(--cpd-line);border-radius:16px;padding:20px}.cpd-kpis strong{font-size:30px;display:block}.cpd-kpis span{color:#777}.cpd-form{display:grid;gap:16px}.cpd-form label{display:grid;gap:7px;font-weight:700}.cpd-form input,.cpd-form textarea,.cpd-form select{padding:13px 14px;border:1px solid #ddd;border-radius:10px;background:#fff}.cpd-form-grid{display:grid;grid-template-columns:1fr 1fr;gap:16px}.cpd-banner{padding:13px 16px;border-radius:12px;margin-bottom:18px}.cpd-banner-info{background:#eef6ff}.cpd-banner-warning{background:#fff4d6}.cpd-banner-success{background:#eaf9ef}.cpd-list{display:grid;gap:12px}.cpd-list-row{display:flex;justify-content:space-between;gap:15px;background:#fff;border:1px solid #eee;border-radius:12px;padding:14px}.cpd-lead{margin-bottom:14px}.cpd-status{margin-left:10px;font-size:12px;background:#eee;padding:4px 8px;border-radius:999px}.cpd-pricing{display:grid;grid-template-columns:repeat(3,1fr);gap:18px}.cpd-price-card{border:1px solid #eee;border-radius:18px;padding:24px;background:#fff}.cpd-price-card.featured{background:linear-gradient(145deg,#ff394a,#ff7a00);color:#fff;transform:translateY(-8px)}.cpd-price{font-size:34px;font-weight:900}.cpd-price small{font-size:13px}.cpd-price-card li{margin:9px 0}@media(max-width:900px){.cpd-grid,.cpd-pricing{grid-template-columns:1fr 1fr}.cpd-portal{grid-template-columns:1fr}.cpd-sidebar nav{flex-direction:row;overflow:auto}.cpd-main{padding:20px}}@media(max-width:620px){.cpd-grid,.cpd-pricing,.cpd-kpis,.cpd-form-grid{grid-template-columns:1fr}.cpd-hero{flex-direction:column}}
.cpd-claim-wrap{max-width:720px;margin:34px auto}.cpd-claim-card{background:#fff;border:1px solid var(--cpd-line);border-radius:24px;padding:32px;box-shadow:0 18px 55px rgba(0,0,0,.06)}.cpd-claim-card h2{font-size:32px;line-height:1.1;margin:8px 0 12px}.cpd-claim-company{display:flex;justify-content:space-between;gap:15px;align-items:center;background:var(--cpd-soft);border-radius:14px;padding:16px 18px;margin:20px 0}.cpd-claim-company span{color:#666;font-size:14px}.cpd-check{display:flex!important;grid-template-columns:auto 1fr!important;align-items:flex-start;gap:9px!important;font-weight:600!important}.cpd-check input{margin-top:3px}.cpd-hp{position:absolute!important;left:-9999px!important;opacity:0!important;width:1px!important;height:1px!important}

/* V0.4 — Offres, tracking et espace partenaire enrichi */
.cpd-filter-wide{display:grid;grid-template-columns:minmax(220px,1.5fr) repeat(3,minmax(150px,1fr)) auto;align-items:center}
.cpd-filter select{border:1px solid var(--cpd-line);padding:14px 14px;border-radius:12px;background:#fff;min-width:0}
.cpd-card-top{display:flex;align-items:center;justify-content:space-between;gap:8px;min-height:28px}
.cpd-featured-label{font-size:11px;font-weight:800;color:#fff;background:linear-gradient(90deg,var(--cpd-red),var(--cpd-orange));padding:6px 9px;border-radius:999px}
.cpd-tags{display:flex;flex-wrap:wrap;gap:6px;margin:8px 0 4px}.cpd-tags span{font-size:11px;font-weight:700;color:#6f4f3d;background:#fff4ed;border-radius:999px;padding:5px 8px}
.cpd-offer-provider{font-size:13px;color:#777!important;margin:0 0 8px!important}.cpd-offer-provider a{color:#111;font-weight:700;text-decoration:none}
.cpd-offer-cat{font-size:11px;color:#666}.cpd-offer-prices{display:flex;align-items:baseline;gap:9px;margin-top:15px}.cpd-offer-prices strong{font-size:20px}.cpd-offer-prices span{font-size:12px;color:#777}
.cpd-pagination{display:flex;justify-content:center;align-items:center;gap:18px;margin:30px 0}.cpd-pagination a{font-weight:700;text-decoration:none;color:#111}.cpd-pagination span{color:#777;font-size:13px}
.cpd-provider-offers{margin-top:48px;padding-top:38px;border-top:1px solid var(--cpd-line)}.cpd-section-title{margin-bottom:22px}.cpd-section-title h2{font-size:30px;margin:5px 0}
.cpd-offer-gallery{display:grid;grid-template-columns:2fr 1fr;gap:12px;margin:26px 0}.cpd-offer-gallery figure{margin:0;border-radius:18px;overflow:hidden;background:#f6f6f6;min-height:180px}.cpd-offer-gallery figure:first-child{grid-row:span 2;min-height:380px}.cpd-offer-gallery img{width:100%;height:100%;object-fit:cover;display:block;transition:transform .45s ease}.cpd-offer-gallery figure:hover img{transform:scale(1.035)}
.cpd-offer-commercial{display:flex;justify-content:space-between;align-items:center;gap:22px;background:#fff6f0;border:1px solid #ffe1cf;border-radius:18px;padding:20px 22px;margin:20px 0}.cpd-offer-price-box{display:flex;flex-direction:column}.cpd-offer-price-box strong{font-size:26px}.cpd-offer-price-box span{color:#777;font-size:13px}
.cpd-offer-summary{display:grid;grid-template-columns:repeat(3,1fr);gap:14px;margin:18px 0 22px}.cpd-offer-summary>div{background:#fff;border:1px solid var(--cpd-line);border-radius:16px;padding:17px}.cpd-offer-summary strong{display:block;font-size:23px}.cpd-offer-summary span{font-size:12px;color:#777}
.cpd-panel-head{display:flex;align-items:flex-start;justify-content:space-between;gap:18px;margin-bottom:18px}.cpd-panel-head h3{margin:4px 0 0;font-size:24px}.cpd-offer-editor{margin-bottom:24px}.cpd-form-grid-3{grid-template-columns:repeat(3,1fr)}
.cpd-fieldset{border:1px solid var(--cpd-line);border-radius:14px;padding:14px 16px}.cpd-fieldset legend{font-weight:800;padding:0 6px}.cpd-check-grid{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:8px 15px}.cpd-check-grid label{display:flex;grid-template-columns:auto 1fr;align-items:center;font-weight:600}.cpd-check-grid input{padding:0}
.cpd-help{font-size:12px;color:#777;margin:-8px 0 4px}.cpd-tracking-box,.cpd-media-editor{border:1px solid #ffe0d0;background:#fff9f5;border-radius:16px;padding:18px}.cpd-tracking-box h3,.cpd-tracking-box h4,.cpd-media-editor h4{margin:0 0 14px}.cpd-tracking-box code{display:inline-block;max-width:100%;overflow-wrap:anywhere;background:#fff;border:1px solid #eee;border-radius:8px;padding:7px 9px}
.cpd-current-gallery{display:grid;grid-template-columns:repeat(4,1fr);gap:10px;margin:14px 0}.cpd-gallery-edit{background:#fff;border:1px solid #eee;border-radius:14px;overflow:hidden;font-size:12px!important}.cpd-gallery-edit img{width:100%;aspect-ratio:1/1;object-fit:cover;display:block}.cpd-gallery-edit span{padding:8px;display:flex;align-items:center;gap:6px}.cpd-gallery-edit input{padding:0}
.cpd-partner-offer-row{display:grid;grid-template-columns:82px 1fr;gap:14px;align-items:center;background:#fff;border:1px solid #eee;border-radius:16px;padding:12px;transition:.2s transform,.2s box-shadow}.cpd-partner-offer-row:hover{transform:translateY(-2px);box-shadow:0 10px 28px rgba(0,0,0,.055)}.cpd-partner-offer-thumb{width:82px;height:70px;border-radius:12px;overflow:hidden;background:#fff3eb;display:grid;place-items:center;font-weight:900;color:var(--cpd-orange)}.cpd-partner-offer-thumb img{width:100%;height:100%;object-fit:cover}.cpd-row-title{display:flex;justify-content:space-between;align-items:center;gap:12px}.cpd-partner-offer-info p{margin:5px 0;color:#777}.cpd-row-actions{display:flex;gap:12px;font-size:13px}.cpd-row-actions a{color:#111;font-weight:700;text-decoration:none}.cpd-row-actions .cpd-danger-link{color:#b92e2e}
.cpd-status-publish{background:#e8f7ed;color:#20763c}.cpd-status-pending{background:#fff2d9;color:#8a5a00}.cpd-status-draft{background:#eee;color:#555}
.cpd-kpis-5{grid-template-columns:repeat(5,1fr)}.cpd-stats-table{display:grid;gap:0}.cpd-stats-head,.cpd-stats-row{display:grid;grid-template-columns:minmax(220px,2fr) repeat(3,1fr);gap:12px;padding:11px 8px;border-bottom:1px solid #eee;align-items:center}.cpd-stats-head{font-size:11px;text-transform:uppercase;color:#777;font-weight:800}.cpd-stats-row span{text-align:left}
@media(max-width:1050px){.cpd-filter-wide{grid-template-columns:1fr 1fr}.cpd-kpis-5{grid-template-columns:repeat(3,1fr)}}
@media(max-width:700px){.cpd-filter-wide,.cpd-form-grid-3,.cpd-offer-summary,.cpd-current-gallery{grid-template-columns:1fr 1fr}.cpd-offer-gallery{grid-template-columns:1fr}.cpd-offer-gallery figure:first-child{grid-row:auto;min-height:260px}.cpd-offer-commercial{align-items:flex-start;flex-direction:column}.cpd-stats-head,.cpd-stats-row{grid-template-columns:1fr repeat(3,65px)}}
@media(max-width:520px){.cpd-filter,.cpd-filter-wide,.cpd-form-grid-3,.cpd-offer-summary,.cpd-current-gallery,.cpd-kpis-5{grid-template-columns:1fr}.cpd-filter{display:grid}.cpd-partner-offer-row{grid-template-columns:62px 1fr}.cpd-partner-offer-thumb{width:62px;height:62px}.cpd-stats-head{display:none}.cpd-stats-row{grid-template-columns:1fr repeat(3,45px);font-size:12px}}

/* V0.5 — Localisation, nouvelle fiche partenaire et portail Conseil/Pixfort */
.cpd-filter-wide{grid-template-columns:repeat(auto-fit,minmax(155px,1fr));align-items:stretch}.cpd-filter-wide>input:first-child{min-width:220px}.cpd-filter-wide button{min-height:48px}.cpd-filter-location{font-size:13px}.cpd-location-line{display:flex;align-items:center;gap:6px;color:#6b7280!important;font-size:13px;margin:8px 0!important}.cpd-location-detail{line-height:1.65;color:#4b5563;font-size:14px}.cpd-card-media,.cpd-card-media img{border-radius:16px 16px 0 0}.cpd-provider-card .cpd-card-media{margin:10px 10px 0;height:175px;border-radius:15px}.cpd-provider-card .cpd-card-media img{border-radius:15px}.cpd-provider-card{border-radius:20px}.cpd-provider-card:hover .cpd-card-media{box-shadow:0 12px 25px rgba(255,107,0,.13)}

.cpd-provider-page{max-width:1180px;margin:44px auto 72px;padding:0 22px;font-family:Inter,Arial,sans-serif;color:#151515}.cpd-provider-carousel{position:relative;margin-bottom:30px;border-radius:24px;overflow:hidden;background:#f5f5f5;box-shadow:0 14px 44px rgba(0,0,0,.07)}.cpd-carousel{position:relative;overflow:hidden}.cpd-carousel-track{display:flex;transition:transform .45s cubic-bezier(.22,.61,.36,1)}.cpd-carousel-slide{min-width:100%;height:460px;margin:0;overflow:hidden}.cpd-carousel-slide img{width:100%;height:100%;object-fit:cover;display:block;transition:transform .7s ease}.cpd-provider-carousel:hover .cpd-carousel-slide img{transform:scale(1.018)}.cpd-carousel-prev,.cpd-carousel-next{position:absolute;z-index:3;top:50%;transform:translateY(-50%);width:44px;height:44px;border:0;border-radius:50%;background:rgba(255,255,255,.93);box-shadow:0 5px 22px rgba(0,0,0,.15);font-size:27px;line-height:1;cursor:pointer}.cpd-carousel-prev{left:18px}.cpd-carousel-next{right:18px}.cpd-carousel-dots{position:absolute;z-index:3;bottom:16px;left:50%;transform:translateX(-50%);display:flex;gap:7px}.cpd-carousel-dots button{width:8px;height:8px;border:0;border-radius:50%;background:rgba(255,255,255,.65);padding:0;cursor:pointer}.cpd-carousel-dots button.is-active{width:24px;border-radius:10px;background:#fff}

.cpd-provider-layout{display:grid;grid-template-columns:minmax(0,1fr) 350px;gap:36px;align-items:start}.cpd-provider-content{min-width:0}.cpd-provider-copy{font-size:16px;line-height:1.75;color:#373737}.cpd-provider-copy>p:first-child{margin-top:0}.cpd-provider-copy h2,.cpd-provider-copy h3{color:#111;line-height:1.2}.cpd-associated-offers{margin:26px 0}.cpd-associated-offers>strong{display:block;font-size:12px;text-transform:uppercase;letter-spacing:.05em;color:#777;margin-bottom:9px}.cpd-offer-badges{display:flex;flex-wrap:wrap;gap:8px}.cpd-offer-badges a{display:inline-flex;align-items:center;gap:6px;padding:8px 12px;border-radius:999px;background:#fff2e9;border:1px solid #ffd7bd;color:#9f480b;text-decoration:none;font-size:12px;font-weight:800;transition:.2s}.cpd-offer-badges a:hover{background:#ff6b00;color:#fff;border-color:#ff6b00;transform:translateY(-1px)}

.cpd-provider-aside{position:sticky;top:32px;border:1px solid #eee;border-radius:24px;background:#fff;overflow:hidden;box-shadow:0 20px 60px rgba(17,24,39,.08)}.cpd-provider-aside-hero{min-height:118px;padding:22px;background:linear-gradient(135deg,#ff3b42 0%,#ff7400 58%,#ffb113 100%);position:relative}.cpd-provider-aside-hero:after{content:"";position:absolute;inset:0;background:radial-gradient(circle at 85% 15%,rgba(255,255,255,.3),transparent 36%)}.cpd-provider-aside-hero img,.cpd-aside-logo-fallback{position:relative;z-index:1;width:92px;height:92px;object-fit:cover;background:#fff;border-radius:18px;padding:6px;box-shadow:0 10px 26px rgba(74,30,0,.2)}.cpd-aside-logo-fallback{display:grid;place-items:center;font-size:38px;font-weight:900;color:#ff6b00}.cpd-provider-aside-body{padding:24px}.cpd-provider-aside-body h1{font-size:28px;line-height:1.08;margin:0 0 12px;color:#111}.cpd-aside-section{padding:15px 0;border-top:1px solid #eee}.cpd-aside-section:first-of-type{border-top:0}.cpd-aside-label{display:block;font-size:10px;font-weight:900;text-transform:uppercase;letter-spacing:.08em;color:#9a9a9a;margin-bottom:8px}.cpd-provider-aside .cpd-tags{margin:0}.cpd-provider-aside .cpd-plan-badge{display:inline-flex;margin:4px 0 0;background:linear-gradient(90deg,#ff394a,#ff7600);color:#fff}.cpd-tenure{font-size:13px;color:#6b7280;margin:8px 0}.cpd-contact-row{display:flex;flex-direction:column;gap:4px;margin:8px 0;font-size:14px}.cpd-contact-row strong{font-size:11px;text-transform:uppercase;color:#8b8b8b;letter-spacing:.04em}.cpd-contact-row a{color:#111;text-decoration:none;font-weight:700;overflow-wrap:anywhere}.cpd-contact-row a:hover{color:#ff6b00}.cpd-btn-block{width:100%;display:block;text-align:center;box-sizing:border-box;margin-top:11px;padding:13px 15px}.cpd-secondary-cta{display:block;text-align:center;color:#111;font-size:13px;font-weight:800;text-decoration:none;margin-top:13px}.cpd-secondary-cta:hover{color:#ff6b00}.cpd-claim-prompt{margin-top:12px;padding:17px;background:#fff6ef;border:1px solid #ffdcc5;border-radius:15px}.cpd-claim-prompt strong{display:block;margin-bottom:6px}.cpd-claim-prompt a{color:#e85d00;font-weight:800;text-decoration:none}

.cpd-provider-page .cpd-provider-offers{margin-top:45px}.cpd-provider-page .cpd-grid{grid-template-columns:repeat(2,minmax(0,1fr))}.cpd-provider-page .cpd-card-media{height:170px}

/* Partner area — light SaaS interface inspired by Conseil/Pixfort */
.cpd-portal{grid-template-columns:260px 1fr;background:#f6f8fb;border-color:#e8ebf0;box-shadow:0 20px 70px rgba(15,23,42,.06)}.cpd-sidebar{background:#111b2e;padding:24px 17px}.cpd-brand{padding:0 9px 26px}.cpd-brand img{display:block;max-width:72px;max-height:72px;object-fit:contain;background:#fff;border-radius:16px;padding:6px;margin-bottom:13px}.cpd-brand strong{font-size:18px;display:block}.cpd-brand span{font-size:12px;color:#94a3b8}.cpd-sidebar a{border-radius:11px;padding:12px 13px;color:#d8dee9}.cpd-sidebar a:hover,.cpd-sidebar a.active{background:#fff;color:#111b2e;box-shadow:0 6px 18px rgba(0,0,0,.08)}.cpd-main{padding:34px 38px}.cpd-hero{background:#fff;border:1px solid #e8ebf0;box-shadow:0 8px 30px rgba(15,23,42,.04)}.cpd-hero:before{content:"";display:block;width:7px;align-self:stretch;border-radius:8px;background:linear-gradient(#ff3c45,#ff8200)}.cpd-kpis>div,.cpd-panel,.cpd-lead,.cpd-upgrade,.cpd-notice{border-color:#e7eaf0;box-shadow:0 5px 22px rgba(15,23,42,.035)}.cpd-panel,.cpd-lead{border-radius:18px}.cpd-location-editor{padding:18px;border:1px solid #f1dfd2;background:#fffaf6;border-radius:16px}.cpd-media-editor img{border-radius:14px}.cpd-current-gallery img{transition:transform .3s ease}.cpd-current-gallery .cpd-gallery-edit:hover img{transform:scale(1.035)}

@media(max-width:1100px){.cpd-provider-layout{grid-template-columns:minmax(0,1fr) 310px;gap:26px}.cpd-provider-page{padding:0 18px}.cpd-carousel-slide{height:390px}}
@media(max-width:900px){.cpd-provider-layout{grid-template-columns:1fr}.cpd-provider-aside{position:relative;top:auto}.cpd-provider-page .cpd-grid{grid-template-columns:1fr 1fr}.cpd-carousel-slide{height:340px}.cpd-main{padding:24px}}
@media(max-width:620px){.cpd-provider-page{margin-top:24px}.cpd-carousel-slide{height:250px}.cpd-carousel-prev,.cpd-carousel-next{width:38px;height:38px}.cpd-provider-aside-body h1{font-size:24px}.cpd-provider-page .cpd-grid{grid-template-columns:1fr}.cpd-filter-wide{grid-template-columns:1fr}.cpd-filter-wide>input:first-child{min-width:0}.cpd-main{padding:18px}.cpd-brand img{max-width:58px}}
.cpd-carousel-dots button.active{width:24px;border-radius:10px;background:#fff}
