.dp-reseau {
  --dp-blue: #203c64;
  --dp-orange-accent: #fd780f;
  --dp-orange: #fd780f;
  --dp-orange-readable: #e96f00;
  --dp-ink: #24323f;
  --dp-muted: #64717b;
  --dp-line: #d8e0e6;
  --dp-light: #ffffff;
  color: var(--dp-ink);
  background: #ffffff;
}

body.dp-reseau-page,
body.dp-reseau-page .site,
body.dp-reseau-page .site-content,
body.dp-reseau-page .content-area,
body.dp-reseau-page .site-main,
body.dp-reseau-page .inside-article {
  background-color: #ffffff;
}

.dp-reseau *, .dp-reseau *::before, .dp-reseau *::after { box-sizing: border-box; }
.dp-reseau-heading { margin-bottom: 1.5rem; }
.dp-reseau-heading h2 { margin-bottom: .35rem; color: var(--dp-blue); }
.dp-reseau-heading p, .dp-muted { color: var(--dp-muted); }

.dp-filters {
  display: grid;
  grid-template-columns: repeat(4, minmax(0, 1fr));
  gap: 1rem;
  align-items: end;
  padding: 1.25rem;
  margin-bottom: 1.5rem;
  background: var(--dp-light);
  border: 1px solid var(--dp-line);
  border-radius: 12px;
}

.dp-filters label span, .dp-front-form label > span { display: block; margin-bottom: .35rem; font-weight: 700; }
.dp-filters input, .dp-filters select, .dp-front-form input, .dp-front-form textarea {
  width: 100%;
  min-height: 44px;
  padding: .7rem .8rem;
  color: var(--dp-ink);
  background: #fff;
  border: 1px solid #b9c5ce;
  border-radius: 6px;
}
.dp-front-form textarea { min-height: 130px; }
.dp-filter-actions { display: flex; gap: .5rem; align-items: center; }

.dp-card-grid { display: grid; grid-template-columns: repeat(2, minmax(0, 1fr)); gap: 1.25rem; }
.dp-card {
  padding: 1.25rem;
  background: #fff;
  border: 1px solid var(--dp-line);
  border-radius: 12px;
  box-shadow: 0 8px 24px rgba(32, 60, 100, .07);
}
.dp-card.is-featured { border-color: var(--dp-orange); }
.dp-card h2 { margin: .75rem 0; color: var(--dp-blue); font-size: 1.2rem; }
.dp-card h2 a { color: inherit; text-decoration: none; }
.dp-card h2 a:hover { color: var(--dp-blue); text-decoration: underline; text-decoration-color: var(--dp-orange); text-underline-offset: 3px; }
.dp-card-topline { display: flex; flex-wrap: wrap; gap: .5rem; align-items: center; justify-content: space-between; }
.dp-badge { display: inline-flex; padding: .25rem .55rem; border-radius: 999px; background: #e7edf3; color: var(--dp-blue); font-size: .78rem; font-weight: 700; }
.dp-status-profil_complete, .dp-status-verifie, .dp-status-membre_reseau, .dp-status-actif_matching, .dp-status-ouverte { background: #e3f3ea; color: #236844; }
.dp-status-proposition_recue { background: #fff0df; color: #9a4c00; }
.dp-status-reference, .dp-status-a_verifier { background: #eef1f3; color: #58636b; }
.dp-status-sponsorise { background: #fff0df; color: #9a4c00; }
.dp-sponsored { color: #9a4c00; font-size: .78rem; font-weight: 700; }
.dp-public-id { color: var(--dp-muted); font-size: .82rem; }
.dp-card-actions { display: flex; flex-wrap: wrap; gap: .65rem; margin-top: 1rem; }
.dp-button { display: inline-flex; align-items: center; justify-content: center; min-height: 42px; padding: .65rem 1rem; border: 1px solid transparent; border-radius: 6px; font-weight: 700; text-decoration: none; cursor: pointer; }
.dp-button-primary { color: #10253a !important; background: var(--dp-orange); }
.dp-button-primary:hover { color: #10253a !important; background: var(--dp-orange-readable); }
.dp-button-ghost { color: var(--dp-blue) !important; background: #fff; border-color: var(--dp-blue); }
.dp-request-facts { margin: .75rem 0 0; padding-left: 1.15rem; }
.dp-request-facts li { margin-bottom: .3rem; }

.dp-empty-state, .dp-notice { grid-column: 1 / -1; padding: 1.25rem; background: var(--dp-light); border: 1px solid var(--dp-line); border-radius: 10px; }
.dp-notice-success { background: #e3f3ea; border-color: #79b695; }
.dp-notice-error { background: #fbe8e8; border-color: #d98b8b; }
.dp-pagination { display: flex; flex-wrap: wrap; gap: .4rem; margin-top: 1.5rem; }
.dp-pagination .page-numbers { padding: .45rem .7rem; border: 1px solid var(--dp-line); border-radius: 5px; text-decoration: none; }
.dp-pagination .current { color: #fff; background: var(--dp-blue); }

/* Dégage le cadre du formulaire du titre de page GeneratePress. */
.dp-proposal-form { margin-top: 1.75rem; }

.dp-front-form { display: grid; grid-template-columns: repeat(2, minmax(0, 1fr)); gap: 1rem; margin-top: 1.5rem; }
.dp-form-wide { grid-column: 1 / -1; }
.dp-check { display: flex; gap: .65rem; align-items: flex-start; }
.dp-check input { width: auto; min-height: auto; margin-top: .3rem; }
.dp-honeypot { position: absolute !important; left: -10000px !important; width: 1px !important; height: 1px !important; overflow: hidden !important; }
.dp-provider-profile dl { display: grid; grid-template-columns: 140px 1fr; gap: .5rem 1rem; }
.dp-provider-profile dt { font-weight: 700; }
.dp-provider-profile dd { margin: 0; }
.dp-provider-profile .dp-notice { margin: .75rem 0 0; }
.dp-provider-cta { margin: 1rem 0 .75rem; }
.dp-provider-cta .dp-button { margin: 0; }
.dp-provider-actions { align-items: stretch; }
.dp-provider-actions .dp-button-ghost { max-width: 420px; text-align: center; line-height: 1.25; }

@media (max-width: 900px) {
  .dp-filters { grid-template-columns: repeat(2, minmax(0, 1fr)); }
}

@media (max-width: 640px) {
  .dp-filters, .dp-card-grid, .dp-front-form { grid-template-columns: 1fr; }
  .dp-form-wide { grid-column: auto; }
  .dp-filter-actions { flex-direction: column; align-items: stretch; }
  .dp-provider-profile dl { grid-template-columns: 1fr; }
  .dp-provider-actions { flex-direction: column; }
  .dp-provider-actions .dp-button-ghost { max-width: none; }
}


/* V1.2.4 — transparence des profils et droits des entreprises */
.dp-profile-transparency {
  margin-top: 1.25rem;
  padding: 1rem 1.1rem;
  border: 1px solid var(--dp-line);
  border-radius: 10px;
  background: #f7f9fb;
  color: var(--dp-muted);
}
.dp-profile-transparency p { margin: 0; }
.dp-profile-transparency p + p { margin-top: .55rem; }
.dp-profile-source { font-size: .92rem; }
.dp-profile-rights { margin-top: 1rem; font-size: .92rem; }
.dp-profile-rights a { color: var(--dp-blue); text-decoration: underline; text-underline-offset: 2px; }

/* V1.2.5 — prototype visuel premium des cartes et profils */
.dp-provider-card {
  display: flex;
  flex-direction: column;
  gap: 1rem;
  min-height: 100%;
  padding: 1.35rem;
  border-color: #dfe6ec;
  border-radius: 16px;
  box-shadow: 0 14px 34px rgba(32, 60, 100, .08);
  transition: transform .18s ease, box-shadow .18s ease, border-color .18s ease;
}
.dp-provider-card:hover {
  transform: translateY(-2px);
  border-color: #c8d4df;
  box-shadow: 0 18px 42px rgba(32, 60, 100, .12);
}
.dp-provider-card-header,
.dp-profile-identity {
  display: flex;
  gap: 1rem;
  align-items: flex-start;
}
.dp-provider-card-identity,
.dp-profile-identity > div:last-child { min-width: 0; flex: 1; }
.dp-provider-visual {
  display: flex;
  flex: 0 0 auto;
  align-items: center;
  justify-content: center;
  overflow: hidden;
  border: 1px solid #d8e0e8;
  background: #edf3f8;
  color: var(--dp-blue);
  font-weight: 800;
  letter-spacing: .03em;
}
.dp-provider-visual-card { width: 64px; height: 64px; border-radius: 14px; font-size: 1.05rem; }
.dp-provider-visual-profile { width: 88px; height: 88px; border-radius: 18px; font-size: 1.35rem; }
.dp-provider-logo-image { width: 100%; height: 100%; object-fit: contain; padding: .45rem; background: #fff; }
.dp-provider-generic-icon { border-color: #ffd4b0; background: #fff5ec; color: var(--dp-orange-readable); }
.dp-provider-generic-icon .dp-company-icon { width: 54%; height: 54%; }
.dp-provider-visual-profile.dp-provider-generic-icon .dp-company-icon { width: 50%; height: 50%; }
.dp-provider-card h2 { margin: .15rem 0 .3rem; font-size: 1.18rem; line-height: 1.3; }
.dp-provider-location,
.dp-profile-location { margin: 0; color: var(--dp-muted); font-size: .94rem; }
.dp-profile-location { margin-bottom: .7rem; font-weight: 600; }
.dp-chip-list { display: flex; flex-wrap: wrap; gap: .45rem; }
.dp-chip {
  display: inline-flex;
  align-items: center;
  min-height: 28px;
  padding: .3rem .65rem;
  border: 1px solid #dbe4ec;
  border-radius: 999px;
  background: #f5f8fb;
  color: #33465a;
  font-size: .82rem;
  font-weight: 700;
  line-height: 1.15;
}
.dp-service-chips .dp-chip { border-color: #cbd9e6; background: #edf4fa; color: var(--dp-blue); }
.dp-proof-chips .dp-chip { border-color: #cde3d6; background: #eff8f3; color: #236844; }
.dp-chip-more { background: #fff; color: var(--dp-muted); }
.dp-provider-summary { margin: 0; color: #485967; line-height: 1.6; }
.dp-provider-card-facts {
  display: grid;
  gap: .55rem;
  padding: .9rem 1rem;
  border-radius: 12px;
  background: #f7f9fb;
}
.dp-provider-card-facts p { display: grid; grid-template-columns: 70px 1fr; gap: .7rem; margin: 0; font-size: .9rem; line-height: 1.35; }
.dp-provider-card-facts span { color: var(--dp-muted); }
.dp-provider-card-facts strong { color: var(--dp-ink); font-weight: 650; }
.dp-provider-card .dp-card-actions { margin-top: auto; padding-top: .15rem; }

.dp-provider-profile { margin-top: 2rem; }
.dp-profile-overview {
  display: grid;
  grid-template-columns: minmax(0, 1.35fr) minmax(280px, .65fr);
  gap: 1.25rem;
  margin-bottom: 1.25rem;
}
.dp-profile-identity,
.dp-profile-quick-cta,
.dp-profile-info-card,
.dp-profile-management {
  border: 1px solid #dfe6ec;
  border-radius: 16px;
  background: #fff;
  box-shadow: 0 12px 30px rgba(32, 60, 100, .06);
}
.dp-profile-identity { padding: 1.35rem; align-items: center; background: #f8fafc; }
.dp-profile-badge-row { margin: 0 0 .7rem; }
.dp-profile-quick-cta {
  padding: 1.35rem;
  color: #fff;
  background: var(--dp-blue);
  border-color: var(--dp-blue);
}
.dp-profile-quick-cta p { color: rgba(255, 255, 255, .86); }
.dp-profile-quick-cta-kicker { margin: 0 0 .4rem; color: #fff !important; font-size: 1.08rem; font-weight: 800; }
.dp-profile-quick-cta .dp-button { width: 100%; margin-top: .45rem; }
.dp-profile-info-grid {
  display: grid;
  grid-template-columns: repeat(2, minmax(0, 1fr));
  gap: 1rem;
}
.dp-profile-info-card { padding: 1.2rem; }
.dp-profile-info-wide { grid-column: 1 / -1; }
.dp-profile-info-label { margin: 0 0 .75rem; color: var(--dp-blue); font-size: .82rem; font-weight: 800; letter-spacing: .04em; text-transform: uppercase; }
.dp-profile-info-main { margin: 0 0 .7rem; font-weight: 700; }
.dp-profile-management {
  display: flex;
  justify-content: space-between;
  gap: 1rem;
  align-items: center;
  margin-top: 1.25rem;
  padding: 1.15rem 1.25rem;
}
.dp-profile-management p { margin: 0; }
.dp-profile-management-title { margin-bottom: .2rem !important; color: var(--dp-blue); font-weight: 800; }
.dp-profile-management .dp-button { flex: 0 0 auto; }
.dp-provider-profile .dp-profile-transparency {
  margin-top: 1rem;
  padding: 0;
  overflow: hidden;
  border-radius: 12px;
  background: #f7f9fb;
}
.dp-profile-transparency summary {
  padding: .9rem 1rem;
  color: var(--dp-blue);
  font-weight: 750;
  cursor: pointer;
}
.dp-profile-transparency-content { padding: 0 1rem 1rem; }
.dp-profile-transparency-content p { margin: .55rem 0 0; }
.dp-profile-rights { margin-top: .8rem !important; }

@media (max-width: 900px) {
  .dp-profile-overview { grid-template-columns: 1fr; }
}

@media (max-width: 640px) {
  .dp-provider-card { padding: 1.1rem; }
  .dp-provider-card-header,
  .dp-profile-identity { align-items: flex-start; }
  .dp-provider-visual-card { width: 54px; height: 54px; border-radius: 12px; }
  .dp-provider-visual-profile { width: 68px; height: 68px; border-radius: 14px; }
  .dp-provider-card-facts p { grid-template-columns: 62px 1fr; }
  .dp-provider-card .dp-card-actions .dp-button { width: 100%; }
  .dp-profile-info-grid { grid-template-columns: 1fr; }
  .dp-profile-info-wide { grid-column: auto; }
  .dp-profile-management { align-items: stretch; flex-direction: column; }
  .dp-profile-management .dp-button { width: 100%; }
}

/* V1.2.6 — branding dechetpro.fr, fond blanc, icône entreprise et formulaire de fiche */
.dp-provider-card {
  position: relative;
  gap: .9rem;
  padding: 1.45rem;
  border: 1px solid #e5ebf0;
  border-radius: 18px;
  background: #fff;
  box-shadow: 0 12px 34px rgba(24, 50, 78, .065);
}
.dp-provider-card::before {
  content: "";
  position: absolute;
  inset: 0 auto 0 0;
  width: 3px;
  border-radius: 18px 0 0 18px;
  background: linear-gradient(180deg, var(--dp-orange), #ffad66);
  opacity: .85;
}
.dp-provider-card:hover {
  transform: translateY(-2px);
  border-color: #d8e2ea;
  box-shadow: 0 18px 44px rgba(24, 50, 78, .10);
}
.dp-provider-visual {
  border-color: #fed7aa;
  background: #fff7ed;
  color: var(--dp-orange-readable);
  box-shadow: inset 0 0 0 1px rgba(255, 255, 255, .72);
}
.dp-provider-authorized-logo {
  border-color: #dfe6ec;
  background: #fff;
}
.dp-company-icon { width: 58%; height: 58%; display: block; }
.dp-provider-visual-profile .dp-company-icon { width: 56%; height: 56%; }
.dp-provider-card h2 { margin: .1rem 0 .28rem; font-size: 1.22rem; letter-spacing: -.012em; }
.dp-provider-summary { color: #435362; line-height: 1.62; }
.dp-provider-card-facts {
  display: grid;
  grid-template-columns: repeat(2, minmax(0, 1fr));
  gap: .75rem 1.1rem;
  padding: .1rem 0 0;
  border-top: 1px solid #edf1f4;
  border-radius: 0;
  background: transparent;
}
.dp-provider-card-facts p {
  display: block;
  margin: 0;
  padding-top: .75rem;
  font-size: .9rem;
  line-height: 1.42;
}
.dp-provider-card-facts span {
  display: block;
  margin-bottom: .18rem;
  color: #7a8792;
  font-size: .75rem;
  font-weight: 800;
  letter-spacing: .055em;
  text-transform: uppercase;
}
.dp-provider-card-facts strong { display: block; color: var(--dp-ink); font-weight: 650; }
.dp-chip {
  min-height: 29px;
  border-color: #e0e7ed;
  background: #f8fafc;
  color: #34495d;
}
.dp-service-chips .dp-chip {
  border-color: #d8e4ef;
  background: #f3f7fb;
  color: var(--dp-blue);
}
.dp-card-actions { gap: .7rem; }
.dp-button { border-radius: 8px; transition: transform .15s ease, box-shadow .15s ease, background .15s ease; }
.dp-button-primary { box-shadow: 0 7px 18px rgba(253, 120, 15, .18); }
.dp-button-primary:hover { transform: translateY(-1px); box-shadow: 0 9px 22px rgba(253, 120, 15, .24); }
.dp-button-ghost { border-color: #c8d4df; color: var(--dp-blue) !important; }
.dp-button-ghost:hover { border-color: var(--dp-blue); background: #f7fafc; }

.dp-provider-profile { margin-top: 1.6rem; }
.dp-profile-overview { grid-template-columns: minmax(0, 1.35fr) minmax(290px, .65fr); gap: 1.15rem; }
.dp-profile-identity,
.dp-profile-quick-cta,
.dp-profile-info-card,
.dp-profile-management {
  border: 1px solid #e5ebf0;
  border-radius: 18px;
  background: #fff;
  box-shadow: 0 11px 30px rgba(24, 50, 78, .055);
}
.dp-profile-identity { padding: 1.4rem; background: #fff; }
.dp-profile-quick-cta {
  position: relative;
  overflow: hidden;
  padding: 1.45rem;
  color: var(--dp-ink);
  border-color: #fde0c7;
  background: #fffaf5;
}
.dp-profile-quick-cta::before {
  content: "";
  position: absolute;
  inset: 0 auto 0 0;
  width: 4px;
  background: var(--dp-orange);
}
.dp-profile-quick-cta p { color: #526170; }
.dp-profile-quick-cta-kicker { color: var(--dp-blue) !important; font-size: 1.08rem; }
.dp-profile-quick-cta .dp-button { width: 100%; }
.dp-profile-info-grid { gap: 1.05rem; }
.dp-profile-info-card { padding: 1.25rem; }
.dp-profile-info-card:hover { border-color: #d8e2ea; }
.dp-profile-info-label {
  position: relative;
  padding-left: .72rem;
  color: var(--dp-blue);
}
.dp-profile-info-label::before {
  content: "";
  position: absolute;
  left: 0;
  top: .16rem;
  bottom: .16rem;
  width: 3px;
  border-radius: 3px;
  background: var(--dp-orange);
}
.dp-profile-management { padding: 1.2rem 1.3rem; background: #fff; }
.dp-provider-profile .dp-profile-transparency { border-color: #e5ebf0; background: #fff; box-shadow: none; }
.dp-profile-transparency summary { color: #536474; }

.dp-company-form { margin-top: 1.4rem; }
.dp-company-form-intro {
  padding: 1.45rem 1.55rem;
  border: 1px solid #e5ebf0;
  border-radius: 18px;
  background: #fff;
  box-shadow: 0 12px 34px rgba(24, 50, 78, .055);
}
.dp-company-form-intro h2 { margin: .2rem 0 .55rem; color: var(--dp-blue); font-size: clamp(1.55rem, 2.6vw, 2rem); }
.dp-company-form-intro p:last-child { margin-bottom: 0; color: #536474; }
.dp-company-form-kicker {
  margin: 0;
  padding-left: .55rem;
  border-left: 3px solid var(--dp-orange);
  color: var(--dp-blue) !important;
  font-size: .78rem;
  font-weight: 850;
  letter-spacing: .08em;
  text-transform: uppercase;
}
.dp-company-profile-form {
  gap: 1rem 1.15rem;
  padding: 1.5rem;
  border: 1px solid #e5ebf0;
  border-radius: 18px;
  background: #fff;
  box-shadow: 0 12px 34px rgba(24, 50, 78, .055);
}
.dp-company-profile-form input,
.dp-company-profile-form textarea {
  border-color: #cbd5de;
  border-radius: 8px;
  box-shadow: none;
}
.dp-company-profile-form input:focus,
.dp-company-profile-form textarea:focus {
  outline: 2px solid rgba(253, 120, 15, .18);
  outline-offset: 1px;
  border-color: var(--dp-orange);
}
.dp-form-section {
  margin-top: .45rem;
  padding-top: 1.1rem;
  border-top: 1px solid #edf1f4;
}
.dp-form-section:first-of-type { margin-top: 0; padding-top: 0; border-top: 0; }
.dp-form-section h3 { margin: 0 0 .25rem; color: var(--dp-blue); font-size: 1.15rem; }
.dp-form-section p { margin: 0; color: #687783; font-size: .9rem; }
.dp-optional { color: #7a8792; font-size: .75rem; font-weight: 600; }
.dp-checkbox-group { margin: 0; padding: 1rem; border: 1px solid #dbe3ea; border-radius: 10px; }
.dp-checkbox-group legend { padding: 0 .35rem; color: var(--dp-blue); font-weight: 750; }
.dp-checkbox-grid { display: grid; grid-template-columns: repeat(2, minmax(0, 1fr)); gap: .65rem 1rem; }
.dp-checkbox-grid .dp-check { margin: 0; }
.dp-company-profile-form small { display: block; margin-top: .35rem; color: #71808c; line-height: 1.4; }
.dp-logo-upload-field,
.dp-logo-url-field { padding: 1rem; border: 1px solid #e1e7ed; border-radius: 12px; background: #fbfcfd; }
.dp-logo-upload-field input[type="file"] { min-height: auto; padding: .55rem; background: #fff; }
.dp-logo-preview {
  display: flex;
  align-items: center;
  gap: .9rem;
  padding: .85rem 1rem;
  border: 1px solid #fed7aa;
  border-radius: 12px;
  background: #fffaf5;
}
.dp-logo-preview[hidden] { display: none; }
.dp-logo-preview img { width: 72px; height: 72px; object-fit: contain; padding: .35rem; border: 1px solid #eadfd4; border-radius: 10px; background: #fff; }
.dp-logo-preview span { color: var(--dp-blue); font-weight: 750; }
.dp-logo-consent { padding: .9rem 1rem; border-radius: 10px; background: #fffaf5; }
.dp-form-submit-row { display: flex; flex-wrap: wrap; align-items: center; gap: 1rem; padding-top: .4rem; }
.dp-form-submit-row p { margin: 0; color: #6c7b86; font-size: .88rem; }

@media (max-width: 740px) {
  .dp-provider-card-facts { grid-template-columns: 1fr; gap: 0; }
  .dp-profile-overview { grid-template-columns: 1fr; }
  .dp-checkbox-grid { grid-template-columns: 1fr; }
  .dp-company-profile-form { padding: 1.1rem; }
  .dp-form-submit-row { align-items: stretch; flex-direction: column; }
  .dp-form-submit-row .dp-button { width: 100%; }
}


/* V1.2.8 — aperçu interne sécurisé et nom public vérifié */
.dp-internal-preview-banner {
  display: flex;
  flex-direction: column;
  gap: .2rem;
  margin: 1rem 0 1.25rem;
  padding: 1rem 1.15rem;
  border: 1px solid #f6c58e;
  border-left: 4px solid var(--dp-orange);
  border-radius: 12px;
  background: #fff8f1;
  color: #36495b;
}
.dp-internal-preview-banner strong { color: var(--dp-blue); }
.dp-internal-preview-banner span { font-size: .94rem; }
.dp-profile-internal-meta {
  margin-top: 1.2rem;
  padding: 1.15rem 1.25rem;
  border: 1px dashed #cbd6df;
  border-radius: 14px;
  background: #f8fafc;
}
.dp-profile-internal-meta p { margin: .35rem 0; }
.dp-profile-internal-meta .dp-button { margin-top: .55rem; }


/* V1.3.3 — filtres Région/Ville cohérents et cartes annuaire plus lisibles */
.dp-filters select:disabled {
  color: #7b8791;
  background: #f3f5f7;
  border-color: #d7dee4;
  cursor: not-allowed;
  opacity: 1;
}

.dp-annuaire .dp-card-grid {
  align-items: start;
  gap: 1rem;
}

.dp-annuaire .dp-provider-card {
  min-height: 0;
  gap: .78rem;
  padding: 1.2rem 1.25rem 1.25rem;
  border-radius: 16px;
  box-shadow: 0 10px 28px rgba(24, 50, 78, .065);
}

.dp-annuaire .dp-provider-card::before {
  width: 4px;
  border-radius: 16px 0 0 16px;
}

.dp-annuaire .dp-provider-card-header {
  gap: 1.05rem;
  align-items: center;
}

.dp-annuaire .dp-provider-visual-card {
  width: 76px;
  height: 76px;
  border-width: 2px;
  border-radius: 16px;
  box-shadow: 0 7px 18px rgba(253, 120, 15, .11);
}

.dp-annuaire .dp-provider-generic-icon .dp-company-icon {
  width: 67%;
  height: 67%;
}

.dp-annuaire .dp-provider-card h2 {
  display: -webkit-box;
  overflow: hidden;
  margin: 0 0 .32rem;
  color: var(--dp-blue);
  font-size: clamp(1.18rem, 1.45vw, 1.34rem);
  font-weight: 820;
  line-height: 1.28;
  letter-spacing: -.014em;
  -webkit-box-orient: vertical;
  -webkit-line-clamp: 3;
}

.dp-annuaire .dp-provider-location {
  color: #5d6c78;
  font-size: 1rem;
  font-weight: 600;
  line-height: 1.4;
}

.dp-annuaire .dp-chip-list {
  gap: .42rem;
}

.dp-annuaire .dp-chip {
  min-height: 31px;
  padding: .34rem .7rem;
  font-size: .88rem;
  line-height: 1.15;
}

.dp-annuaire .dp-provider-summary {
  font-size: .98rem;
  line-height: 1.55;
}

.dp-annuaire .dp-provider-card-facts {
  grid-template-columns: repeat(auto-fit, minmax(160px, 1fr));
  gap: .5rem .9rem;
  padding-top: .05rem;
}

.dp-annuaire .dp-provider-card-facts p {
  padding-top: .7rem;
  font-size: .97rem;
  line-height: 1.42;
}

.dp-annuaire .dp-provider-card-facts span {
  margin-bottom: .24rem;
  font-size: .78rem;
}

.dp-annuaire .dp-provider-card-facts strong {
  font-size: 1rem;
  line-height: 1.42;
}

.dp-annuaire .dp-provider-card .dp-card-actions {
  margin-top: .05rem;
  padding-top: .05rem;
}

.dp-annuaire .dp-provider-card .dp-button {
  min-height: 46px;
  padding: .7rem 1.05rem;
  font-size: .95rem;
}

@media (max-width: 640px) {
  .dp-annuaire .dp-card-grid {
    grid-template-columns: minmax(0, 1fr);
  }

  .dp-annuaire .dp-provider-card {
    min-width: 0;
    max-width: 100%;
  }

  .dp-annuaire .dp-provider-visual-card {
    width: 64px;
    height: 64px;
    border-radius: 14px;
  }

  .dp-annuaire .dp-provider-card h2 {
    font-size: 1.16rem;
    -webkit-line-clamp: 4;
  }

  .dp-annuaire .dp-provider-card h2 a {
    display: block;
    min-height: 44px;
    padding-top: 10px;
    padding-bottom: 10px;
  }
}

/* V1.3.3 — fiche prestataire plus dense et plus lisible */
.dp-provider-profile .dp-profile-overview {
  align-items: start;
}

.dp-provider-profile .dp-profile-identity {
  min-height: 0;
  gap: 1.2rem;
  padding: 1.25rem 1.35rem;
}

.dp-provider-profile .dp-provider-visual-profile {
  width: 104px;
  height: 104px;
  border-width: 2px;
  border-radius: 20px;
  box-shadow: 0 8px 22px rgba(253, 120, 15, .11);
}

.dp-provider-profile .dp-provider-visual-profile.dp-provider-generic-icon .dp-company-icon {
  width: 64%;
  height: 64%;
}

.dp-provider-profile .dp-profile-location {
  margin-bottom: .8rem;
  color: #536474;
  font-size: 1.06rem;
  font-weight: 650;
  line-height: 1.45;
}

.dp-provider-profile .dp-chip {
  min-height: 32px;
  padding: .36rem .72rem;
  font-size: .9rem;
}

.dp-provider-profile .dp-profile-quick-cta {
  padding: 1.3rem 1.4rem;
}

.dp-provider-profile .dp-profile-quick-cta p {
  font-size: 1rem;
  line-height: 1.55;
}

.dp-provider-profile .dp-profile-info-card {
  padding: 1.15rem 1.25rem;
}

.dp-provider-profile .dp-profile-info-label {
  font-size: .88rem;
}

.dp-provider-profile .dp-profile-info-main,
.dp-provider-profile .dp-profile-info-card p,
.dp-provider-profile .dp-profile-management p,
.dp-provider-profile .dp-profile-transparency-content p {
  font-size: 1rem;
  line-height: 1.55;
}

@media (max-width: 640px) {
  .dp-provider-profile .dp-provider-visual-profile {
    width: 78px;
    height: 78px;
    border-radius: 16px;
  }
}

/* V1.3.4 — titres publics courts et encart profil évolutif */
.dp-annuaire .dp-provider-card h2 {
  -webkit-line-clamp: 2;
}

.single-dp_prestataire .entry-title {
  max-width: 980px;
  margin-bottom: 1.15rem;
  color: var(--dp-ink);
  font-size: clamp(2rem, 3.4vw, 3.15rem);
  line-height: 1.08;
  letter-spacing: -.035em;
}

.dp-profile-promo-slot {
  position: relative;
  display: grid;
  grid-template-columns: 108px minmax(0, 1fr) auto;
  gap: 1.25rem;
  align-items: center;
  margin: 0 0 1.2rem;
  padding: 1.15rem 1.3rem;
  overflow: hidden;
  border: 1px solid #dfe8f0;
  border-radius: 18px;
  background:
    radial-gradient(circle at 8% 20%, rgba(253, 120, 15, .13), transparent 34%),
    linear-gradient(135deg, #f8fbfe 0%, #fff 55%, #fff8f1 100%);
  box-shadow: 0 12px 30px rgba(24, 50, 78, .055);
}

.dp-profile-promo-slot::after {
  content: "";
  position: absolute;
  right: -72px;
  bottom: -92px;
  width: 210px;
  height: 210px;
  border: 26px solid rgba(32, 60, 100, .035);
  border-radius: 50%;
  pointer-events: none;
}

.dp-profile-promo-visual {
  display: flex;
  align-items: center;
  justify-content: center;
  width: 94px;
  height: 94px;
  border: 1px solid #ffd3ad;
  border-radius: 22px;
  color: var(--dp-orange-readable);
  background: rgba(255, 247, 237, .94);
  box-shadow: inset 0 0 0 1px rgba(255,255,255,.8), 0 8px 22px rgba(253,120,15,.10);
}

.dp-profile-promo-visual svg {
  width: 72px;
  height: 72px;
}

.dp-profile-promo-content {
  position: relative;
  z-index: 1;
  min-width: 0;
}

.dp-profile-promo-kicker {
  margin: 0 0 .18rem !important;
  padding-left: .55rem;
  border-left: 3px solid var(--dp-orange);
  color: var(--dp-blue) !important;
  font-size: .78rem !important;
  font-weight: 850;
  letter-spacing: .075em;
  text-transform: uppercase;
}

.dp-profile-promo-content h2 {
  margin: 0 0 .32rem;
  color: var(--dp-blue);
  font-size: clamp(1.2rem, 1.8vw, 1.48rem);
  line-height: 1.2;
  letter-spacing: -.018em;
}

.dp-profile-promo-content p:last-child {
  max-width: 760px;
  margin: 0;
  color: #526170;
  font-size: 1rem;
  line-height: 1.55;
}

.dp-profile-promo-action {
  position: relative;
  z-index: 1;
  align-self: center;
}

.dp-profile-promo-action .dp-button {
  min-width: 190px;
  min-height: 48px;
  background: #fff;
  box-shadow: 0 7px 18px rgba(32,60,100,.07);
}

.dp-profile-promo-action .dp-button:hover {
  background: #f8fbfe;
}

@media (max-width: 860px) {
  .dp-profile-promo-slot {
    grid-template-columns: 82px minmax(0, 1fr);
  }
  .dp-profile-promo-visual {
    width: 76px;
    height: 76px;
    border-radius: 18px;
  }
  .dp-profile-promo-visual svg {
    width: 58px;
    height: 58px;
  }
  .dp-profile-promo-action {
    grid-column: 1 / -1;
  }
  .dp-profile-promo-action .dp-button {
    width: 100%;
  }
}

@media (max-width: 640px) {
  .single-dp_prestataire .entry-title {
    font-size: clamp(1.8rem, 8vw, 2.35rem);
  }
  .dp-profile-promo-slot {
    grid-template-columns: 1fr;
    padding: 1.1rem;
  }
  .dp-profile-promo-visual {
    width: 68px;
    height: 68px;
  }
}

/* V1.3.6 — fond blanc limité à la zone de contenu, sans toucher aux menus GeneratePress */
body.dp-reseau-page {
  background-color: #ffffff !important;
}

body.dp-reseau-page #page,
body.dp-reseau-page .site-content,
body.dp-reseau-page .content-area,
body.dp-reseau-page .site-main,
body.dp-reseau-page .inside-article {
  background-color: #ffffff !important;
}

.dp-reseau {
  width: 100%;
  background-color: #ffffff;
  font-family: inherit;
}

.dp-reseau-heading {
  max-width: 900px;
  margin-bottom: 1.65rem;
}

.dp-reseau-heading p {
  margin: 0;
  color: #5f6b7a;
  font-size: 1rem;
  line-height: 1.65;
}

.dp-reseau-heading p + p {
  margin-top: .45rem;
}

.dp-reseau-heading .dp-reseau-heading-note {
  color: #6d7986;
  font-size: .94rem;
}

.dp-reseau .dp-filters {
  padding: 1.35rem 1.4rem;
  border-color: #dfe6ec;
  border-radius: 16px;
  background: #ffffff;
  box-shadow: 0 10px 28px rgba(32, 60, 100, .055);
}

.dp-reseau .dp-filters input,
.dp-reseau .dp-filters select,
.dp-reseau .dp-front-form input,
.dp-reseau .dp-front-form textarea {
  border-color: #c8d3dd;
  border-radius: 10px;
}

.dp-reseau .dp-filters input:focus,
.dp-reseau .dp-filters select:focus,
.dp-reseau .dp-front-form input:focus,
.dp-reseau .dp-front-form textarea:focus {
  outline: 3px solid rgba(253, 120, 15, .13);
  outline-offset: 1px;
  border-color: var(--dp-orange);
}

.dp-reseau .dp-button {
  min-height: 44px;
  border-radius: 10px;
  padding: .7rem 1.05rem;
  font-weight: 800;
  transition: transform .16s ease, box-shadow .16s ease, background-color .16s ease;
}

.dp-reseau .dp-button:hover {
  transform: translateY(-1px);
}

.dp-reseau .dp-button-primary {
  box-shadow: 0 8px 20px rgba(253, 120, 15, .16);
}

.dp-reseau .dp-empty-state,
.dp-reseau .dp-notice {
  padding: 1.45rem 1.55rem;
  border-color: #dfe6ec;
  border-radius: 14px;
  background: #ffffff;
  box-shadow: 0 8px 24px rgba(32, 60, 100, .045);
}

.dp-reseau .dp-empty-state h2 {
  margin: 0 0 .55rem;
  color: var(--dp-blue);
  font-size: 1.2rem;
  line-height: 1.3;
}

.dp-reseau .dp-empty-state p {
  margin: 0;
  color: #5f6b7a;
  line-height: 1.65;
}

.dp-demandes .dp-request-card {
  border-color: #dfe6ec;
  border-radius: 16px;
  box-shadow: 0 10px 28px rgba(32, 60, 100, .06);
}

.dp-demandes .dp-request-card h2 {
  color: var(--dp-blue);
  line-height: 1.32;
}

.dp-proposal-form {
  margin-top: 1.5rem;
}

@media (max-width: 640px) {
  .dp-reseau .dp-filters,
  .dp-reseau .dp-empty-state,
  .dp-reseau .dp-notice {
    padding: 1.1rem;
  }

  .dp-reseau-heading p {
    font-size: .96rem;
  }
}

/* V1.3.11 — modèle de fiche prestataire orienté entreprise */
.single-dp_prestataire .entry-title {
  margin-bottom: 1.5rem;
}

.dp-provider-profile {
  display: grid;
  gap: 1.4rem;
  margin-top: 1.35rem;
}

.dp-provider-profile .dp-profile-overview {
  display: grid;
  grid-template-columns: minmax(0, 1.42fr) minmax(315px, .78fr);
  gap: 1.2rem;
}

.dp-provider-profile .dp-profile-identity {
  position: relative;
  min-height: 214px;
  padding: 1.7rem;
  overflow: hidden;
  border: 1px solid #dfe8ef;
  border-radius: 22px;
  background:
    radial-gradient(circle at 12% 12%, rgba(255, 122, 0, .13), transparent 31%),
    linear-gradient(135deg, #ffffff 0%, #fbfdff 68%, #fff8f2 100%);
  box-shadow: 0 16px 38px rgba(24, 50, 78, .07);
}

.dp-provider-profile .dp-profile-identity::after {
  content: "";
  position: absolute;
  width: 168px;
  height: 168px;
  right: -70px;
  bottom: -88px;
  border: 22px solid rgba(22, 50, 79, .035);
  border-radius: 50%;
  pointer-events: none;
}

.dp-provider-profile .dp-provider-visual-profile {
  position: relative;
  z-index: 1;
  width: 112px;
  height: 112px;
  border: 2px solid #ffd2a6;
  border-radius: 24px;
  box-shadow: 0 12px 28px rgba(255, 122, 0, .14);
}

.dp-provider-profile .dp-profile-identity-content {
  position: relative;
  z-index: 1;
}

.dp-provider-profile .dp-profile-eyebrow,
.dp-provider-profile .dp-profile-details-heading > p:first-child {
  margin: 0 0 .55rem;
  color: var(--dp-blue);
  font-size: .78rem;
  font-weight: 850;
  letter-spacing: .09em;
  line-height: 1.2;
  text-transform: uppercase;
}

.dp-provider-profile .dp-profile-eyebrow {
  display: inline-flex;
  align-items: center;
  min-height: 27px;
  padding: .3rem .62rem;
  border: 1px solid #dce8f1;
  border-radius: 999px;
  background: rgba(255,255,255,.82);
  font-size: .7rem;
  white-space: nowrap;
}

.dp-provider-profile .dp-profile-badge-row {
  margin: 0 0 .55rem;
}

.dp-provider-profile .dp-profile-location {
  margin: 0 0 .8rem;
  color: #445a70;
  font-size: clamp(1rem, 1.4vw, 1.12rem);
  font-weight: 750;
}

.dp-provider-profile .dp-profile-directory-note {
  max-width: 440px;
  margin: .9rem 0 0;
  color: #667788;
  font-size: .9rem;
  line-height: 1.5;
}

.dp-provider-profile .dp-profile-quick-cta {
  display: flex;
  flex-direction: column;
  align-items: stretch;
  min-height: 214px;
  padding: 1.55rem;
  border: 1px solid #ffd8b9;
  border-left: 5px solid #ff7a00;
  border-radius: 22px;
  background: linear-gradient(145deg, #fffaf6 0%, #fff5ec 100%);
  box-shadow: 0 16px 38px rgba(255, 122, 0, .09);
}

.dp-provider-profile .dp-profile-quick-cta::before {
  display: none;
}

.dp-provider-profile .dp-profile-quick-cta-kicker {
  margin: 0 0 .42rem !important;
  color: var(--dp-blue) !important;
  font-size: .82rem !important;
  font-weight: 850 !important;
  letter-spacing: .065em;
  line-height: 1.25;
  text-transform: uppercase;
}

.dp-provider-profile .dp-profile-quick-cta h2 {
  margin: 0 0 .6rem;
  color: var(--dp-blue);
  font-size: clamp(1.3rem, 2vw, 1.6rem);
  line-height: 1.2;
  letter-spacing: -.018em;
}

.dp-provider-profile .dp-profile-quick-cta > p:not(.dp-profile-quick-cta-kicker):not(.dp-profile-quick-cta-note) {
  margin: 0 0 1rem;
  color: #526477;
  font-size: .98rem;
  line-height: 1.55;
}

.dp-provider-profile .dp-profile-quick-cta .dp-button-primary,
.dp-provider-profile .dp-profile-quick-cta .dp-button-primary:visited {
  width: 100%;
  min-height: 54px;
  margin-top: auto;
  border: 1px solid #ff7a00;
  border-radius: 12px;
  background: #e96f00 !important;
  color: #ffffff !important;
  font-size: 19px;
  font-weight: 800;
  text-align: center;
  text-shadow: 0 1px 2px rgba(16, 37, 58, .45);
  box-shadow: 0 11px 24px rgba(255, 122, 0, .26);
}

.dp-provider-profile .dp-profile-quick-cta .dp-button-primary:hover,
.dp-provider-profile .dp-profile-quick-cta .dp-button-primary:focus {
  background: #d96400 !important;
  color: #ffffff !important;
}

.dp-provider-profile .dp-profile-quick-cta-note {
  margin: .7rem 0 0 !important;
  color: #687789 !important;
  font-size: .84rem !important;
  font-weight: 650;
  text-align: center;
}

.dp-provider-profile .dp-profile-promo-slot {
  grid-template-columns: 82px minmax(0, 1fr) auto;
  gap: 1.1rem;
  margin: 0;
  padding: 1.2rem 1.35rem;
  border-color: #dfe8ef;
  background: linear-gradient(135deg, #f8fbfe 0%, #ffffff 54%, #fff8f1 100%);
}

.dp-provider-profile .dp-profile-promo-visual {
  width: 74px;
  height: 74px;
  border-radius: 18px;
}

.dp-provider-profile .dp-profile-promo-visual svg {
  width: 56px;
  height: 56px;
}

.dp-provider-profile .dp-profile-promo-content h2 {
  font-size: clamp(1.18rem, 1.6vw, 1.38rem);
}

.dp-provider-profile .dp-profile-promo-content p:last-of-type {
  font-size: .95rem;
}

.dp-provider-profile .dp-profile-promo-steps {
  display: flex;
  flex-wrap: wrap;
  gap: .4rem .8rem;
  margin: .78rem 0 0;
  padding: 0;
  list-style: none;
}

.dp-provider-profile .dp-profile-promo-steps li {
  display: inline-flex;
  align-items: center;
  gap: .35rem;
  color: #4d6073;
  font-size: .83rem;
  font-weight: 650;
}

.dp-provider-profile .dp-profile-promo-steps strong {
  display: inline-grid;
  width: 20px;
  height: 20px;
  place-items: center;
  border-radius: 50%;
  background: #ff7a00;
  color: #10253a;
  font-size: .75rem;
}

.dp-provider-profile .dp-profile-promo-action .dp-button {
  min-width: 208px;
  min-height: 50px;
  border-color: #b9cddd;
  color: var(--dp-blue) !important;
  font-weight: 800;
}

.dp-provider-profile .dp-profile-details {
  padding: 1.35rem;
  border: 1px solid #e1e9ef;
  border-radius: 22px;
  background: #ffffff;
  box-shadow: 0 12px 32px rgba(24, 50, 78, .05);
}

.dp-provider-profile .dp-profile-details-heading {
  display: grid;
  grid-template-columns: minmax(0, 1fr) minmax(260px, .9fr);
  gap: .3rem 1.25rem;
  margin-bottom: 1.1rem;
}

.dp-provider-profile .dp-profile-details-heading > p:first-child {
  grid-column: 1;
  margin-bottom: 0;
}

.dp-provider-profile .dp-profile-details-heading h2 {
  grid-column: 1;
  margin: 0;
  color: var(--dp-blue);
  font-size: clamp(1.28rem, 2vw, 1.55rem);
  line-height: 1.2;
}

.dp-provider-profile .dp-profile-details-heading > p:last-child {
  grid-column: 2;
  grid-row: 1 / span 2;
  align-self: center;
  margin: 0;
  padding-left: 1.15rem;
  border-left: 3px solid #ff7a00;
  color: #607184;
  font-size: .93rem;
  line-height: 1.5;
}

.dp-provider-profile .dp-profile-info-grid {
  display: grid;
  grid-template-columns: repeat(auto-fit, minmax(245px, 1fr));
  gap: .9rem;
}

.dp-provider-profile .dp-profile-info-card {
  min-height: 116px;
  padding: 1.15rem 1.2rem;
  border-color: #e2eaf0;
  border-radius: 16px;
  box-shadow: none;
}

.dp-provider-profile .dp-profile-info-card:hover {
  border-color: #ffd0a1;
  box-shadow: 0 10px 22px rgba(24, 50, 78, .055);
}

.dp-provider-profile .dp-profile-info-label {
  margin-bottom: .72rem;
  color: #415a73;
  font-size: .78rem;
  font-weight: 850;
  letter-spacing: .07em;
  text-transform: uppercase;
}

.dp-provider-profile .dp-profile-management {
  display: flex;
  align-items: center;
  justify-content: space-between;
  gap: 1.25rem;
  padding: 1.25rem 1.35rem;
  border-color: #e1e9ef;
  border-radius: 18px;
  box-shadow: none;
}

.dp-provider-profile .dp-profile-management-title {
  margin: 0 0 .2rem;
  color: var(--dp-blue);
  font-size: 1.05rem;
  font-weight: 800;
}

.dp-provider-profile .dp-profile-management p:last-child {
  margin: 0;
  color: #617184;
}

.dp-provider-profile .dp-profile-management .dp-button-ghost {
  flex: 0 0 auto;
  min-height: 48px;
  border-color: #b9cddd;
  color: var(--dp-blue) !important;
  font-weight: 800;
}

.dp-provider-profile .dp-profile-transparency {
  margin-top: 0;
  padding: 1rem 1.2rem;
  border-radius: 14px;
  background: #f8fafc;
}

@media (max-width: 820px) {
  .dp-provider-profile .dp-profile-overview {
    grid-template-columns: 1fr;
  }
  .dp-provider-profile .dp-profile-quick-cta {
    min-height: 0;
  }
  .dp-provider-profile .dp-profile-details-heading {
    grid-template-columns: 1fr;
  }
  .dp-provider-profile .dp-profile-details-heading > p:last-child {
    grid-column: 1;
    grid-row: auto;
    margin-top: .65rem;
  }
}

@media (max-width: 640px) {
  .dp-provider-profile {
    gap: 1rem;
    margin-top: 1rem;
  }
  .dp-provider-profile .dp-profile-identity {
    min-height: 0;
    gap: 1rem;
    padding: 1.2rem;
    border-radius: 18px;
  }
  .dp-provider-profile .dp-provider-visual-profile {
    width: 78px;
    height: 78px;
    border-radius: 18px;
  }
  .dp-provider-profile .dp-profile-directory-note {
    font-size: .85rem;
  }
  .dp-provider-profile .dp-profile-quick-cta {
    padding: 1.2rem;
    border-radius: 18px;
  }
  .dp-provider-profile .dp-profile-promo-slot {
    grid-template-columns: 1fr;
    gap: .85rem;
    padding: 1.1rem;
    border-radius: 18px;
  }
  .dp-provider-profile .dp-profile-promo-visual {
    width: 64px;
    height: 64px;
  }
  .dp-provider-profile .dp-profile-promo-visual svg {
    width: 48px;
    height: 48px;
  }
  .dp-provider-profile .dp-profile-promo-action {
    grid-column: auto;
  }
  .dp-provider-profile .dp-profile-promo-action .dp-button {
    width: 100%;
  }
  .dp-provider-profile .dp-profile-details {
    padding: 1.1rem;
    border-radius: 18px;
  }
  .dp-provider-profile .dp-profile-info-grid {
    grid-template-columns: 1fr;
  }
  .dp-provider-profile .dp-profile-management {
    align-items: stretch;
    flex-direction: column;
    padding: 1.1rem;
  }
  .dp-provider-profile .dp-profile-management .dp-button-ghost {
    width: 100%;
  }
}

/* V1.3.12 — fiche profil compacte et étapes lisibles */
.dp-provider-profile .dp-profile-overview {
  grid-template-columns: repeat(2, minmax(0, 1fr));
  gap: 1rem;
  align-items: stretch;
}

.dp-provider-profile .dp-profile-identity,
.dp-provider-profile .dp-profile-quick-cta {
  min-height: 188px;
  padding: 1.25rem;
}

.dp-provider-profile .dp-provider-visual-profile {
  width: 96px;
  height: 96px;
  border-radius: 20px;
}

.dp-provider-profile .dp-profile-eyebrow,
.dp-provider-profile .dp-profile-quick-cta-kicker {
  min-height: 27px;
  margin-bottom: .42rem !important;
}

.dp-provider-profile .dp-profile-quick-cta h2 {
  margin-bottom: .45rem;
  font-size: clamp(1.22rem, 1.75vw, 1.42rem);
}

.dp-provider-profile .dp-profile-quick-cta > p:not(.dp-profile-quick-cta-kicker):not(.dp-profile-quick-cta-note) {
  margin-bottom: .75rem;
  font-size: .94rem;
  line-height: 1.48;
}

.dp-provider-profile .dp-profile-quick-cta-note {
  margin-top: .5rem !important;
}

.dp-provider-profile .dp-profile-promo-slot {
  grid-template-columns: 68px minmax(0, 1fr) auto;
  gap: .9rem;
  padding: 1rem 1.15rem;
}

.dp-provider-profile .dp-profile-promo-visual {
  width: 62px;
  height: 62px;
  border-radius: 16px;
}

.dp-provider-profile .dp-profile-promo-visual svg {
  width: 46px;
  height: 46px;
}

.dp-provider-profile .dp-profile-promo-content h2 {
  margin-bottom: .25rem;
  font-size: clamp(1.12rem, 1.5vw, 1.3rem);
}

.dp-provider-profile .dp-profile-promo-content p:last-of-type {
  font-size: .9rem;
  line-height: 1.46;
}

.dp-provider-profile .dp-profile-promo-steps {
  display: grid;
  grid-template-columns: repeat(3, minmax(0, 1fr));
  gap: .55rem;
  margin-top: .65rem;
}

.dp-provider-profile .dp-profile-promo-steps li {
  display: flex;
  align-items: center;
  gap: .48rem;
  min-width: 0;
  min-height: 38px;
  color: #4d6073;
  font-size: .82rem;
  line-height: 1.25;
}

.dp-provider-profile .dp-profile-promo-steps strong {
  flex: 0 0 32px;
  width: 32px;
  height: 32px;
  place-items: center;
  border: 1px solid rgba(255,255,255,.36);
  box-shadow: 0 4px 10px rgba(255, 122, 0, .22);
  color: #10253a;
  font-size: .98rem;
  line-height: 1;
}

.dp-provider-profile .dp-profile-promo-action .dp-button {
  min-width: 184px;
  min-height: 46px;
}

@media (max-width: 900px) {
  .dp-provider-profile .dp-profile-overview {
    grid-template-columns: 1fr;
  }
  .dp-provider-profile .dp-profile-identity,
  .dp-provider-profile .dp-profile-quick-cta {
    min-height: 0;
  }
}

@media (max-width: 640px) {
  .dp-provider-profile .dp-provider-visual-profile {
    width: 78px;
    height: 78px;
  }
  .dp-provider-profile .dp-profile-promo-slot {
    grid-template-columns: 1fr;
    padding: 1rem;
  }
  .dp-provider-profile .dp-profile-promo-steps {
    grid-template-columns: 1fr;
    gap: .25rem;
  }
  .dp-provider-profile .dp-profile-promo-steps li {
    min-height: 40px;
    font-size: .88rem;
  }
  .dp-provider-profile .dp-profile-promo-steps strong {
    flex-basis: 34px;
    width: 34px;
    height: 34px;
    font-size: 1rem;
  }
}
