/* Uses the original Buschlen palette, typography and card system. */
.home .practices { padding-bottom: 0; }
.pb-pricing { padding-block: clamp(76px,8vw,115px); scroll-margin-top: 36px; }
.pb-pricing-heading { margin-bottom: 48px; }
.pb-pricing-heading h2 { font-size: clamp(42px,4.5vw,64px); }
.pb-pricing-grid { display:grid; grid-template-columns:repeat(4,minmax(0,1fr)); border-top:1px solid var(--line); border-left:1px solid var(--line); }
.pb-price-card { padding:30px 26px; border-right:1px solid var(--line); border-bottom:1px solid var(--line); background:rgba(255,253,252,.45); }
.pb-price-card h3 { margin:0 0 30px; font-size:29px; line-height:1.15; }
.pb-price-label { margin:0 0 10px; color:var(--plum); font-size:12px; font-weight:750; }
.pb-price-amount { margin:0; font-family:var(--font-display),serif; color:var(--plum); font-size:48px; line-height:1.1; letter-spacing:-.04em; font-variant-numeric:tabular-nums; }
.pb-price-amount span { font-size:30px; }
.pb-price-duration { margin:12px 0 0; color:var(--muted); font-size:14px; line-height:1.7; }
.pb-price-followup { margin-top:26px; padding-top:22px; border-top:1px solid var(--line); }
.pb-price-followup .pb-price-amount { font-size:34px; }
.pb-price-followup .pb-price-amount span { font-size:24px; }
.pb-pricing-contact { margin-top:30px; }
.floating-tarifs-icon { width:27px; height:27px; display:block; background:currentColor; mask:url('tarifs.svg') center/contain no-repeat; -webkit-mask:url('tarifs.svg') center/contain no-repeat; }
.pb-dynamic-articles { display:contents; }
.pb-pagination,.pagination .nav-links { display:flex; flex-wrap:wrap; gap:10px; margin-top:36px; }
.pb-pagination .page-numbers,.pagination .page-numbers { min-width:44px; min-height:44px; display:inline-flex; align-items:center; justify-content:center; padding:8px 15px; border:1px solid var(--line); border-radius:22px; color:var(--plum); }
.pb-pagination .current,.pagination .current { background:var(--plum); color:var(--white); }
.article-body > h2:not(:first-child),.article-body > h3:not(:first-child) { margin-top:48px; }
.article-body h3 { margin-bottom:20px; font-size:28px; }
.article-body ul,.article-body ol { color:var(--muted); font-size:17px; line-height:1.8; padding-left:24px; margin-block:22px; }
.article-body li + li { margin-top:10px; }
.article-body a { color:var(--plum); text-decoration:underline; text-underline-offset:3px; overflow-wrap:anywhere; }
.article-body img,.pb-article-image img { max-width:100%; height:auto; border-radius:20px; }
.pb-article-image { margin:48px 0 0; }
.article-body table { display:block; max-width:100%; overflow-x:auto; border-collapse:collapse; }
.article-body td,.article-body th { border:1px solid var(--line); padding:12px; }
@media(max-width:1000px) { .pb-pricing-grid { grid-template-columns:repeat(2,minmax(0,1fr)); } }
@media(max-width:600px) { .pb-pricing-grid { grid-template-columns:1fr; } .pb-price-card { padding:28px; } .pb-pricing-heading { margin-bottom:34px; } }
@media(max-width:359px) {
  .buschlen-site { padding-bottom:48px; }
  .floating-actions { left:50%; right:auto; width:max-content; padding:6px; gap:2px; display:grid; grid-template-columns:repeat(4,44px); transform:translateX(-50%); }
  .floating-action { width:44px; height:44px; min-width:44px; }
}
