:root {
  --gx-shadow: 0 24px 70px rgba(16, 47, 53, .12);
  --gx-radius: 24px;
}

html { scroll-behavior: smooth; }
body { margin: 0; }
.wp-site-blocks { overflow: hidden; }
.gx-site-header {
  position: sticky;
  top: 0;
  z-index: 30;
  border-bottom: 1px solid rgba(93, 116, 120, .2);
  backdrop-filter: blur(16px);
}
.admin-bar .gx-site-header { top: 32px; }
.gx-brand-row { min-height: 72px; }
.gx-brand-row .wp-block-site-title { letter-spacing: -.03em; }
.gx-top-note { letter-spacing: .02em; }
.gx-hero {
  position: relative;
  isolation: isolate;
}
.gx-hero::after {
  content: "";
  position: absolute;
  inset: 8% -10% auto auto;
  width: min(48vw, 620px);
  aspect-ratio: 1;
  border-radius: 42% 58% 55% 45%;
  background: radial-gradient(circle at 70% 25%, #ffd086 0 8%, transparent 9%), linear-gradient(145deg, #85bbb4 0 38%, #1f555c 39% 61%, #dfc19b 62%);
  opacity: .98;
  z-index: -1;
  box-shadow: var(--gx-shadow);
  transform: rotate(3deg);
}
.gx-kicker { letter-spacing: .12em; text-transform: uppercase; font-weight: 800; }
.gx-hero-title { max-width: 760px; text-wrap: balance; }
.gx-hero-title mark { color: var(--wp--preset--color--accent); background: transparent; }
.gx-hero-copy { max-width: 620px; }
.gx-trust-row { gap: .55rem !important; }
.gx-trust-row > * {
  border: 1px solid rgba(93, 116, 120, .24);
  border-radius: 999px;
  padding: .42rem .72rem;
  background: var(--wp--preset--color--surface);
}
.gx-search-panel {
  border: 1px solid rgba(93, 116, 120, .2);
  border-radius: 28px;
  box-shadow: var(--gx-shadow);
}
.gx-search-panel .gth { margin: 0; }
.gx-search-panel .gth__shell { box-shadow: none; border: 0; }
.gx-hub-fallback { padding: clamp(1.5rem, 4vw, 2.6rem); }
.gx-hub-fallback__eyebrow {
  margin: 0 0 .35rem;
  color: var(--wp--preset--color--primary);
  font-size: .78rem;
  font-weight: 800;
  letter-spacing: .12em;
  text-transform: uppercase;
}
.gx-hub-fallback h2 { margin: 0; font-size: clamp(1.7rem, 3.5vw, 2.5rem); }
.gx-hub-fallback > p:last-child { margin-bottom: 0; color: var(--wp--preset--color--muted); }
.gx-hub-fallback__options { display: flex; flex-wrap: wrap; gap: .65rem; margin: 1.35rem 0 1rem; }
.gx-hub-fallback__options span {
  padding: .65rem 1rem;
  border-radius: 999px;
  background: var(--wp--preset--color--soft);
  color: var(--wp--preset--color--primary);
  font-weight: 750;
}
.gx-destination-card {
  min-height: 240px;
  border-radius: var(--gx-radius);
  overflow: hidden;
  border: 1px solid rgba(93, 116, 120, .2);
  transition: transform .2s ease, box-shadow .2s ease;
}
.gx-destination-card:hover { transform: translateY(-5px); box-shadow: var(--gx-shadow); }
.gx-destination-card:nth-child(1) { background: linear-gradient(155deg, #d9a4aa, #6a8c80 56%, #f3e7d5); }
.gx-destination-card:nth-child(2) { background: linear-gradient(155deg, #d9ad74, #527875 56%, #f0dfc2); }
.gx-destination-card:nth-child(3) { background: linear-gradient(155deg, #bb7356, #3e7474 56%, #eacb9c); }
.gx-destination-card:nth-child(4) { background: linear-gradient(155deg, #8ca8b8, #d39a68 56%, #35646a); }
.gx-destination-card > .wp-block-group { margin-top: 128px; background: rgba(255, 253, 248, .93); }
.gx-toolband { margin-top: var(--wp--preset--spacing--80); }
.gx-tool-card { border: 1px solid rgba(255,255,255,.2); border-radius: 20px; min-height: 132px; }
.gx-query-card {
  height: 100%;
  border: 1px solid rgba(93, 116, 120, .2);
  border-radius: var(--gx-radius);
  overflow: hidden;
  background: var(--wp--preset--color--surface);
}
.gx-query-card .wp-block-post-title,
.gx-query-card .wp-block-post-excerpt,
.gx-query-card .wp-block-post-date { padding-inline: 1.2rem; }
.gx-query-card .wp-block-post-excerpt { padding-bottom: 1.2rem; }
.gx-footer { border-top: 1px solid rgba(93, 116, 120, .2); }
.gx-article-shell { background: var(--wp--preset--color--surface); border-radius: 28px; box-shadow: var(--gx-shadow); }

@media (max-width: 782px) {
  .admin-bar .gx-site-header { top: 46px; }
  .gx-hero::after { inset: 42% -25% auto auto; width: 82vw; opacity: .25; }
  .gx-hero { padding-top: 3rem !important; padding-bottom: 3rem !important; }
  .gx-brand-row { min-height: 64px; }
}

@media (prefers-reduced-motion: reduce) {
  html { scroll-behavior: auto; }
  .gx-destination-card { transition: none; }
}
