/* AIME 360 Global Hub. Generated by build.py from Tailwind CSS v4 utilities (MIT) + hub styles. */
:root, :host {
  --font-serif: "Newsreader", Georgia, serif;
  --color-black: #000;
  --spacing: 0.25rem;
  --container-xl: 36rem;
  --container-7xl: 80rem;
  --text-xs: 0.75rem;
  --text-xs--line-height: calc(1 / 0.75);
  --text-sm: 0.875rem;
  --text-sm--line-height: calc(1.25 / 0.875);
  --text-base: 1rem;
  --text-base--line-height: calc(1.5 / 1);
  --text-lg: 1.125rem;
  --text-lg--line-height: calc(1.75 / 1.125);
  --text-xl: 1.25rem;
  --text-xl--line-height: calc(1.75 / 1.25);
  --text-3xl: 1.875rem;
  --text-3xl--line-height: calc(2.25 / 1.875);
  --text-4xl: 2.25rem;
  --text-4xl--line-height: calc(2.5 / 2.25);
  --text-5xl: 3rem;
  --text-5xl--line-height: 1;
  --text-6xl: 3.75rem;
  --text-6xl--line-height: 1;
  --font-weight-semibold: 600;
  --font-weight-bold: 700;
  --font-weight-extrabold: 800;
  --tracking-tight: -0.025em;
  --tracking-wider: 0.05em;
  --leading-snug: 1.375;
  --leading-relaxed: 1.625;
  --radius-2xl: 1rem;
  --animate-pulse: pulse 2s cubic-bezier(0.4, 0, 0.6, 1) infinite;
  --default-transition-duration: 150ms;
  --default-transition-timing-function: cubic-bezier(0.4, 0, 0.2, 1);
  --color-ink-950: #0e0e10;
  --color-ink-900: #141518;
  --color-ink-700: #26282d;
  --color-line: #2a2c31;
  --color-mist: #9aa0a8;
  --color-offwhite: #f4f4f5;
  --font-display: "Archivo", ui-sans-serif, system-ui, sans-serif;
}
@property --tw-pan-x {
  syntax: "*";
  inherits: false;
}
@property --tw-pan-y {
  syntax: "*";
  inherits: false;
}
@property --tw-pinch-zoom {
  syntax: "*";
  inherits: false;
}
@property --tw-space-y-reverse {
  syntax: "*";
  inherits: false;
  initial-value: 0;
}
@property --tw-border-style {
  syntax: "*";
  inherits: false;
  initial-value: solid;
}
@property --tw-leading {
  syntax: "*";
  inherits: false;
}
@property --tw-font-weight {
  syntax: "*";
  inherits: false;
}
@property --tw-tracking {
  syntax: "*";
  inherits: false;
}
@property --tw-shadow {
  syntax: "*";
  inherits: false;
  initial-value: 0 0 #0000;
}
@property --tw-shadow-color {
  syntax: "*";
  inherits: false;
}
@property --tw-shadow-alpha {
  syntax: "<percentage>";
  inherits: false;
  initial-value: 100%;
}
@property --tw-inset-shadow {
  syntax: "*";
  inherits: false;
  initial-value: 0 0 #0000;
}
@property --tw-inset-shadow-color {
  syntax: "*";
  inherits: false;
}
@property --tw-inset-shadow-alpha {
  syntax: "<percentage>";
  inherits: false;
  initial-value: 100%;
}
@property --tw-ring-color {
  syntax: "*";
  inherits: false;
}
@property --tw-ring-shadow {
  syntax: "*";
  inherits: false;
  initial-value: 0 0 #0000;
}
@property --tw-inset-ring-color {
  syntax: "*";
  inherits: false;
}
@property --tw-inset-ring-shadow {
  syntax: "*";
  inherits: false;
  initial-value: 0 0 #0000;
}
@property --tw-ring-inset {
  syntax: "*";
  inherits: false;
}
@property --tw-ring-offset-width {
  syntax: "<length>";
  inherits: false;
  initial-value: 0px;
}
@property --tw-ring-offset-color {
  syntax: "*";
  inherits: false;
  initial-value: #fff;
}
@property --tw-ring-offset-shadow {
  syntax: "*";
  inherits: false;
  initial-value: 0 0 #0000;
}
@property --tw-backdrop-blur {
  syntax: "*";
  inherits: false;
}
@property --tw-backdrop-brightness {
  syntax: "*";
  inherits: false;
}
@property --tw-backdrop-contrast {
  syntax: "*";
  inherits: false;
}
@property --tw-backdrop-grayscale {
  syntax: "*";
  inherits: false;
}
@property --tw-backdrop-hue-rotate {
  syntax: "*";
  inherits: false;
}
@property --tw-backdrop-invert {
  syntax: "*";
  inherits: false;
}
@property --tw-backdrop-opacity {
  syntax: "*";
  inherits: false;
}
@property --tw-backdrop-saturate {
  syntax: "*";
  inherits: false;
}
@property --tw-backdrop-sepia {
  syntax: "*";
  inherits: false;
}
@property --tw-translate-x {
  syntax: "*";
  inherits: false;
  initial-value: 0;
}
@property --tw-translate-y {
  syntax: "*";
  inherits: false;
  initial-value: 0;
}
@property --tw-translate-z {
  syntax: "*";
  inherits: false;
  initial-value: 0;
}
@property --tw-outline-style {
  syntax: "*";
  inherits: false;
  initial-value: solid;
}
@keyframes pulse {
  50% {
    opacity: 0.5;
  }
}
@supports ((-webkit-hyphens: none) and (not (margin-trim: inline))) or ((-moz-orient: inline) and (not (color:rgb(from red r g b)))) {
    *, ::before, ::after, ::backdrop {
      --tw-pan-x: initial;
      --tw-pan-y: initial;
      --tw-pinch-zoom: initial;
      --tw-space-y-reverse: 0;
      --tw-border-style: solid;
      --tw-leading: initial;
      --tw-font-weight: initial;
      --tw-tracking: initial;
      --tw-shadow: 0 0 #0000;
      --tw-shadow-color: initial;
      --tw-shadow-alpha: 100%;
      --tw-inset-shadow: 0 0 #0000;
      --tw-inset-shadow-color: initial;
      --tw-inset-shadow-alpha: 100%;
      --tw-ring-color: initial;
      --tw-ring-shadow: 0 0 #0000;
      --tw-inset-ring-color: initial;
      --tw-inset-ring-shadow: 0 0 #0000;
      --tw-ring-inset: initial;
      --tw-ring-offset-width: 0px;
      --tw-ring-offset-color: #fff;
      --tw-ring-offset-shadow: 0 0 #0000;
      --tw-backdrop-blur: initial;
      --tw-backdrop-brightness: initial;
      --tw-backdrop-contrast: initial;
      --tw-backdrop-grayscale: initial;
      --tw-backdrop-hue-rotate: initial;
      --tw-backdrop-invert: initial;
      --tw-backdrop-opacity: initial;
      --tw-backdrop-saturate: initial;
      --tw-backdrop-sepia: initial;
      --tw-translate-x: 0;
      --tw-translate-y: 0;
      --tw-translate-z: 0;
      --tw-outline-style: solid;
    }
  }

/* Scoped base: a tiny reset that applies only inside the hub, so Zox styles elsewhere are untouched. */
.aime-hub { float: left; clear: both; width: 100%; background: #0e0e10; color: #f4f4f5;
  font-family: var(--font-body); line-height: 1.5; -webkit-font-smoothing: antialiased; }
.aime-hub *, .aime-hub ::before, .aime-hub ::after { box-sizing: border-box; border: 0 solid; margin: 0; padding: 0; }
.aime-hub h1, .aime-hub h2, .aime-hub h3, .aime-hub p { font: inherit; color: inherit; letter-spacing: inherit; text-transform: inherit; }
.aime-hub ul, .aime-hub li { list-style: none; }
.aime-hub button { background: none; color: inherit; font: inherit; letter-spacing: inherit; text-transform: inherit; cursor: pointer; border-radius: 0; }
.aime-hub a, .aime-hub a:visited, .aime-hub a:hover { color: inherit; text-decoration: none; }
.aime-hub img, .aime-hub svg, .aime-hub canvas { display: block; max-width: 100%; }
.aime-hub img { height: auto; }
.aime-hub [hidden] { display: none !important; }

.aime-hub {
.pointer-events-none {
  pointer-events: none;
}
.visible {
  visibility: visible;
}
.absolute {
  position: absolute;
}
.relative {
  position: relative;
}
.sticky {
  position: sticky;
}
.inset-x-0 {
  inset-inline: 0px;
}
.top-0 {
  top: 0px;
}
.top-1 {
  top: var(--spacing);
}
.top-3 {
  top: calc(var(--spacing) * 3);
}
.top-4 {
  top: calc(var(--spacing) * 4);
}
.right-1 {
  right: var(--spacing);
}
.bottom-2 {
  bottom: calc(var(--spacing) * 2);
}
.left-0 {
  left: 0px;
}
.left-3 {
  left: calc(var(--spacing) * 3);
}
.left-4 {
  left: calc(var(--spacing) * 4);
}
.z-10 {
  z-index: 10;
}
.z-20 {
  z-index: 20;
}
.order-1 {
  order: 1;
}
.order-2 {
  order: 2;
}
.-mx-4 {
  margin-inline: calc(var(--spacing) * -4);
}
.mx-auto {
  margin-inline: auto;
}
.mt-1\.5 {
  margin-top: calc(var(--spacing) * 1.5);
}
.mt-2 {
  margin-top: calc(var(--spacing) * 2);
}
.mt-4 {
  margin-top: calc(var(--spacing) * 4);
}
.mt-5 {
  margin-top: calc(var(--spacing) * 5);
}
.mt-6 {
  margin-top: calc(var(--spacing) * 6);
}
.mt-8 {
  margin-top: calc(var(--spacing) * 8);
}
.mt-10 {
  margin-top: calc(var(--spacing) * 10);
}
.mt-auto {
  margin-top: auto;
}
.mb-3 {
  margin-bottom: calc(var(--spacing) * 3);
}
.mb-5 {
  margin-bottom: calc(var(--spacing) * 5);
}
.line-clamp-3 {
  overflow: hidden;
  display: -webkit-box;
  -webkit-box-orient: vertical;
  -webkit-line-clamp: 3;
}
.block {
  display: block;
}
.flex {
  display: flex;
}
.grid {
  display: grid;
}
.hidden {
  display: none;
}
.inline {
  display: inline;
}
.inline-flex {
  display: inline-flex;
}
.aspect-\[16\/10\] {
  aspect-ratio: 16/10;
}
.aspect-square {
  aspect-ratio: 1 / 1;
}
.h-1\.5 {
  height: calc(var(--spacing) * 1.5);
}
.h-2\.5 {
  height: calc(var(--spacing) * 2.5);
}
.h-3 {
  height: calc(var(--spacing) * 3);
}
.h-4 {
  height: calc(var(--spacing) * 4);
}
.h-5 {
  height: calc(var(--spacing) * 5);
}
.h-8 {
  height: calc(var(--spacing) * 8);
}
.h-11 {
  height: calc(var(--spacing) * 11);
}
.h-full {
  height: 100%;
}
.min-h-11 {
  min-height: calc(var(--spacing) * 11);
}
.w-1\.5 {
  width: calc(var(--spacing) * 1.5);
}
.w-1\/3 {
  width: calc(1 / 3 * 100%);
}
.w-2\.5 {
  width: calc(var(--spacing) * 2.5);
}
.w-3\/4 {
  width: calc(3 / 4 * 100%);
}
.w-4 {
  width: calc(var(--spacing) * 4);
}
.w-5\/6 {
  width: calc(5 / 6 * 100%);
}
.w-8 {
  width: calc(var(--spacing) * 8);
}
.w-11 {
  width: calc(var(--spacing) * 11);
}
.w-\[290px\] {
  width: 290px;
}
.w-full {
  width: 100%;
}
.max-w-7xl {
  max-width: var(--container-7xl);
}
.max-w-\[640px\] {
  max-width: 640px;
}
.max-w-xl {
  max-width: var(--container-xl);
}
.min-w-0 {
  min-width: 0px;
}
.flex-1 {
  flex: 1;
}
.shrink-0 {
  flex-shrink: 0;
}
.animate-pulse {
  animation: var(--animate-pulse);
}
.cursor-grab {
  cursor: grab;
}
.touch-pan-y {
  --tw-pan-y: pan-y;
  touch-action: var(--tw-pan-x,) var(--tw-pan-y,) var(--tw-pinch-zoom,);
}
.scroll-mt-20 {
  scroll-margin-top: calc(var(--spacing) * 20);
}
.list-none {
  list-style-type: none;
}
.grid-cols-1 {
  grid-template-columns: repeat(1, minmax(0, 1fr));
}
.flex-col {
  flex-direction: column;
}
.flex-wrap {
  flex-wrap: wrap;
}
.place-items-center {
  place-items: center;
}
.items-center {
  align-items: center;
}
.justify-between {
  justify-content: space-between;
}
.gap-2 {
  gap: calc(var(--spacing) * 2);
}
.gap-3 {
  gap: calc(var(--spacing) * 3);
}
.gap-6 {
  gap: calc(var(--spacing) * 6);
}
.gap-10 {
  gap: calc(var(--spacing) * 10);
}
:where(.space-y-3 > :not(:last-child)) {
  --tw-space-y-reverse: 0;
  margin-block-start: calc(calc(var(--spacing) * 3) * var(--tw-space-y-reverse));
  margin-block-end: calc(calc(var(--spacing) * 3) * calc(1 - var(--tw-space-y-reverse)));
}
.truncate {
  overflow: hidden;
  text-overflow: ellipsis;
  white-space: nowrap;
}
.overflow-hidden {
  overflow: hidden;
}
.overflow-x-auto {
  overflow-x: auto;
}
.rounded {
  border-radius: 0.25rem;
}
.rounded-2xl {
  border-radius: var(--radius-2xl);
}
.rounded-full {
  border-radius: calc(infinity * 1px);
}
.border {
  border-style: var(--tw-border-style);
  border-width: 1px;
}
.border-t {
  border-top-style: var(--tw-border-style);
  border-top-width: 1px;
}
.border-dashed {
  --tw-border-style: dashed;
  border-style: dashed;
}
.border-line {
  border-color: var(--color-line);
}
.bg-ink-700 {
  background-color: var(--color-ink-700);
}
.bg-ink-900 {
  background-color: var(--color-ink-900);
}
.bg-ink-900\/60 {
  background-color: color-mix(in srgb, #141518 60%, transparent);
  @supports (color: color-mix(in lab, red, red)) {
    background-color: color-mix(in oklab, var(--color-ink-900) 60%, transparent);
  }
}
.bg-ink-900\/80 {
  background-color: color-mix(in srgb, #141518 80%, transparent);
  @supports (color: color-mix(in lab, red, red)) {
    background-color: color-mix(in oklab, var(--color-ink-900) 80%, transparent);
  }
}
.bg-ink-900\/95 {
  background-color: color-mix(in srgb, #141518 95%, transparent);
  @supports (color: color-mix(in lab, red, red)) {
    background-color: color-mix(in oklab, var(--color-ink-900) 95%, transparent);
  }
}
.bg-ink-950\/70 {
  background-color: color-mix(in srgb, #0e0e10 70%, transparent);
  @supports (color: color-mix(in lab, red, red)) {
    background-color: color-mix(in oklab, var(--color-ink-950) 70%, transparent);
  }
}
.bg-offwhite {
  background-color: var(--color-offwhite);
}
.object-cover {
  object-fit: cover;
}
.p-4 {
  padding: calc(var(--spacing) * 4);
}
.p-5 {
  padding: calc(var(--spacing) * 5);
}
.p-10 {
  padding: calc(var(--spacing) * 10);
}
.px-2\.5 {
  padding-inline: calc(var(--spacing) * 2.5);
}
.px-3 {
  padding-inline: calc(var(--spacing) * 3);
}
.px-4 {
  padding-inline: calc(var(--spacing) * 4);
}
.py-1 {
  padding-block: var(--spacing);
}
.py-14 {
  padding-block: calc(var(--spacing) * 14);
}
.pt-3 {
  padding-top: calc(var(--spacing) * 3);
}
.pt-5 {
  padding-top: calc(var(--spacing) * 5);
}
.pb-1 {
  padding-bottom: var(--spacing);
}
.text-center {
  text-align: center;
}
.font-display {
  font-family: var(--font-display);
}
.font-serif {
  font-family: var(--font-serif);
}
.text-3xl {
  font-size: var(--text-3xl);
  line-height: var(--tw-leading, var(--text-3xl--line-height));
}
.text-4xl {
  font-size: var(--text-4xl);
  line-height: var(--tw-leading, var(--text-4xl--line-height));
}
.text-base {
  font-size: var(--text-base);
  line-height: var(--tw-leading, var(--text-base--line-height));
}
.text-lg {
  font-size: var(--text-lg);
  line-height: var(--tw-leading, var(--text-lg--line-height));
}
.text-sm {
  font-size: var(--text-sm);
  line-height: var(--tw-leading, var(--text-sm--line-height));
}
.text-xl {
  font-size: var(--text-xl);
  line-height: var(--tw-leading, var(--text-xl--line-height));
}
.text-xs {
  font-size: var(--text-xs);
  line-height: var(--tw-leading, var(--text-xs--line-height));
}
.text-\[11px\] {
  font-size: 11px;
}
.leading-\[0\.95\] {
  --tw-leading: 0.95;
  line-height: 0.95;
}
.leading-relaxed {
  --tw-leading: var(--leading-relaxed);
  line-height: var(--leading-relaxed);
}
.leading-snug {
  --tw-leading: var(--leading-snug);
  line-height: var(--leading-snug);
}
.font-bold {
  --tw-font-weight: var(--font-weight-bold);
  font-weight: var(--font-weight-bold);
}
.font-extrabold {
  --tw-font-weight: var(--font-weight-extrabold);
  font-weight: var(--font-weight-extrabold);
}
.font-semibold {
  --tw-font-weight: var(--font-weight-semibold);
  font-weight: var(--font-weight-semibold);
}
.tracking-\[0\.24em\] {
  --tw-tracking: 0.24em;
  letter-spacing: 0.24em;
}
.tracking-tight {
  --tw-tracking: var(--tracking-tight);
  letter-spacing: var(--tracking-tight);
}
.tracking-wider {
  --tw-tracking: var(--tracking-wider);
  letter-spacing: var(--tracking-wider);
}
.text-ink-950 {
  color: var(--color-ink-950);
}
.text-mist {
  color: var(--color-mist);
}
.text-offwhite {
  color: var(--color-offwhite);
}
.text-transparent {
  color: transparent;
}
.uppercase {
  text-transform: uppercase;
}
.no-underline {
  text-decoration-line: none;
}
.shadow-2xl {
  --tw-shadow: 0 25px 50px -12px var(--tw-shadow-color, rgb(0 0 0 / 0.25));
  box-shadow: var(--tw-inset-shadow), var(--tw-inset-ring-shadow), var(--tw-ring-offset-shadow), var(--tw-ring-shadow), var(--tw-shadow);
}
.ring {
  --tw-ring-shadow: var(--tw-ring-inset,) 0 0 0 calc(1px + var(--tw-ring-offset-width)) var(--tw-ring-color, currentcolor);
  box-shadow: var(--tw-inset-shadow), var(--tw-inset-ring-shadow), var(--tw-ring-offset-shadow), var(--tw-ring-shadow), var(--tw-shadow);
}
.shadow-black\/60 {
  --tw-shadow-color: color-mix(in srgb, #000 60%, transparent);
  @supports (color: color-mix(in lab, red, red)) {
    --tw-shadow-color: color-mix(in oklab, color-mix(in oklab, var(--color-black) 60%, transparent) var(--tw-shadow-alpha), transparent);
  }
}
.backdrop-blur {
  --tw-backdrop-blur: blur(8px);
  -webkit-backdrop-filter: var(--tw-backdrop-blur,) var(--tw-backdrop-brightness,) var(--tw-backdrop-contrast,) var(--tw-backdrop-grayscale,) var(--tw-backdrop-hue-rotate,) var(--tw-backdrop-invert,) var(--tw-backdrop-opacity,) var(--tw-backdrop-saturate,) var(--tw-backdrop-sepia,);
  backdrop-filter: var(--tw-backdrop-blur,) var(--tw-backdrop-brightness,) var(--tw-backdrop-contrast,) var(--tw-backdrop-grayscale,) var(--tw-backdrop-hue-rotate,) var(--tw-backdrop-invert,) var(--tw-backdrop-opacity,) var(--tw-backdrop-saturate,) var(--tw-backdrop-sepia,);
}
.transition {
  transition-property: color, background-color, border-color, outline-color, text-decoration-color, fill, stroke, --tw-gradient-from, --tw-gradient-via, --tw-gradient-to, opacity, box-shadow, transform, translate, scale, rotate, filter, -webkit-backdrop-filter, backdrop-filter, display, content-visibility, overlay, pointer-events;
  transition-timing-function: var(--tw-ease, var(--default-transition-timing-function));
  transition-duration: var(--tw-duration, var(--default-transition-duration));
}
.select-none {
  -webkit-user-select: none;
  user-select: none;
}
.\[-webkit-text-stroke\:2px_\#f4f4f5\] {
  -webkit-text-stroke: 2px #f4f4f5;
}
@media (hover: hover) {
  .hover\:-translate-y-1:hover {
    --tw-translate-y: calc(var(--spacing) * -1);
    translate: var(--tw-translate-x) var(--tw-translate-y);
  }
  .hover\:border-offwhite:hover {
    border-color: var(--color-offwhite);
  }
  .hover\:border-offwhite\/60:hover {
    border-color: color-mix(in srgb, #f4f4f5 60%, transparent);
  }
  @supports (color: color-mix(in lab, red, red)) {
    .hover\:border-offwhite\/60:hover {
      border-color: color-mix(in oklab, var(--color-offwhite) 60%, transparent);
    }
  }
  .hover\:bg-ink-950:hover {
    background-color: var(--color-ink-950);
  }
  .hover\:bg-offwhite:hover {
    background-color: var(--color-offwhite);
  }
  .hover\:text-ink-950:hover {
    color: var(--color-ink-950);
  }
  .hover\:text-offwhite:hover {
    color: var(--color-offwhite);
  }
  .hover\:shadow-xl:hover {
    --tw-shadow: 0 20px 25px -5px var(--tw-shadow-color, rgb(0 0 0 / 0.1)), 0 8px 10px -6px var(--tw-shadow-color, rgb(0 0 0 / 0.1));
    box-shadow: var(--tw-inset-shadow), var(--tw-inset-ring-shadow), var(--tw-ring-offset-shadow), var(--tw-ring-shadow), var(--tw-shadow);
  }
  .hover\:shadow-black\/50:hover {
    --tw-shadow-color: color-mix(in srgb, #000 50%, transparent);
  }
  @supports (color: color-mix(in lab, red, red)) {
    .hover\:shadow-black\/50:hover {
      --tw-shadow-color: color-mix(in oklab, color-mix(in oklab, var(--color-black) 50%, transparent) var(--tw-shadow-alpha), transparent);
    }
  }
}
.focus-visible\:outline-2:focus-visible {
  outline-style: var(--tw-outline-style);
  outline-width: 2px;
}
.focus-visible\:outline-offset-4:focus-visible {
  outline-offset: 4px;
}
.focus-visible\:outline-offwhite:focus-visible {
  outline-color: var(--color-offwhite);
}
.active\:cursor-grabbing:active {
  cursor: grabbing;
}
.aria-pressed\:border-offwhite[aria-pressed="true"] {
  border-color: var(--color-offwhite);
}
.aria-pressed\:bg-offwhite[aria-pressed="true"] {
  background-color: var(--color-offwhite);
}
.aria-pressed\:text-ink-950[aria-pressed="true"] {
  color: var(--color-ink-950);
}
@media (width >= 40rem) {
  .sm\:grid-cols-2 {
    grid-template-columns: repeat(2, minmax(0, 1fr));
  }
  .sm\:px-6 {
    padding-inline: calc(var(--spacing) * 6);
  }
  .sm\:text-4xl {
    font-size: var(--text-4xl);
    line-height: var(--tw-leading, var(--text-4xl--line-height));
  }
  .sm\:text-5xl {
    font-size: var(--text-5xl);
    line-height: var(--tw-leading, var(--text-5xl--line-height));
  }
  .sm\:text-xl {
    font-size: var(--text-xl);
    line-height: var(--tw-leading, var(--text-xl--line-height));
  }
}
@media (width >= 48rem) {
  .md\:mx-0 {
    margin-inline: 0px;
  }
  .md\:flex-row {
    flex-direction: row;
  }
  .md\:flex-wrap {
    flex-wrap: wrap;
  }
  .md\:items-end {
    align-items: flex-end;
  }
  .md\:justify-between {
    justify-content: space-between;
  }
  .md\:overflow-visible {
    overflow: visible;
  }
  .md\:px-0 {
    padding-inline: 0px;
  }
}
@media (width >= 64rem) {
  .lg\:order-1 {
    order: 1;
  }
  .lg\:order-2 {
    order: 2;
  }
  .lg\:grid-cols-3 {
    grid-template-columns: repeat(3, minmax(0, 1fr));
  }
  .lg\:grid-cols-\[minmax\(0\,5fr\)_minmax\(0\,7fr\)\] {
    grid-template-columns: minmax(0,5fr) minmax(0,7fr);
  }
  .lg\:py-20 {
    padding-block: calc(var(--spacing) * 20);
  }
}
@media (width >= 80rem) {
  .xl\:text-6xl {
    font-size: var(--text-6xl);
    line-height: var(--tw-leading, var(--text-6xl--line-height));
  }
}
}

/* AIME 360 Global Hub: the few styles utilities don't cover. Everything is scoped to .aime-hub. */

.aime-hub .aime-hub-backdrop {
  background:
    radial-gradient(1100px 600px at 75% 40%, rgba(255, 255, 255, 0.06), transparent 60%),
    radial-gradient(700px 500px at 8% 95%, rgba(255, 255, 255, 0.04), transparent 60%);
}

/* Floating pin card */
.aime-hub .pin-card { transition: opacity .2s ease, transform .2s ease; }
.aime-hub .pin-card[data-state="closed"] { opacity: 0; transform: translateY(6px) scale(.98); pointer-events: none; }
.aime-hub .pin-card[data-state="open"] { opacity: 1; transform: none; }

/* Small screens: the card docks to the bottom of the globe as a compact row */
.aime-hub .pin-card.is-docked { left: 10px !important; right: 10px; bottom: 10px; top: auto !important; width: auto;
  display: grid; grid-template-columns: 108px minmax(0, 1fr); }
.aime-hub .pin-card.is-docked [data-card-media] { aspect-ratio: auto; height: 100%; min-height: 136px; }
.aime-hub .pin-card.is-docked [data-card-pill] { left: 8px; top: 8px; padding: 2px 8px; font-size: 10px; }
.aime-hub .pin-card.is-docked [data-card-body] { padding: 12px 44px 12px 14px; }
.aime-hub .pin-card.is-docked [data-card-title] { font-size: 15px; display: -webkit-box; -webkit-line-clamp: 2; -webkit-box-orient: vertical; overflow: hidden; }
.aime-hub .pin-card.is-docked [data-card-link] { margin-top: 8px; padding: 0 12px; }
.aime-hub .pin-card.is-docked [data-card-close] { background: transparent; }

/* Story images: zoom on hover, colour wash if an image fails to load */
.aime-hub .story-media img { transition: transform .6s cubic-bezier(.2, .7, .2, 1); }
.aime-hub .group:hover .story-media img,
.aime-hub .group:focus-visible .story-media img { transform: scale(1.06); }
.aime-hub .img-failed img { display: none; }

/* Skeleton shimmer */
.aime-hub .skeleton { background: linear-gradient(90deg, #141518 0%, #26282d 50%, #141518 100%); background-size: 200% 100%; animation: aimeHubShimmer 1.4s linear infinite; }
@keyframes aimeHubShimmer { to { background-position: -200% 0; } }

@media (prefers-reduced-motion: reduce) {
  .aime-hub .skeleton { animation: none; }
  .aime-hub .story-media img, .aime-hub .pin-card { transition: none; }
}
