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

/* AI receptionist: how getting started works and proof links */
.ai-steps { list-style: none; counter-reset: ai-step; display: grid; grid-template-columns: repeat(3, minmax(0, 1fr)); gap: 14px; margin: 0 0 22px; padding: 0; }
.ai-steps li { counter-increment: ai-step; display: grid; gap: 6px; padding: 18px 18px 18px 58px; position: relative; border: 1px solid var(--line); border-radius: 16px; background: var(--panel); }
.ai-steps li::before { content: counter(ai-step); position: absolute; left: 18px; top: 17px; width: 28px; height: 28px; border-radius: 50%; display: grid; place-items: center; background: var(--gold); color: #171306; font-weight: 900; }
.ai-steps strong { color: var(--ink); }
.ai-steps span { color: var(--muted); line-height: 1.5; }
.ai-proof-links { display: flex; flex-wrap: wrap; gap: 12px 22px; margin: 18px 0 28px; }
.ai-proof-links a { color: var(--gold); font-weight: 800; text-underline-offset: 4px; }
@media (max-width: 820px) { .ai-steps { grid-template-columns: 1fr; } }

/* Pricing nav language switcher (EN/FR) */
.price-nav .language-switcher { display: flex; align-items: center; gap: 6px; flex-shrink: 0; }
.price-nav .language-switcher .lang-toggle { padding: 6px 10px; border-radius: 999px; border: 1px solid var(--line); color: #aebbb3; font-weight: 800; font-size: 12px; text-decoration: none; }
.price-nav .language-switcher .lang-toggle[aria-current="page"] { background: var(--ink); color: #0b1210; border-color: var(--ink); }
.price-nav .nav-cta { flex-shrink: 0; }
.nav-cta-short { display: none; }
@media (max-width: 820px) {
  .price-nav .language-switcher, .price-nav .language-switcher a { display: inline-flex !important; }
  /* At narrow widths the brand, language switcher and CTA all share one row
     (the other nav links are already hidden above); a shorter CTA label
     keeps that row from wrapping or overlapping the brand. */
  .price-nav nav { gap: 10px; }
  .nav-cta-full { display: none; }
  .nav-cta-short { display: inline; }
}
/* 019: three language pills plus the demo button must fit a 360px phone. */
@media (max-width: 480px) {
  .price-nav { padding: 0 14px; }
  .price-nav nav { gap: 8px; }
  .price-brand { gap: 8px; font-size: 17px; }
  .price-brand img { width: 34px; height: 34px; }
  .price-nav .language-switcher { gap: 4px; }
  .price-nav .language-switcher .lang-toggle { padding: 5px 8px; font-size: 11px; }
}
@media (max-width: 380px) {
  .price-brand { font-size: 15px; }
  .price-nav .nav-cta { padding: 8px 10px; }
}
