/* xonicbox kit styles. Uses the host page's variables when present; fallbacks keep it standalone. */
.hire {
  box-sizing: border-box; max-width: 40rem; margin: 1.5rem auto 0; padding: 1rem;
  background: #fff; border: 2px solid var(--navy, #14213d); border-radius: 1rem;
  text-align: center; font-size: .875rem; overflow-wrap: anywhere;
}
.hire p { margin: 0; }
.hire-title { font-weight: 800; font-size: 1rem; margin-bottom: .25rem !important; }
.hire-link {
  display: inline-flex; align-items: center; justify-content: center; min-height: 44px; margin-top: .75rem;
  padding: 0 1.25rem; border: 2px solid var(--navy, #14213d); border-radius: 999px;
  color: var(--navy, #14213d); text-decoration: none; font-weight: 800;
}
.hire-link:hover { background: var(--mango, #ffc93c); }
.hire-link:focus-visible, .share-sheet a:focus-visible, .share-sheet button:focus-visible { outline: 3px solid var(--teal, #0fa3b1); outline-offset: 2px; }

.kit-footer { padding: 1rem 0 2rem; font-size: .875rem; text-align: center; }
.kit-footer p { margin: .25rem 0; }
.kit-footer a { display: inline-block; min-height: 44px; line-height: 44px; padding: 0 .25rem; }
.kit-note { opacity: .85; }

.share-sheet { margin: 1rem 0; padding: 1rem; background: #fff; border: 2px solid var(--navy, #14213d); border-radius: 1rem; }
.share-sheet h3 { margin: 0 0 .75rem; font-size: 1.125rem; font-weight: 800; }
.share-sheet .share-grid { display: flex; flex-wrap: wrap; gap: .5rem; }
.share-sheet .share-grid a, .share-sheet .share-grid button, .share-sheet .share-sizes button {
  display: inline-flex; align-items: center; justify-content: center; min-height: 44px; min-width: 44px; padding: 0 1rem;
  border: 2px solid var(--navy, #14213d); border-radius: 999px; background: #fff; color: var(--navy, #14213d);
  font: 600 1rem var(--font, system-ui, sans-serif); text-decoration: none; cursor: pointer;
}
.share-sheet .share-sizes { display: flex; flex-wrap: wrap; gap: .5rem; margin-top: .75rem; }
.share-sheet .share-status { margin: .5rem 0 0; font-weight: 600; }

.ad-slot { margin: 1.5rem auto; max-width: 40rem; text-align: center; }
.ad-label { margin: 0 0 .25rem; font-size: .75rem; text-transform: uppercase; letter-spacing: .05em; opacity: .7; }
