/* Shared button geometry, including the separately bundled assessment. Colors stay local. */
:root {
  --button-height: 48px;
  --button-border-width: 2px;
  --button-font-size: 14px;
  --button-line-height: 18px;
  --button-font-weight: 600;
  --button-padding-x: 20px;
  --button-radius: 999px;
  --button-icon-size: 20px;
  --button-icon-gap: 8px;
}
@media (max-width: 767px) { :root { --button-height: 44px; } }
:is(.site-button, [data-slot="button"], :where(.assessment-buttons button:not([role="checkbox"]):not([role="radio"]):not([role="switch"]):not([role="combobox"]), .assessment-buttons a.inline-flex)) {
  box-sizing: border-box !important;
  display: inline-flex;
  align-items: center;
  justify-content: center;
  height: var(--button-height) !important;
  min-height: var(--button-height) !important;
  max-height: var(--button-height) !important;
  border-width: var(--button-border-width) !important;
  border-style: solid !important;
  border-radius: var(--button-radius) !important;
  padding: 0 var(--button-padding-x) !important;
  font-size: var(--button-font-size) !important;
  line-height: var(--button-line-height) !important;
  font-weight: var(--button-font-weight) !important;
  gap: var(--button-icon-gap) !important;
  max-width: 100%;
  white-space: normal !important;
  text-align: center;
  flex-shrink: 0;
}
:is(.site-button, [data-slot="button"]):not(.button-visible-border) { border-color: transparent !important; }
.home-design :is(.home-certified-button, .home-schedule-button, .home-industries-cta)[data-slot="button"] {
  display: inline-flex !important;
  align-items: center;
  justify-content: center;
}
.home-design .home-certified-button[data-slot="button"] { width: 100%; }

:root {
  --pill-height: 48px;
  --pill-padding-x: 12px;
  --pill-padding-y: 4px;
  --pill-font-size: 12px;
  --pill-line-height: 16px;
  --pill-font-weight: 600;
  --pill-radius: 9999px;
  --pill-border-width: 1px;
  --pill-icon-size: 16px;
  --pill-gap: 8px;
}
@media (max-width: 767px) { :root { --pill-height: 44px; } }
:is([data-slot="pill"].site-pill, .assessment-buttons :is(div, span).rounded-full[class*="px-"]) {
  box-sizing: border-box;
  display: inline-flex !important;
  align-items: center !important;
  min-width: 0;
  max-width: 100%;
  min-height: var(--pill-height) !important;
  height: auto !important;
  padding: var(--pill-padding-y) var(--pill-padding-x) !important;
  border-width: var(--pill-border-width) !important;
  border-style: solid !important;
  border-radius: var(--pill-radius) !important;
  font-family: var(--font-home-body) !important;
  font-size: var(--pill-font-size) !important;
  font-weight: var(--pill-font-weight) !important;
  line-height: var(--pill-line-height) !important;
  gap: var(--pill-gap) !important;
  white-space: normal;
  overflow-wrap: anywhere;
}
[data-slot="pill"].site-pill:not(.pill-visible-border), .assessment-buttons :is(div, span).rounded-full[class*="px-"]:not(.border) { border-color: transparent !important; }
[data-slot="pill"].site-pill > span { min-width: 0; margin: 0; padding: 0; }
:is([data-slot="pill"].site-pill, .assessment-buttons :is(div, span).rounded-full[class*="px-"]) > :is(svg, img) {
  width: var(--pill-icon-size) !important;
  height: var(--pill-icon-size) !important;
  flex-shrink: 0;
  object-fit: contain;
}
.pill-group {
  display: grid !important;
  grid-auto-rows: 1fr;
  gap: var(--pill-gap) !important;
  min-width: 0;
}
.pill-group > [data-slot="pill"] { width: 100%; margin-top: 0 !important; }
.pill-row-group { gap: var(--pill-gap) !important; }
.pill-row-group > [data-slot="pill"] { width: min(100%, 240px); }
.home-design .home-step-day[data-slot="pill"] { width: 100%; justify-content: center; }
:is(.site-button, [data-slot="button"]) svg {
  width: var(--button-icon-size) !important;
  height: var(--button-icon-size) !important;
  flex-shrink: 0;
}
:is(.site-button, [data-slot="button"]):is(.button-icon, [data-button-size="icon"]) {
  width: var(--button-height) !important;
  min-width: var(--button-height) !important;
  padding: 0 !important;
}
:is(.site-button, [data-slot="button"]).button-square { border-radius: 8px !important; }
.button-group { width: fit-content; max-width: 100%; }
.button-group > :is(.site-button, [data-slot="button"]) { flex: 1 1 0; min-width: 0; }
.typography-document [aria-label="Privacy and cookies"] [data-slot="button"] { white-space: nowrap !important; overflow-wrap: normal; min-width: max-content; }
.home-hero-copy .button-group { margin-inline: auto; }
.button-dot { position: relative; background: transparent !important; }
.button-dot::after { content: ""; position: absolute; inset: 0; margin: auto; width: 8px; height: 8px; border-radius: var(--button-radius); background: var(--color-border); transition: width .3s, background .3s; }
.button-dot.bg-secondary::after { width: 24px; background: var(--color-secondary); }
.button-dot.bg-border:hover::after { background: var(--color-muted-foreground); }
.home-design .home-askai-grid { grid-template-columns: repeat(2, minmax(0, 190px)) !important; }
.home-askai-grid [data-slot="button"] { width: 100%; }
.home-design .home-slider-dots { gap: 0; flex-wrap: wrap; }
.home-design .home-slider-dots [data-slot="button"] { position: relative; background: transparent; }
.home-design .home-slider-dots [data-slot="button"]::after { content: ""; position: absolute; inset: 0; margin: auto; width: 8px; height: 8px; border-radius: 999px; background: color-mix(in srgb, var(--home-ink) 25%, transparent); }
.home-design .home-slider-dots [data-slot="button"].is-active::after { width: 22px; background: var(--home-blue); }
.home-design .home-slider-dots [data-slot="button"]:is(:hover, .is-active:hover) { background: transparent; }
.home-design .home-slider-dots [data-slot="button"].is-active { background: transparent; }
.assessment-buttons button:not(.border):not([role="checkbox"]):not([role="radio"]):not([role="switch"]):not([role="combobox"]) { border-color: transparent !important; }
.assessment-buttons button svg { width: var(--button-icon-size); height: var(--button-icon-size); }
.home-design .home-slider { padding-bottom: 8px; }
.home-design .home-team-slider .home-slider-track { padding-bottom: 32px; }
@media (max-width: 1024px) {
  .home-design .home-slider { padding-bottom: 52px; }
  .home-design .home-slider-dots { margin-inline: 44px; }
}
@media (max-width: 767px) {
  .home-design .home-askai-grid { grid-template-columns: minmax(0, 1fr) !important; }
}
/* "Become an AVA" buttons: label stays on one line. */
.home-design .home-button-nowrap[data-slot="button"] { white-space: nowrap !important; width: auto; flex: 0 0 auto; }

/* Navbar "Resources" trigger is a plain caption button (src/components/SiteHeader.tsx): no shared button chrome, sized by --nav-caption-size in styles.css. */
