:root {
  --gorbit-border: var(--wp--preset--color--border);
  --gorbit-focus: var(--wp--preset--color--focus);
  --gorbit-radius-sm: var(--wp--custom--radius--sm);
  --gorbit-radius-md: var(--wp--custom--radius--md);
  --gorbit-page-padding: var(--wp--custom--layout--page-padding);
  --gorbit-motion-fast: var(--wp--custom--motion--fast);
  --gorbit-motion-normal: var(--wp--custom--motion--normal);
  --gorbit-easing: var(--wp--custom--motion--standard);
}

html {
  scroll-behavior: smooth;
}

body {
  -webkit-font-smoothing: antialiased;
  text-rendering: optimizeLegibility;
}

:where(a, button, input, select, textarea, summary):focus-visible {
  outline: 3px solid var(--gorbit-focus);
  outline-offset: 3px;
}

.wp-element-button,
.wp-block-navigation-item__content {
  transition:
    background-color var(--gorbit-motion-fast) var(--gorbit-easing),
    color var(--gorbit-motion-fast) var(--gorbit-easing),
    border-color var(--gorbit-motion-fast) var(--gorbit-easing),
    transform var(--gorbit-motion-fast) var(--gorbit-easing);
}

.wp-element-button:hover {
  background: var(--wp--preset--color--primary-hover);
  transform: translateY(-1px);
}

.is-style-outline > .wp-element-button:hover {
  color: var(--wp--preset--color--night);
  background: var(--wp--preset--color--accent);
  border-color: var(--wp--preset--color--accent);
}

.gorbit-site-header {
  min-height: var(--wp--custom--layout--header-height);
  border-bottom: 1px solid color-mix(in srgb, var(--wp--preset--color--night-foreground) 14%, transparent);
}

.gorbit-site-header .wp-block-site-title a,
.gorbit-site-header .wp-block-navigation-item__content {
  color: var(--wp--preset--color--night-foreground);
}

.gorbit-site-header .wp-block-navigation-item__content:hover {
  color: var(--wp--preset--color--accent);
}

.gorbit-hero {
  isolation: isolate;
  overflow: hidden;
  position: relative;
}

.gorbit-hero::before {
  background:
    radial-gradient(circle at 78% 24%, color-mix(in srgb, var(--wp--preset--color--accent) 25%, transparent), transparent 25%),
    radial-gradient(circle at 18% 12%, color-mix(in srgb, var(--wp--preset--color--primary) 35%, transparent), transparent 30%);
  content: "";
  inset: 0;
  pointer-events: none;
  position: absolute;
  z-index: -1;
}

.gorbit-eyebrow {
  font-family: var(--wp--preset--font-family--mono);
  font-size: var(--wp--preset--font-size--caption);
  font-weight: 700;
  letter-spacing: 0.14em;
  text-transform: uppercase;
}

.gorbit-prompt {
  border: 1px solid color-mix(in srgb, var(--wp--preset--color--accent) 30%, transparent);
  border-radius: var(--gorbit-radius-md);
  box-shadow: 0 1.75rem 5rem color-mix(in srgb, var(--wp--preset--color--night) 42%, transparent);
  position: relative;
}

.gorbit-prompt__mascot {
  filter: drop-shadow(0 1rem 1.4rem color-mix(in srgb, var(--wp--preset--color--night) 40%, transparent));
  height: auto;
  margin: 0;
  position: absolute;
  right: 1rem;
  top: -5rem;
  width: clamp(4.75rem, 9vw, 7rem);
}

.gorbit-prompt__command {
  border: 1px solid color-mix(in srgb, var(--wp--preset--color--night-foreground) 15%, transparent);
  border-radius: var(--gorbit-radius-sm);
}

.gorbit-capability-grid {
  border: 1px solid color-mix(in srgb, var(--wp--preset--color--night-foreground) 15%, transparent);
  gap: 1px;
}

.gorbit-capability-grid > .wp-block-column {
  border-right: 1px solid color-mix(in srgb, var(--wp--preset--color--night-foreground) 15%, transparent);
  padding: var(--wp--preset--spacing--50);
}

.gorbit-capability-grid > .wp-block-column:last-child {
  border-right: 0;
}

.gorbit-steps {
  border-top: 1px solid var(--gorbit-border);
}

.gorbit-step {
  border-bottom: 1px solid var(--gorbit-border);
  grid-template-columns: 3rem minmax(0, 1fr) !important;
}

.gorbit-step__number {
  color: var(--wp--preset--color--primary);
  font-family: var(--wp--preset--font-family--mono);
  font-size: var(--wp--preset--font-size--caption);
  font-weight: 700;
}

.gorbit-domain-search {
  background: var(--wp--preset--color--surface);
  border: 1px solid color-mix(in srgb, var(--wp--preset--color--night-foreground) 20%, transparent);
  border-radius: var(--gorbit-radius-md);
  color: var(--wp--preset--color--foreground);
  min-height: 7rem;
  padding: var(--wp--preset--spacing--50);
}

.gorbit-post-card {
  border-top: 1px solid var(--gorbit-border);
  padding-block: var(--wp--preset--spacing--60);
}

.gorbit-site-footer {
  border-top: 1px solid color-mix(in srgb, var(--wp--preset--color--night-foreground) 14%, transparent);
}

@media (max-width: 781px) {
  .gorbit-capability-grid > .wp-block-column {
    border-bottom: 1px solid color-mix(in srgb, var(--wp--preset--color--night-foreground) 15%, transparent);
    border-right: 0;
  }

  .gorbit-prompt {
    margin-top: var(--wp--preset--spacing--70);
  }
}

@media (prefers-reduced-motion: reduce) {
  html {
    scroll-behavior: auto;
  }

  *,
  *::before,
  *::after {
    animation-duration: 0.01ms !important;
    animation-iteration-count: 1 !important;
    scroll-behavior: auto !important;
    transition-duration: 0.01ms !important;
  }
}
