/* Custom pricing: one case-specific quote, without preset package cards. */
.custom-pricing{margin-bottom:24px;background:#fff;border:1px solid var(--border);border-radius:20px;overflow:hidden}
.custom-pricing-main{display:grid;grid-template-columns:minmax(0,1.15fr) minmax(0,.85fr);align-items:center;gap:24px;padding:clamp(24px,4vw,44px)}
.custom-pricing-copy{max-width:470px}
.custom-pricing-label{display:block;color:var(--violet);font-size:var(--fs-sm);font-weight:600;margin-bottom:12px}
.custom-pricing h2{font-size:clamp(1.5rem,1.1rem + 1.4vw,1.875rem);font-weight:700;line-height:1.2;margin:0 0 16px;max-width:20ch}
.custom-pricing-copy>p{font-size:1rem;line-height:1.7;margin:0 0 22px;text-wrap:pretty}
.custom-pricing .custom-pricing-action{min-height:44px;height:auto;padding:11px 16px;gap:10px;border-radius:10px;box-shadow:none;font-size:.875rem;line-height:1.4}
.custom-pricing-copy>.custom-pricing-note{font-size:var(--fs-note);margin:12px 0 0;color:var(--muted)}
.custom-pricing-art{width:100%;max-width:360px;justify-self:end}
.custom-pricing-art img{display:block;width:100%;height:auto;aspect-ratio:22/17}
.custom-pricing-factors{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:24px;list-style:none;margin:0;padding:24px clamp(24px,4vw,44px);border-top:1px solid var(--border)}
.custom-pricing-factors li{display:flex;align-items:flex-start;gap:12px;min-width:0}
.custom-pricing-factors .i{width:20px;height:20px;flex:none;color:var(--violet);margin-top:1px}
.custom-pricing-factors h3{font-size:var(--fs-sm);font-weight:600;line-height:1.4;margin:0 0 5px;letter-spacing:0}
.custom-pricing-factors p{font-size:var(--fs-sm);line-height:1.6;margin:0;color:var(--text);text-wrap:pretty}
@media (max-width:959px){
  .custom-pricing-main{grid-template-columns:minmax(0,1.2fr) minmax(0,.8fr);gap:16px}
  .custom-pricing-factors{gap:20px}
}
@media (max-width:640px){
  .custom-pricing{border-radius:16px}
  .custom-pricing-main{grid-template-columns:minmax(0,1fr);gap:20px;padding:24px 20px 12px}
  .custom-pricing h2{font-size:1.5rem}
  .custom-pricing-art{max-width:280px;justify-self:center}
  .custom-pricing-factors{grid-template-columns:minmax(0,1fr);gap:20px;padding:24px 20px}
}
