/* Connected-app guides share AlliHat's type scale, purple, and paper palette. */
.integration-container { width: auto; max-width: 1120px; margin-inline: auto; }
.integration-page main { font-size: 1.075rem; line-height: 1.75; }
.integration-page main a:not(.integration-button):not(.integration-app-row) { color: var(--brand-dark); text-decoration: underline; text-underline-offset: 3px; }
.integration-page a:focus-visible { outline: 3px solid var(--brand-dark); outline-offset: 5px; }
.integration-skip { position: fixed; top: -100px; left: 16px; z-index: 100; padding: 12px 20px; background: white; }
.integration-skip:focus { top: 12px; }
.integration-nav-link { color: var(--brand-dark); text-decoration: underline; text-underline-offset: 4px; padding: 12px 0; font-size: .95rem; }
.integration-hero { background: var(--color-paper-warm); padding: 132px 24px 64px; }
.integration-breadcrumb { font-size: .9rem; margin-bottom: 28px; }
.integration-hero-grid { display: grid; grid-template-columns: 1.1fr 1fr; gap: 64px; align-items: center; }
.integration-hero h1 { margin-bottom: 24px; max-width: 14ch; }
.integration-deck { font-size: 1.4rem; line-height: 1.45; margin-bottom: 18px; max-width: 40ch; }
.integration-intro { max-width: 59ch; }
.integration-button { display: inline-block; background: var(--brand-dark); color: white; border-radius: 7px; padding: 12px 22px; margin-top: 26px; font-size: 1rem; font-weight: 600; text-decoration: none; }
.integration-button:hover { background: #604294; color: white; }
.integration-availability { font-size: .82rem; color: #555c68; line-height: 1.55; margin-top: 14px; }
.integration-status { font-size: .92rem; margin-top: 18px; padding-left: 16px; border-left: 3px solid var(--brand); color: #484158; }
.integration-example { background: white; padding: 32px; border: 1px solid var(--color-line); border-radius: 10px; margin: 0; }
.integration-example figcaption { display: flex; align-items: center; gap: 12px; font-size: .9rem; font-weight: 600; }
.integration-example img { object-fit: contain; }
.integration-source { color: #555c68; font-size: .95rem; margin: 28px 0 20px; }
.integration-example blockquote { font-family: 'New York', Georgia, serif; font-size: 1.6rem; line-height: 1.45; letter-spacing: -.02rem; }
.integration-example-note { font-size: .83rem; color: #555c68; margin-top: 24px; line-height: 1.6; }
.integration-reading { max-width: 800px; padding: 64px 24px 16px; margin: auto; }
.integration-reading section { margin-bottom: 56px; scroll-margin-top: 112px; }
.integration-reading h2 { font-size: 2.15rem; line-height: 1.2; letter-spacing: -.06rem; margin-bottom: 20px; }
.integration-reading h3 { font-family: inherit; font-size: 1.08rem; font-weight: 650; letter-spacing: 0; line-height: 1.5; margin: 28px 0 10px; }
.integration-reading p { margin-bottom: 18px; }
.integration-steps { padding-left: 24px; }
.integration-steps li { padding-left: 8px; margin-bottom: 22px; }
.integration-steps li::marker { color: var(--brand-dark); font-weight: 600; }
.integration-help { font-size: .9rem; color: #555c68; }
.integration-help code { overflow-wrap: anywhere; color: #51426b; background: var(--brand-light); }
.integration-verification { padding: 24px; background: var(--color-paper-warm); margin-bottom: 56px; font-size: .9rem; }
.integration-verification h2 { font-family: inherit; font-size: 1rem; font-weight: 600; letter-spacing: 0; margin-bottom: 12px; }
.integration-verification p:last-child { margin-bottom: 0; }
.integration-hub-hero .integration-container { max-width: 752px; }
.integration-hub-hero h1 { max-width: none; }
.integration-hub-hero .integration-intro { max-width: 60ch; }
.integration-app-list { list-style: none; padding: 0; margin: 24px -16px 0; }
.integration-app-list li + li { border-top: 1px solid var(--color-line); }
.integration-app-row { display: flex; align-items: center; gap: 18px; padding: 22px 16px; border-radius: 6px; color: var(--text-primary); text-decoration: none; }
.integration-app-row:hover { background: var(--brand-light); color: var(--text-primary); }
.integration-app-row img { flex: 0 0 36px; object-fit: contain; }
.integration-app-row > span:nth-child(2) { flex: 1; }
.integration-app-row strong { display: block; color: var(--brand-dark); text-decoration: underline; text-underline-offset: 4px; font-size: 1.05rem; }
.integration-app-row span span { display: block; margin-top: 4px; font-size: .95rem; }
.integration-row-action { color: var(--brand-dark); font-size: .85rem; white-space: nowrap; }
@media (max-width: 900px) {
  .integration-hero-grid { gap: 36px; }
  .integration-example { padding: 24px; }
}
@media (max-width: 768px) {
  .integration-hero { padding: 112px 24px 40px; }
  .integration-hero-grid { grid-template-columns: 1fr; gap: 32px; }
  .integration-hero h1 { max-width: 15ch; }
  .integration-page main { font-size: 1rem; }
  .integration-deck { font-size: 1.25rem; }
  .integration-reading { padding-top: 40px; }
  .integration-reading h2 { font-size: 1.85rem; }
  .integration-example blockquote { font-size: 1.4rem; }
  .integration-row-action { display: none; }
  .integration-app-row { align-items: flex-start; gap: 14px; }
  .integration-nav-link { font-size: .85rem; }
}
@media (prefers-reduced-motion: reduce) { html { scroll-behavior: auto; } }
