/* BookingWP public pages renderer 0.34.9.8 — full regression audited
 * One stylesheet for wp-admin preview and front-end shortcodes.
 * Keep all selectors scoped below .bwp-pp-render to avoid theme collisions.
 */
.bwp-pp-render {
  --bwp-pp-primary:#2563eb;
  --bwp-pp-success:#16a34a;
  --bwp-pp-text:#0f172a;
  --bwp-pp-muted:#64748b;
  --bwp-pp-border:#e2e8f0;
  --bwp-pp-surface:#fff;
  --bwp-pp-bg:#fff;
  --bwp-pp-columns:var(--bwp-pp-columns-desktop,3);
  width:100%;
  color:var(--bwp-pp-text);
  font-family:inherit;
  font-size:14px;
  line-height:1.45;
}
.bwp-pp-render *, .bwp-pp-render *::before, .bwp-pp-render *::after { box-sizing:border-box; }
.bwp-pp-render a { color:inherit; text-decoration:none; }
.bwp-pp-render .bwp-pp-icon { display:inline-block; width:14px; height:14px; flex:0 0 auto; }

/* Shared grid + card */
.bwp-pp-render .bwp-pp-grid {
  display:grid;
  grid-template-columns:repeat(var(--bwp-pp-columns,3),minmax(0,1fr));
  gap:16px;
  align-items:stretch;
}
.bwp-pp-render .bwp-pp-grid--detailed { grid-template-columns:repeat(var(--bwp-pp-columns,2),minmax(0,1fr)); }
.bwp-pp-render .bwp-pp-card {
  position:relative;
  display:flex;
  min-width:0;
  min-height:100%;
  flex-direction:column;
  border:1px solid var(--bwp-pp-border);
  border-radius:12px;
  background:var(--bwp-pp-surface);
  overflow:hidden;
  box-shadow:0 1px 2px rgba(15,23,42,.025);
}
.bwp-pp-render .bwp-pp-card__body {
  display:flex;
  flex:1;
  min-width:0;
  flex-direction:column;
  padding:16px;
}
.bwp-pp-render h3,
.bwp-pp-render .bwp-pp-card h3,
.bwp-pp-render .bwp-pp-rows h3,
.bwp-pp-render .bwp-pp-price-list h3,
.bwp-pp-render .bwp-pp-accordion h3 {
  margin:0;
  color:var(--bwp-pp-text);
  font:inherit;
  font-size:15px;
  font-weight:650;
  line-height:1.28;
}
.bwp-pp-render .bwp-pp-description {
  display:-webkit-box;
  margin:7px 0 0;
  overflow:hidden;
  color:var(--bwp-pp-muted);
  font-size:12px;
  line-height:1.5;
  -webkit-line-clamp:3;
  -webkit-box-orient:vertical;
}
.bwp-pp-render .bwp-pp-eyebrow {
  display:block;
  margin-top:3px;
  color:var(--bwp-pp-muted);
  font-size:11px;
  line-height:1.35;
}
.bwp-pp-render .bwp-pp-meta {
  display:flex;
  flex-wrap:wrap;
  gap:7px 13px;
  margin-top:12px;
  color:var(--bwp-pp-muted);
  font-size:11px;
  line-height:1.35;
}
.bwp-pp-render .bwp-pp-meta > span,
.bwp-pp-render .bwp-pp-contact > span {
  display:inline-flex;
  min-width:0;
  align-items:center;
  gap:5px;
}

/* CTA: deliberately compact. No full-width bars. */
.bwp-pp-render a.bwp-pp-cta {
  display:inline-flex;
  width:max-content;
  max-width:calc(100% - 28px);
  min-height:34px;
  align-items:center;
  justify-content:center;
  align-self:flex-start;
  gap:6px;
  margin:0 14px 14px;
  padding:7px 11px;
  border:1px solid var(--bwp-pp-primary);
  border-radius:7px;
  background:transparent;
  color:var(--bwp-pp-primary);
  font:inherit;
  font-size:11.5px;
  font-weight:650;
  line-height:1;
  text-decoration:none;
  white-space:nowrap;
  cursor:pointer;
  box-shadow:none;
  transition:background-color .15s ease,color .15s ease,border-color .15s ease,box-shadow .15s ease;
}
.bwp-pp-render a.bwp-pp-cta .bwp-pp-icon { width:13px; height:13px; }
.bwp-pp-render a.bwp-pp-cta--primary {
  background:var(--bwp-pp-primary);
  border-color:var(--bwp-pp-primary);
  color:#fff;
}
.bwp-pp-render a.bwp-pp-cta--outline {
  background:var(--bwp-pp-surface);
  border-color:var(--bwp-pp-primary);
  color:var(--bwp-pp-primary);
  box-shadow:none!important;
}
.bwp-pp-render a.bwp-pp-cta--primary:hover,
.bwp-pp-render a.bwp-pp-cta--primary:focus-visible {
  background:var(--bwp-pp-surface);
  color:var(--bwp-pp-primary);
}
.bwp-pp-render a.bwp-pp-cta--outline:hover,
.bwp-pp-render a.bwp-pp-cta--outline:focus-visible {
  background:var(--bwp-pp-primary);
  color:#fff;
}
.bwp-pp-render a.bwp-pp-cta:focus-visible { outline:2px solid color-mix(in srgb,var(--bwp-pp-primary) 30%,transparent); outline-offset:2px; }

/* Departments */
.bwp-pp-render .bwp-pp-department-image {
  height:122px;
  overflow:hidden;
  background:#f8fafc;
}
.bwp-pp-render .bwp-pp-department-image__img { display:block; width:100%; height:100%; object-fit:cover; }
.bwp-pp-render .bwp-pp-department-icon {
  display:flex;
  width:50px;
  height:50px;
  align-items:center;
  justify-content:center;
  margin:15px 15px 0;
  border-radius:11px;
  background:color-mix(in srgb,var(--entity-color,var(--bwp-pp-primary)) 10%,white);
  color:var(--entity-color,var(--bwp-pp-primary));
  font-size:18px;
  font-weight:700;
}
.bwp-pp-render .bwp-pp-department-icon img { display:block; width:27px; height:27px; object-fit:contain; }
.bwp-pp-render .bwp-pp-department-icon--fallback { border:1px solid color-mix(in srgb,var(--entity-color,var(--bwp-pp-primary)) 18%,white); }
.bwp-pp-render .bwp-pp-dept-card .bwp-pp-card__body { padding-top:11px; }
.bwp-pp-render .bwp-pp-grid--tiles { gap:11px; }
.bwp-pp-render .bwp-pp-dept-tile {
  display:flex;
  min-width:0;
  align-items:center;
  gap:11px;
  padding:10px 12px;
  border:1px solid var(--bwp-pp-border);
  border-radius:10px;
  background:var(--bwp-pp-surface);
  color:var(--bwp-pp-text);
}
.bwp-pp-render a.bwp-pp-dept-tile:hover { border-color:color-mix(in srgb,var(--bwp-pp-primary) 32%,var(--bwp-pp-border)); }
.bwp-pp-render .bwp-pp-dept-tile .bwp-pp-department-icon { width:44px; height:44px; margin:0; border-radius:9px; }
.bwp-pp-render .bwp-pp-dept-tile .bwp-pp-department-image { width:50px; height:44px; flex:0 0 auto; border-radius:9px; }
.bwp-pp-render .bwp-pp-dept-tile__body { min-width:0; flex:1; }
.bwp-pp-render .bwp-pp-dept-tile__body .bwp-pp-meta { margin-top:4px; gap:5px 9px; }
.bwp-pp-render .bwp-pp-tile-arrow { display:inline-flex; color:var(--bwp-pp-primary); }
.bwp-pp-render .bwp-pp-tile-arrow .bwp-pp-icon { width:16px; height:16px; }
.bwp-pp-render .bwp-pp-rows { display:flex; flex-direction:column; gap:8px; }
.bwp-pp-render .bwp-pp-dept-row {
  display:grid;
  grid-template-columns:auto minmax(0,1fr) auto auto;
  align-items:center;
  gap:13px;
  padding:10px 11px;
  border:1px solid var(--bwp-pp-border);
  border-radius:10px;
  background:var(--bwp-pp-surface);
}
.bwp-pp-render .bwp-pp-dept-row--no-visual { grid-template-columns:minmax(0,1fr) auto auto; }
.bwp-pp-render .bwp-pp-dept-row .bwp-pp-department-icon { width:42px; height:42px; margin:0; border-radius:9px; }
.bwp-pp-render .bwp-pp-dept-row .bwp-pp-department-image { width:52px; height:42px; border-radius:9px; }
.bwp-pp-render .bwp-pp-dept-row__content { min-width:0; }
.bwp-pp-render .bwp-pp-dept-row__content p {
  margin:2px 0 0;
  overflow:hidden;
  color:var(--bwp-pp-muted);
  font-size:10.5px;
  white-space:nowrap;
  text-overflow:ellipsis;
}
.bwp-pp-render .bwp-pp-dept-row .bwp-pp-meta { margin:0; white-space:nowrap; }
.bwp-pp-render .bwp-pp-dept-row a.bwp-pp-cta { margin:0; }

/* Services */
.bwp-pp-render .bwp-pp-service-card .bwp-pp-card__body { padding-bottom:12px; }
.bwp-pp-render .bwp-pp-price { display:block; margin-top:12px; color:var(--bwp-pp-text); font-size:14px; font-weight:700; }
.bwp-pp-render .bwp-pp-price--free { color:var(--bwp-pp-success); }
.bwp-pp-render .bwp-pp-price--muted { color:var(--bwp-pp-muted); font-size:11.5px; font-weight:600; }
.bwp-pp-render .bwp-pp-price-list { display:flex; flex-direction:column; gap:12px; }
.bwp-pp-render .bwp-pp-price-group { overflow:hidden; border:1px solid var(--bwp-pp-border); border-radius:11px; background:var(--bwp-pp-surface); }
.bwp-pp-render .bwp-pp-price-group > header { display:flex; align-items:center; justify-content:space-between; padding:10px 13px; background:color-mix(in srgb,var(--bwp-pp-primary) 6%,white); }
.bwp-pp-render .bwp-pp-price-group > header span { color:var(--bwp-pp-muted); font-size:10px; }
.bwp-pp-render .bwp-pp-price-row { display:grid; grid-template-columns:minmax(0,1fr) auto; gap:16px; align-items:center; padding:10px 13px; border-top:1px solid var(--bwp-pp-border); }
.bwp-pp-render .bwp-pp-price-row:first-of-type { border-top:0; }
.bwp-pp-render a.bwp-pp-price-row:hover { background:#fbfdff; }
.bwp-pp-render .bwp-pp-price-row strong { font-size:12px; font-weight:650; }
.bwp-pp-render .bwp-pp-price-row small { display:block; margin-top:2px; color:var(--bwp-pp-muted); font-size:10px; }
.bwp-pp-render .bwp-pp-price-row__specialists { display:inline-flex; align-items:center; gap:4px; }
.bwp-pp-render .bwp-pp-price-row__right { display:flex; align-items:center; gap:14px; color:var(--bwp-pp-muted); font-size:10px; white-space:nowrap; }
.bwp-pp-render .bwp-pp-price-row__right .bwp-pp-price { margin:0; color:var(--bwp-pp-text); font-size:11.5px; }
.bwp-pp-render .bwp-pp-price-row__right .bwp-pp-price--free { color:var(--bwp-pp-success); }
.bwp-pp-render .bwp-pp-chevron { display:inline-flex; color:var(--bwp-pp-primary); }
.bwp-pp-render .bwp-pp-accordion { display:flex; flex-direction:column; gap:9px; }
.bwp-pp-render .bwp-pp-accordion__group { overflow:hidden; border:1px solid var(--bwp-pp-border); border-radius:10px; background:var(--bwp-pp-surface); }
.bwp-pp-render .bwp-pp-accordion__head { display:flex; align-items:center; justify-content:space-between; gap:12px; padding:10px 13px; background:color-mix(in srgb,var(--bwp-pp-primary) 6%,white); cursor:pointer; }
.bwp-pp-render .bwp-pp-accordion__head > span { display:flex; align-items:center; gap:8px; color:var(--bwp-pp-muted); font-size:10px; }
.bwp-pp-render .bwp-pp-accordion__body { border-top:1px solid var(--bwp-pp-border); }
.bwp-pp-render .bwp-pp-service-line { display:grid; grid-template-columns:minmax(0,1fr) auto; gap:18px; padding:12px 13px; border-bottom:1px solid var(--bwp-pp-border); }
.bwp-pp-render .bwp-pp-service-line:last-child { border-bottom:0; }
.bwp-pp-render .bwp-pp-service-line p { margin:3px 0 0; color:var(--bwp-pp-muted); font-size:10.5px; line-height:1.45; }
.bwp-pp-render .bwp-pp-service-line__aside { display:flex; min-width:120px; flex-direction:column; align-items:flex-end; justify-content:center; gap:8px; }
.bwp-pp-render .bwp-pp-service-line__aside .bwp-pp-price { margin:0; }
.bwp-pp-render .bwp-pp-service-line__aside a.bwp-pp-cta { margin:0; }

/* Specialists */
.bwp-pp-render .bwp-pp-specialist-photo {
  display:block;
  width:calc(100% - 24px);
  height:auto;
  aspect-ratio:4 / 5;
  margin:12px 12px 0;
  border-radius:9px;
  object-fit:cover;
  object-position:center;
  background:#f8fafc;
}
.bwp-pp-render .bwp-pp-specialist-photo--editorial { aspect-ratio:4 / 5; }
.bwp-pp-render .bwp-pp-media-fallback { display:flex; align-items:center; justify-content:center; background:color-mix(in srgb,var(--bwp-pp-primary) 8%,white); color:var(--bwp-pp-primary); font-size:23px; font-weight:700; }
.bwp-pp-render .bwp-pp-specialist-card .bwp-pp-card__body { padding:13px 14px 12px; }
.bwp-pp-render .bwp-pp-specialist-card h3 { font-size:14.5px; font-weight:650; }
.bwp-pp-render .bwp-pp-specialist-role { margin:2px 0 0; color:var(--bwp-pp-muted); font-size:10.5px; line-height:1.4; }
.bwp-pp-render .bwp-pp-chip { display:inline-flex; width:max-content; max-width:100%; margin-top:6px; padding:3px 7px; border-radius:6px; background:color-mix(in srgb,var(--bwp-pp-primary) 8%,white); color:var(--bwp-pp-primary); font-size:9.5px; line-height:1.25; }
.bwp-pp-render .bwp-pp-service-list,
.bwp-pp-render .bwp-pp-package-services ul,
.bwp-pp-render .bwp-pp-package-detailed__services ul { display:flex; flex-direction:column; gap:4px; margin:10px 0 0; padding:0; list-style:none; }
.bwp-pp-render .bwp-pp-service-list li,
.bwp-pp-render .bwp-pp-package-services li,
.bwp-pp-render .bwp-pp-package-detailed__services li { display:flex; align-items:flex-start; gap:5px; color:var(--bwp-pp-muted); font-size:10px; line-height:1.4; }
.bwp-pp-render .bwp-pp-service-list .bwp-pp-icon,
.bwp-pp-render .bwp-pp-package-services .bwp-pp-icon,
.bwp-pp-render .bwp-pp-package-detailed__services .bwp-pp-icon { width:12px; height:12px; margin-top:1px; color:var(--bwp-pp-primary); }
.bwp-pp-render .bwp-pp-contact { display:flex; flex-direction:column; gap:4px; margin-top:auto; padding-top:11px; color:var(--bwp-pp-muted); font-size:9.5px; line-height:1.35; }
.bwp-pp-render .bwp-pp-contact a { display:flex; min-width:0; align-items:center; gap:5px; color:var(--bwp-pp-muted); }
.bwp-pp-render .bwp-pp-contact a span { min-width:0; overflow-wrap:anywhere; }
.bwp-pp-render .bwp-pp-contact .bwp-pp-icon { color:var(--bwp-pp-primary); }
.bwp-pp-render .bwp-pp-specialist-row { display:grid; grid-template-columns:auto minmax(155px,.85fr) minmax(190px,1.25fr) minmax(150px,.8fr) auto; align-items:center; gap:13px; padding:9px 11px; border:1px solid var(--bwp-pp-border); border-radius:10px; background:var(--bwp-pp-surface); }
.bwp-pp-render .bwp-pp-specialist-row--no-photo { grid-template-columns:minmax(155px,.85fr) minmax(190px,1.25fr) minmax(150px,.8fr) auto; }
.bwp-pp-render .bwp-pp-specialist-row--no-services { grid-template-columns:auto minmax(190px,1fr) minmax(180px,.8fr) auto; }
.bwp-pp-render .bwp-pp-specialist-row--no-contact { grid-template-columns:auto minmax(190px,1fr) minmax(220px,1.2fr) auto; }
.bwp-pp-render .bwp-pp-specialist-row--no-cta { grid-template-columns:auto minmax(160px,.9fr) minmax(220px,1.2fr) minmax(150px,.8fr); }
.bwp-pp-render .bwp-pp-avatar { display:block; width:50px; height:50px; border-radius:9px; object-fit:cover; }
.bwp-pp-render .bwp-pp-avatar--small { font-size:13px; }
.bwp-pp-render .bwp-pp-specialist-row__identity { min-width:0; }
.bwp-pp-render .bwp-pp-specialist-row__identity h3 { font-size:13.5px; }
.bwp-pp-render .bwp-pp-specialist-row__identity p { margin:2px 0 0; color:var(--bwp-pp-muted); font-size:9.5px; }
.bwp-pp-render .bwp-pp-specialist-row__identity .bwp-pp-chip { margin-top:4px; }
.bwp-pp-render .bwp-pp-specialist-row__services { display:flex; flex-direction:column; gap:3px; color:var(--bwp-pp-muted); font-size:9px; line-height:1.3; }
.bwp-pp-render .bwp-pp-specialist-row__services span,
.bwp-pp-render .bwp-pp-specialist-row__contact a { display:flex; min-width:0; align-items:center; gap:4px; }
.bwp-pp-render .bwp-pp-specialist-row__services .bwp-pp-icon,
.bwp-pp-render .bwp-pp-specialist-row__contact .bwp-pp-icon { width:11px; height:11px; color:var(--bwp-pp-primary); }
.bwp-pp-render .bwp-pp-specialist-row__contact { display:flex; min-width:0; flex-direction:column; gap:3px; color:var(--bwp-pp-muted); font-size:8.8px; }
.bwp-pp-render .bwp-pp-specialist-row__contact a { color:var(--bwp-pp-muted); }
.bwp-pp-render .bwp-pp-specialist-row__contact a span { overflow-wrap:anywhere; }
.bwp-pp-render .bwp-pp-specialist-row a.bwp-pp-cta { margin:0; }

/* Packages */
.bwp-pp-render .bwp-pp-package-card .bwp-pp-card__body { padding-bottom:12px; }
.bwp-pp-render .bwp-pp-package-stats { display:grid; grid-template-columns:repeat(2,minmax(0,1fr)); gap:0; margin-top:11px; padding:10px 0; border-top:1px solid var(--bwp-pp-border); border-bottom:1px solid var(--bwp-pp-border); }
.bwp-pp-render .bwp-pp-package-stats > span { display:flex; min-width:0; flex-direction:column; align-items:flex-start; padding:0 9px; }
.bwp-pp-render .bwp-pp-package-stats > span:first-child { padding-left:0; }
.bwp-pp-render .bwp-pp-package-stats > span + span { border-left:1px solid var(--bwp-pp-border); }
.bwp-pp-render .bwp-pp-package-stats strong { max-width:100%; color:var(--bwp-pp-text); font-size:14px; font-weight:700; line-height:1.25; overflow-wrap:anywhere; }
.bwp-pp-render .bwp-pp-package-stats small { margin-top:1px; color:var(--bwp-pp-muted); font-size:8.5px; }
.bwp-pp-render .bwp-pp-package-validity { display:flex; align-items:center; gap:6px; margin-top:10px; color:var(--bwp-pp-muted); font-size:9.5px; }
.bwp-pp-render .bwp-pp-package-validity .bwp-pp-icon { color:var(--bwp-pp-primary); }
.bwp-pp-render .bwp-pp-package-services > strong,
.bwp-pp-render .bwp-pp-package-detailed__services > strong { display:block; margin-top:10px; font-size:9.5px; font-weight:650; }
.bwp-pp-render .bwp-pp-package-row { display:grid; grid-template-columns:minmax(220px,1.35fr) auto auto auto auto; align-items:center; gap:13px; padding:10px 12px; border:1px solid var(--bwp-pp-border); border-radius:10px; background:var(--bwp-pp-surface); font-size:10px; }
.bwp-pp-render .bwp-pp-package-row__name { min-width:0; }
.bwp-pp-render .bwp-pp-package-row__name h3 { font-size:13px; }
.bwp-pp-render .bwp-pp-package-row__name p { display:-webkit-box; margin:2px 0 0; overflow:hidden; color:var(--bwp-pp-muted); font-size:9.5px; -webkit-line-clamp:1; -webkit-box-orient:vertical; }
.bwp-pp-render .bwp-pp-package-row__services { display:block; margin-top:2px; overflow:hidden; color:var(--bwp-pp-muted); font-size:8.8px; white-space:nowrap; text-overflow:ellipsis; }
.bwp-pp-render .bwp-pp-package-row > span { display:flex; align-items:center; gap:4px; color:var(--bwp-pp-muted); white-space:nowrap; }
.bwp-pp-render .bwp-pp-package-row__sessions strong { color:var(--bwp-pp-text); }
.bwp-pp-render .bwp-pp-package-row__price { color:var(--bwp-pp-text); font-size:12px; white-space:nowrap; }
.bwp-pp-render .bwp-pp-package-row a.bwp-pp-cta { margin:0; }
.bwp-pp-render .bwp-pp-package-detailed { display:grid; grid-template-columns:minmax(0,1.35fr) minmax(145px,.7fr); gap:16px; padding:15px; }
.bwp-pp-render .bwp-pp-package-detailed--no-services { grid-template-columns:1fr; }
.bwp-pp-render .bwp-pp-package-detailed__main { display:flex; min-width:0; flex-direction:column; }
.bwp-pp-render .bwp-pp-package-detailed__meta { display:flex; flex-wrap:wrap; align-items:center; gap:7px 15px; margin-top:10px; padding-top:9px; border-top:1px solid var(--bwp-pp-border); font-size:9.5px; }
.bwp-pp-render .bwp-pp-package-detailed__meta > span { display:flex; align-items:center; gap:4px; color:var(--bwp-pp-muted); }
.bwp-pp-render .bwp-pp-package-detailed__main a.bwp-pp-cta { margin:11px 0 0; }
.bwp-pp-render .bwp-pp-package-detailed__services { padding-left:14px; border-left:1px solid var(--bwp-pp-border); }
.bwp-pp-render .bwp-pp-package-detailed__services > strong { margin-top:0; }

/* Dense desktop grids: keep typography and CTA controlled. */
.bwp-pp-render.bwp-pp-cols-desktop-5 .bwp-pp-card__body,
.bwp-pp-render.bwp-pp-cols-desktop-6 .bwp-pp-card__body { padding:12px; }
.bwp-pp-render.bwp-pp-cols-desktop-5 .bwp-pp-card h3,
.bwp-pp-render.bwp-pp-cols-desktop-6 .bwp-pp-card h3 { font-size:13px; }
.bwp-pp-render.bwp-pp-cols-desktop-5 .bwp-pp-description,
.bwp-pp-render.bwp-pp-cols-desktop-6 .bwp-pp-description { font-size:10px; -webkit-line-clamp:2; }
.bwp-pp-render.bwp-pp-cols-desktop-5 .bwp-pp-meta,
.bwp-pp-render.bwp-pp-cols-desktop-6 .bwp-pp-meta { gap:5px 8px; font-size:9.5px; }
.bwp-pp-render.bwp-pp-cols-desktop-5 a.bwp-pp-cta,
.bwp-pp-render.bwp-pp-cols-desktop-6 a.bwp-pp-cta { max-width:calc(100% - 22px); min-height:31px; margin:0 11px 11px; padding:6px 9px; font-size:10px; }
.bwp-pp-render.bwp-pp-cols-desktop-5 .bwp-pp-specialist-photo,
.bwp-pp-render.bwp-pp-cols-desktop-6 .bwp-pp-specialist-photo { width:calc(100% - 20px); margin:10px 10px 0; }
.bwp-pp-render.bwp-pp-cols-desktop-5 .bwp-pp-specialist-card .bwp-pp-card__body,
.bwp-pp-render.bwp-pp-cols-desktop-6 .bwp-pp-specialist-card .bwp-pp-card__body { padding:10px 11px; }
.bwp-pp-render.bwp-pp-cols-desktop-5 .bwp-pp-specialist-card h3,
.bwp-pp-render.bwp-pp-cols-desktop-6 .bwp-pp-specialist-card h3 { font-size:12.5px; }
.bwp-pp-render.bwp-pp-cols-desktop-5 .bwp-pp-specialist-role,
.bwp-pp-render.bwp-pp-cols-desktop-6 .bwp-pp-specialist-role { font-size:9.3px; }
.bwp-pp-render.bwp-pp-cols-desktop-5 .bwp-pp-service-list li,
.bwp-pp-render.bwp-pp-cols-desktop-6 .bwp-pp-service-list li,
.bwp-pp-render.bwp-pp-cols-desktop-5 .bwp-pp-contact,
.bwp-pp-render.bwp-pp-cols-desktop-6 .bwp-pp-contact { font-size:8.8px; }
.bwp-pp-render.bwp-pp-cols-desktop-5 .bwp-pp-package-stats strong,
.bwp-pp-render.bwp-pp-cols-desktop-6 .bwp-pp-package-stats strong { font-size:12px; }
.bwp-pp-render.bwp-pp-cols-desktop-5 .bwp-pp-package-detailed,
.bwp-pp-render.bwp-pp-cols-desktop-6 .bwp-pp-package-detailed { grid-template-columns:1fr; padding:12px; gap:10px; }
.bwp-pp-render.bwp-pp-cols-desktop-5 .bwp-pp-package-detailed__services,
.bwp-pp-render.bwp-pp-cols-desktop-6 .bwp-pp-package-detailed__services { padding:10px 0 0; border-left:0; border-top:1px solid var(--bwp-pp-border); }

.bwp-pp-render .bwp-pp-empty { display:flex; min-height:150px; align-items:center; justify-content:center; padding:24px; border:1px dashed var(--bwp-pp-border); border-radius:12px; color:var(--bwp-pp-muted); font-size:12px; text-align:center; }

/* Device simulation inside admin. The HTML itself is server-rendered by the same PHP shortcode. */
.bwp-pp-device--tablet .bwp-pp-specialist-row { grid-template-columns:auto minmax(150px,1fr) minmax(170px,1fr) auto; }
.bwp-pp-device--tablet .bwp-pp-specialist-row__contact { display:none; }
.bwp-pp-device--mobile .bwp-pp-dept-row,
.bwp-pp-device--mobile .bwp-pp-specialist-row,
.bwp-pp-device--mobile .bwp-pp-package-row,
.bwp-pp-device--mobile .bwp-pp-service-line,
.bwp-pp-device--mobile .bwp-pp-package-detailed { grid-template-columns:1fr; }
.bwp-pp-device--mobile .bwp-pp-dept-row { align-items:flex-start; }
.bwp-pp-device--mobile .bwp-pp-dept-row .bwp-pp-meta { white-space:normal; }
.bwp-pp-device--mobile .bwp-pp-specialist-row__services,
.bwp-pp-device--mobile .bwp-pp-specialist-row__contact { display:flex; }
.bwp-pp-device--mobile .bwp-pp-package-detailed__services { padding:10px 0 0; border-left:0; border-top:1px solid var(--bwp-pp-border); }
.bwp-pp-device--mobile .bwp-pp-price-row { grid-template-columns:1fr; }
.bwp-pp-device--mobile .bwp-pp-price-row__right { justify-content:space-between; }
.bwp-pp-device--mobile .bwp-pp-service-line__aside { min-width:0; align-items:flex-start; }

/* --------------------------------------------------------------------------
 * 0.34.9 final public-pages polish
 * - the renderer itself is the responsive container, so the exact same HTML/CSS
 *   behaves identically inside wp-admin preview and on public Gutenberg pages;
 * - tablet/mobile column counts are actual renderer settings, not viewport guesses;
 * - typography and CTAs match the approved compact blueprints.
 * -------------------------------------------------------------------------- */
.bwp-pp-render{
  container-name:bwp-public-pages;
  container-type:inline-size;
}
.bwp-pp-render h3,
.bwp-pp-render .bwp-pp-card h3,
.bwp-pp-render .bwp-pp-rows h3,
.bwp-pp-render .bwp-pp-price-list h3,
.bwp-pp-render .bwp-pp-accordion h3{
  font-weight:700;
  letter-spacing:-.01em;
}
.bwp-pp-render .bwp-pp-card__body{min-width:0}
.bwp-pp-render .bwp-pp-description{overflow-wrap:anywhere}

/* Compact CTAs: never stretch into the full card width. */
.bwp-pp-render a.bwp-pp-cta{
  min-height:32px;
  max-width:calc(100% - 24px);
  margin:0 12px 12px;
  padding:6px 10px;
  border-radius:7px;
  font-size:10.5px;
  font-weight:700;
}
.bwp-pp-render a.bwp-pp-cta .bwp-pp-icon{width:12px;height:12px}
.bwp-pp-render a.bwp-pp-cta.bwp-pp-cta--outline{
  border:1px solid var(--bwp-pp-primary);
  background:transparent;
  color:var(--bwp-pp-primary);
  box-shadow:none!important;
}
.bwp-pp-render a.bwp-pp-cta.bwp-pp-cta--primary{
  border:1px solid var(--bwp-pp-primary);
  background:var(--bwp-pp-primary);
  color:#fff;
}
.bwp-pp-render a.bwp-pp-cta.bwp-pp-cta--outline:hover,
.bwp-pp-render a.bwp-pp-cta.bwp-pp-cta--outline:focus-visible{background:var(--bwp-pp-primary);color:#fff}
.bwp-pp-render a.bwp-pp-cta.bwp-pp-cta--primary:hover,
.bwp-pp-render a.bwp-pp-cta.bwp-pp-cta--primary:focus-visible{background:transparent;color:var(--bwp-pp-primary)}

/* Department layouts */
.bwp-pp-render .bwp-pp-dept-card h3{font-size:14.5px}
.bwp-pp-render .bwp-pp-dept-tile__body h3{font-size:13.5px}
.bwp-pp-render .bwp-pp-dept-row__content h3{font-size:13.5px}
.bwp-pp-render .bwp-pp-dept-row a.bwp-pp-cta{margin:0;padding:6px 9px}

/* Service layouts */
.bwp-pp-render .bwp-pp-service-card h3{font-size:14px}
.bwp-pp-render .bwp-pp-service-card .bwp-pp-price{margin-top:auto;padding-top:10px}
.bwp-pp-render .bwp-pp-service-card .bwp-pp-card__body{padding-bottom:10px}
.bwp-pp-render .bwp-pp-price-row strong{font-weight:700}
.bwp-pp-render .bwp-pp-service-line h3{font-size:14px}
.bwp-pp-render .bwp-pp-service-line__aside a.bwp-pp-cta{margin:0}

/* Specialist layouts */
.bwp-pp-render .bwp-pp-specialist-card h3{font-size:14px;font-weight:700}
.bwp-pp-render .bwp-pp-specialist-row__identity h3{font-size:13px;font-weight:700}
.bwp-pp-render .bwp-pp-specialist-row a.bwp-pp-cta{margin:0;padding:6px 9px}
.bwp-pp-render .bwp-pp-specialist-card .bwp-pp-contact{margin-top:auto}

/* Package layouts */
.bwp-pp-render .bwp-pp-package-card h3,
.bwp-pp-render .bwp-pp-package-detailed h3,
.bwp-pp-render .bwp-pp-package-row__name h3{font-weight:700}
.bwp-pp-render .bwp-pp-package-card .bwp-pp-card__body{padding-bottom:10px}
.bwp-pp-render .bwp-pp-package-services{margin-top:auto;padding-top:2px}
.bwp-pp-render .bwp-pp-package-row a.bwp-pp-cta{margin:0;padding:6px 9px}
.bwp-pp-render .bwp-pp-package-detailed__main a.bwp-pp-cta{margin:10px 0 0}

/* Detailed packages need their internal columns stacked once the outer grid is dense. */
.bwp-pp-render.bwp-pp-cols-desktop-4 .bwp-pp-package-detailed,
.bwp-pp-render.bwp-pp-cols-desktop-5 .bwp-pp-package-detailed,
.bwp-pp-render.bwp-pp-cols-desktop-6 .bwp-pp-package-detailed{
  grid-template-columns:1fr;
  gap:10px;
  padding:12px;
}
.bwp-pp-render.bwp-pp-cols-desktop-4 .bwp-pp-package-detailed__services,
.bwp-pp-render.bwp-pp-cols-desktop-5 .bwp-pp-package-detailed__services,
.bwp-pp-render.bwp-pp-cols-desktop-6 .bwp-pp-package-detailed__services{
  padding:10px 0 0;
  border-left:0;
  border-top:1px solid var(--bwp-pp-border);
}

/* Real responsive columns. These are container queries so the admin simulator and
 * the public page use exactly the same breakpoints and card wrapping. */
@container bwp-public-pages (max-width:1100px){
  .bwp-pp-grid,
  .bwp-pp-grid--detailed{
    grid-template-columns:repeat(var(--bwp-pp-columns-tablet,2),minmax(0,1fr));
  }
  .bwp-pp-specialist-row{
    grid-template-columns:auto minmax(150px,1fr) minmax(170px,1fr) auto;
  }
  .bwp-pp-specialist-row__contact{display:none}
  .bwp-pp-package-row{grid-template-columns:minmax(190px,1.2fr) auto auto auto}
  .bwp-pp-package-row__validity{display:none}
  .bwp-pp-render.bwp-pp-cols-desktop-5 .bwp-pp-card__body,
  .bwp-pp-render.bwp-pp-cols-desktop-6 .bwp-pp-card__body{padding:14px}
  .bwp-pp-render.bwp-pp-cols-desktop-5 .bwp-pp-card h3,
  .bwp-pp-render.bwp-pp-cols-desktop-6 .bwp-pp-card h3{font-size:14px}
  .bwp-pp-render.bwp-pp-cols-desktop-5 .bwp-pp-description,
  .bwp-pp-render.bwp-pp-cols-desktop-6 .bwp-pp-description{font-size:11px;-webkit-line-clamp:3}
  .bwp-pp-render.bwp-pp-cols-desktop-5 .bwp-pp-meta,
  .bwp-pp-render.bwp-pp-cols-desktop-6 .bwp-pp-meta{font-size:10.5px}
}
@container bwp-public-pages (max-width:680px){
  .bwp-pp-grid,
  .bwp-pp-grid--detailed{
    grid-template-columns:repeat(var(--bwp-pp-columns-mobile,1),minmax(0,1fr));
    gap:12px;
  }
  .bwp-pp-dept-row,
  .bwp-pp-specialist-row,
  .bwp-pp-package-row,
  .bwp-pp-service-line,
  .bwp-pp-package-detailed{
    grid-template-columns:1fr;
  }
  .bwp-pp-dept-row{align-items:flex-start}
  .bwp-pp-dept-row .bwp-pp-meta{white-space:normal}
  .bwp-pp-specialist-row__services,
  .bwp-pp-specialist-row__contact{display:flex}
  .bwp-pp-specialist-row .bwp-pp-avatar{width:54px;height:54px}
  .bwp-pp-specialist-row a.bwp-pp-cta,
  .bwp-pp-package-row a.bwp-pp-cta,
  .bwp-pp-dept-row a.bwp-pp-cta{margin-top:2px}
  .bwp-pp-package-detailed__services{padding:10px 0 0;border-left:0;border-top:1px solid var(--bwp-pp-border)}
  .bwp-pp-price-row{grid-template-columns:1fr;gap:8px}
  .bwp-pp-price-row__right{justify-content:space-between}
  .bwp-pp-service-line__aside{min-width:0;align-items:flex-start}
  .bwp-pp-render.bwp-pp-cols-desktop-5 .bwp-pp-card__body,
  .bwp-pp-render.bwp-pp-cols-desktop-6 .bwp-pp-card__body{padding:13px}
  .bwp-pp-render.bwp-pp-cols-desktop-5 .bwp-pp-card h3,
  .bwp-pp-render.bwp-pp-cols-desktop-6 .bwp-pp-card h3{font-size:13.5px}
  .bwp-pp-render.bwp-pp-cols-desktop-5 .bwp-pp-specialist-card h3,
  .bwp-pp-render.bwp-pp-cols-desktop-6 .bwp-pp-specialist-card h3{font-size:13.5px}
  .bwp-pp-render.bwp-pp-cols-desktop-5 .bwp-pp-specialist-role,
  .bwp-pp-render.bwp-pp-cols-desktop-6 .bwp-pp-specialist-role{font-size:10px}
  .bwp-pp-render.bwp-pp-cols-desktop-5 .bwp-pp-service-list li,
  .bwp-pp-render.bwp-pp-cols-desktop-6 .bwp-pp-service-list li,
  .bwp-pp-render.bwp-pp-cols-desktop-5 .bwp-pp-contact,
  .bwp-pp-render.bwp-pp-cols-desktop-6 .bwp-pp-contact{font-size:9.5px}
  .bwp-pp-render a.bwp-pp-cta{max-width:100%}
}

/* --------------------------------------------------------------------------
 * 0.34.9.1 typography + responsive parity hotfix
 * - entity titles are visibly bold in every public layout;
 * - selected mobile/tablet column counts are authoritative in preview + public;
 * - one-column mobile can never inherit the desktop grid;
 * - dense package/service/specialist cards remain readable at narrow widths.
 * -------------------------------------------------------------------------- */
.bwp-pp-render{min-width:0;max-width:100%}
.bwp-pp-render .bwp-pp-grid,
.bwp-pp-render .bwp-pp-grid--detailed{min-width:0;width:100%}

/* Stronger entity-title hierarchy across all 12 approved layouts. */
.bwp-pp-render .bwp-pp-card h3,
.bwp-pp-render .bwp-pp-dept-tile h3,
.bwp-pp-render .bwp-pp-dept-row h3,
.bwp-pp-render .bwp-pp-price-group h3,
.bwp-pp-render .bwp-pp-price-row strong,
.bwp-pp-render .bwp-pp-service-line h3,
.bwp-pp-render .bwp-pp-accordion h3,
.bwp-pp-render .bwp-pp-specialist-row h3,
.bwp-pp-render .bwp-pp-package-row h3,
.bwp-pp-render .bwp-pp-package-detailed h3{
  font-weight:700!important;
  color:var(--bwp-pp-text)!important;
  text-rendering:optimizeLegibility;
}
.bwp-pp-render .bwp-pp-card h3{font-size:14.5px}
.bwp-pp-render .bwp-pp-specialist-card h3{font-size:14px}
.bwp-pp-render .bwp-pp-service-card h3{font-size:14px}
.bwp-pp-render .bwp-pp-package-card h3{font-size:14.5px}

/* Package cards: keep content in natural order instead of introducing large
 * blank bands between validity and included services. CTA alignment is kept by
 * the flex card itself. */
.bwp-pp-render .bwp-pp-package-services{margin-top:10px;padding-top:0}
.bwp-pp-render .bwp-pp-package-card .bwp-pp-card__body{justify-content:flex-start}

/* Admin device switch must simulate the chosen breakpoint even though the wp-admin
 * browser viewport itself is desktop sized. */
.bwp-pp-device--tablet .bwp-pp-render .bwp-pp-grid,
.bwp-pp-device--tablet .bwp-pp-render .bwp-pp-grid--detailed{
  grid-template-columns:repeat(var(--bwp-pp-columns-tablet,2),minmax(0,1fr))!important;
}
.bwp-pp-device--mobile .bwp-pp-render .bwp-pp-grid,
.bwp-pp-device--mobile .bwp-pp-render .bwp-pp-grid--detailed{
  grid-template-columns:repeat(var(--bwp-pp-columns-mobile,1),minmax(0,1fr))!important;
}

/* Viewport fallback is intentionally unconditional. Container queries remain the
 * primary mechanism, but themes/builders cannot leave desktop columns active on
 * a real phone if a container establishes unexpected intrinsic width. */
@media (min-width:768px) and (max-width:1100px){
  .bwp-pp-render .bwp-pp-grid,
  .bwp-pp-render .bwp-pp-grid--detailed{
    grid-template-columns:repeat(var(--bwp-pp-columns-tablet,2),minmax(0,1fr))!important;
  }
}
@media (max-width:767px){
  .bwp-pp-render .bwp-pp-grid,
  .bwp-pp-render .bwp-pp-grid--detailed{
    grid-template-columns:repeat(var(--bwp-pp-columns-mobile,1),minmax(0,1fr))!important;
    gap:12px;
  }
  .bwp-pp-render .bwp-pp-dept-row,
  .bwp-pp-render .bwp-pp-specialist-row,
  .bwp-pp-render .bwp-pp-package-row,
  .bwp-pp-render .bwp-pp-service-line,
  .bwp-pp-render .bwp-pp-package-detailed{
    grid-template-columns:1fr!important;
    min-width:0;
  }
  .bwp-pp-render .bwp-pp-card,
  .bwp-pp-render .bwp-pp-dept-tile,
  .bwp-pp-render .bwp-pp-dept-row,
  .bwp-pp-render .bwp-pp-specialist-row,
  .bwp-pp-render .bwp-pp-package-row{min-width:0;width:100%;max-width:100%}
  .bwp-pp-render .bwp-pp-price-row{grid-template-columns:1fr!important}
  .bwp-pp-render .bwp-pp-price-row__right{width:100%;justify-content:space-between;white-space:normal}
  .bwp-pp-render .bwp-pp-service-line__aside{min-width:0;align-items:flex-start}
  .bwp-pp-render .bwp-pp-package-detailed__services{padding:10px 0 0;border-left:0;border-top:1px solid var(--bwp-pp-border)}
  .bwp-pp-render .bwp-pp-specialist-row__services,
  .bwp-pp-render .bwp-pp-specialist-row__contact{display:flex}
  .bwp-pp-render h3,
  .bwp-pp-render .bwp-pp-card h3{overflow-wrap:anywhere}
}

/* --------------------------------------------------------------------------
 * 0.34.9.2 canonical public entity title contract
 * Every visible entity/group title rendered by PublicPagesShortcodes carries
 * .bwp-pp-title + data-bwp-pp-title="1". The selector intentionally wins over
 * theme heading normalizers such as [data-everit-heading-level].
 * -------------------------------------------------------------------------- */
.bwp-pp-render .bwp-pp-title,
.bwp-pp-render [data-bwp-pp-title="1"],
.bwp-pp-render [data-everit-heading-level].bwp-pp-title {
  margin-top:0!important;
  margin-bottom:0!important;
  color:var(--bwp-pp-text)!important;
  font-family:inherit!important;
  font-style:normal!important;
  font-weight:700!important;
  font-variation-settings:"wght" 700;
  letter-spacing:-.01em!important;
  line-height:1.28!important;
  text-decoration:none!important;
}
/* Fallback for themes that rewrite h3 into a data-everit heading element but
 * do not preserve the original tag selector. Structural scope keeps this local
 * to BookingWP entity titles only. */
.bwp-pp-render .bwp-pp-card__body > [data-everit-heading-level="3"],
.bwp-pp-render .bwp-pp-dept-tile__body > [data-everit-heading-level="3"],
.bwp-pp-render .bwp-pp-dept-row__content > [data-everit-heading-level="3"],
.bwp-pp-render .bwp-pp-specialist-row__identity > [data-everit-heading-level="3"],
.bwp-pp-render .bwp-pp-service-line__main > [data-everit-heading-level="3"],
.bwp-pp-render .bwp-pp-package-row__name > [data-everit-heading-level="3"],
.bwp-pp-render .bwp-pp-package-detailed__main > [data-everit-heading-level="3"] {
  color:var(--bwp-pp-text)!important;
  font-family:inherit!important;
  font-style:normal!important;
  font-weight:700!important;
  font-variation-settings:"wght" 700;
  letter-spacing:-.01em!important;
  line-height:1.28!important;
}
.bwp-pp-render .bwp-pp-group-title { font-weight:700!important; }


/* 0.34.9.5 — outline CTA is a true border-only button.
 * Themes must not re-introduce inset rings/shadows inside BookingWP CTAs. */
.bwp-pp-render a.bwp-pp-cta.bwp-pp-cta--outline,
.bwp-pp-render a.bwp-pp-cta.bwp-pp-cta--outline:hover,
.bwp-pp-render a.bwp-pp-cta.bwp-pp-cta--outline:focus-visible {
  box-shadow:none!important;
}

/* --------------------------------------------------------------------------
 * 0.34.9.6 final CTA + row-layout polish
 * One canonical button contract for every public-page layout. Theme/button
 * presets are not allowed to resize, shadow or recolor BookingWP CTAs.
 * -------------------------------------------------------------------------- */
.bwp-pp-render{
  --bwp-pp-cta-font-size:11.5px;
  --bwp-pp-cta-min-height:34px;
  --bwp-pp-cta-pad-y:7px;
  --bwp-pp-cta-pad-x:11px;
  --bwp-pp-cta-radius:7px;
}
.bwp-pp-render.bwp-pp-cols-desktop-5,
.bwp-pp-render.bwp-pp-cols-desktop-6{
  --bwp-pp-cta-font-size:10.5px;
  --bwp-pp-cta-min-height:31px;
  --bwp-pp-cta-pad-y:6px;
  --bwp-pp-cta-pad-x:9px;
}
.bwp-pp-render a.bwp-pp-cta,
.bwp-pp-render a.bwp-pp-cta:link,
.bwp-pp-render a.bwp-pp-cta:visited{
  flex:0 0 auto;
  min-height:var(--bwp-pp-cta-min-height)!important;
  padding:var(--bwp-pp-cta-pad-y) var(--bwp-pp-cta-pad-x)!important;
  border-width:1px!important;
  border-style:solid!important;
  border-radius:var(--bwp-pp-cta-radius)!important;
  font-family:inherit!important;
  font-size:var(--bwp-pp-cta-font-size)!important;
  font-style:normal!important;
  font-weight:700!important;
  font-variation-settings:"wght" 700;
  line-height:1!important;
  letter-spacing:0!important;
  text-align:center!important;
  text-decoration:none!important;
  text-shadow:none!important;
  white-space:nowrap!important;
  box-shadow:none!important;
  background-image:none!important;
  filter:none!important;
  -webkit-appearance:none;
  appearance:none;
}
.bwp-pp-render a.bwp-pp-cta .bwp-pp-icon{
  width:12px!important;
  height:12px!important;
  flex:0 0 12px;
}
.bwp-pp-render a.bwp-pp-cta--primary,
.bwp-pp-render a.bwp-pp-cta--primary:link,
.bwp-pp-render a.bwp-pp-cta--primary:visited{
  border-color:var(--bwp-pp-primary)!important;
  background:var(--bwp-pp-primary)!important;
  color:#fff!important;
}
.bwp-pp-render a.bwp-pp-cta--outline,
.bwp-pp-render a.bwp-pp-cta--outline:link,
.bwp-pp-render a.bwp-pp-cta--outline:visited{
  border-color:var(--bwp-pp-primary)!important;
  background:transparent!important;
  color:var(--bwp-pp-primary)!important;
}
.bwp-pp-render a.bwp-pp-cta--primary:hover,
.bwp-pp-render a.bwp-pp-cta--primary:focus-visible{
  border-color:var(--bwp-pp-primary)!important;
  background:transparent!important;
  color:var(--bwp-pp-primary)!important;
  box-shadow:none!important;
}
.bwp-pp-render a.bwp-pp-cta--outline:hover,
.bwp-pp-render a.bwp-pp-cta--outline:focus-visible{
  border-color:var(--bwp-pp-primary)!important;
  background:var(--bwp-pp-primary)!important;
  color:#fff!important;
  box-shadow:none!important;
}

/* Row/list variants need enough intrinsic room for their labels, otherwise
 * browser/theme compression can clip the arrow or squeeze the text. */
.bwp-pp-render .bwp-pp-dept-row > a.bwp-pp-cta{
  min-width:132px;
  justify-self:end;
}
.bwp-pp-render .bwp-pp-service-line__aside > a.bwp-pp-cta{
  min-width:120px;
}
.bwp-pp-render .bwp-pp-specialist-row > a.bwp-pp-cta{
  min-width:118px;
  justify-self:end;
}
.bwp-pp-render .bwp-pp-package-row > a.bwp-pp-cta{
  min-width:112px;
  justify-self:end;
}
.bwp-pp-render .bwp-pp-dept-row > .bwp-pp-meta,
.bwp-pp-render .bwp-pp-service-line__aside,
.bwp-pp-render .bwp-pp-package-row__sessions,
.bwp-pp-render .bwp-pp-package-row__validity,
.bwp-pp-render .bwp-pp-package-row__price{
  justify-self:end;
}

/* Keep compact list text from colliding with the CTA at intermediate widths. */
.bwp-pp-render .bwp-pp-dept-row__content,
.bwp-pp-render .bwp-pp-specialist-row__identity,
.bwp-pp-render .bwp-pp-package-row__name,
.bwp-pp-render .bwp-pp-service-line__main{
  min-width:0;
}
.bwp-pp-render .bwp-pp-dept-row__content p,
.bwp-pp-render .bwp-pp-package-row__name p,
.bwp-pp-render .bwp-pp-package-row__services{
  max-width:100%;
}

@media (max-width:767px){
  .bwp-pp-render .bwp-pp-dept-row > a.bwp-pp-cta,
  .bwp-pp-render .bwp-pp-service-line__aside > a.bwp-pp-cta,
  .bwp-pp-render .bwp-pp-specialist-row > a.bwp-pp-cta,
  .bwp-pp-render .bwp-pp-package-row > a.bwp-pp-cta{
    min-width:0;
    justify-self:start;
  }
  .bwp-pp-render .bwp-pp-dept-row > .bwp-pp-meta,
  .bwp-pp-render .bwp-pp-service-line__aside,
  .bwp-pp-render .bwp-pp-package-row__sessions,
  .bwp-pp-render .bwp-pp-package-row__validity,
  .bwp-pp-render .bwp-pp-package-row__price{
    justify-self:start;
  }
}


/* 0.35.0.1 — specialist mobile single-column readability.
 * Only the explicit 1-column mobile mode is enlarged. Two-column mobile and
 * every tablet/desktop density keep the approved compact typography. */
@media (max-width:767px){
  .bwp-pp-render--specialists.bwp-pp-cols-mobile-1.bwp-pp-render--profile .bwp-pp-specialist-card h3,
  .bwp-pp-render--specialists.bwp-pp-cols-mobile-1.bwp-pp-render--editorial .bwp-pp-specialist-card h3{
    font-size:17px!important;
    line-height:1.25!important;
  }
  .bwp-pp-render--specialists.bwp-pp-cols-mobile-1 .bwp-pp-specialist-role{
    font-size:12.5px!important;
    line-height:1.45!important;
  }
  .bwp-pp-render--specialists.bwp-pp-cols-mobile-1 .bwp-pp-chip{
    font-size:11px!important;
    padding:4px 8px!important;
  }
  .bwp-pp-render--specialists.bwp-pp-cols-mobile-1 .bwp-pp-service-list li,
  .bwp-pp-render--specialists.bwp-pp-cols-mobile-1 .bwp-pp-contact{
    font-size:11.5px!important;
    line-height:1.45!important;
  }
  .bwp-pp-render--specialists.bwp-pp-cols-mobile-1 .bwp-pp-service-list .bwp-pp-icon,
  .bwp-pp-render--specialists.bwp-pp-cols-mobile-1 .bwp-pp-contact .bwp-pp-icon{
    width:14px!important;
    height:14px!important;
  }
  .bwp-pp-render--specialists.bwp-pp-cols-mobile-1 .bwp-pp-specialist-row__identity h3{
    font-size:16px!important;
    line-height:1.25!important;
  }
  .bwp-pp-render--specialists.bwp-pp-cols-mobile-1 .bwp-pp-specialist-row__identity p{
    font-size:12px!important;
    line-height:1.4!important;
  }
  .bwp-pp-render--specialists.bwp-pp-cols-mobile-1 .bwp-pp-specialist-row__services,
  .bwp-pp-render--specialists.bwp-pp-cols-mobile-1 .bwp-pp-specialist-row__contact{
    font-size:11px!important;
    line-height:1.4!important;
  }
  .bwp-pp-render--specialists.bwp-pp-cols-mobile-1 .bwp-pp-specialist-row__services .bwp-pp-icon,
  .bwp-pp-render--specialists.bwp-pp-cols-mobile-1 .bwp-pp-specialist-row__contact .bwp-pp-icon{
    width:13px!important;
    height:13px!important;
  }
  .bwp-pp-render--specialists.bwp-pp-cols-mobile-1 a.bwp-pp-cta{
    font-size:12px!important;
    line-height:1.2!important;
  }
}
