/* ─────────────────────────────────────────────────────────────
   GUTENBERG BLOCKS
───────────────────────────────────────────────────────────── */

/* Buttons — filled is default; ghost via .is-style-outline */
.wp-block-button__link,
.wp-element-button {
  font-family: var(--f-display) !important;
  font-size: 0.72rem !important;
  font-weight: 700 !important;
  letter-spacing: 0.18em !important;
  text-transform: uppercase !important;
  padding: 0.85em 2.2em !important;
  min-height: 44px !important;
  border-radius: var(--r-sm) !important;
  border: 1px solid var(--cyan) !important;
  background: var(--cyan) !important;
  color: var(--bg-0) !important;
  cursor: pointer !important;
  transition: background-color var(--ease-base),
              color var(--ease-base),
              box-shadow var(--ease-base),
              border-color var(--ease-base) !important;
  text-decoration: none !important;
  display: inline-flex !important;
  align-items: center !important;
}

.wp-block-button__link:hover,
.wp-element-button:hover {
  background: #009ab5 !important;
  border-color: #009ab5 !important;
  color: #fff !important;
  box-shadow: var(--glow-cyan) !important;
}

/* Ghost / outline — opt-in */
.is-style-outline .wp-block-button__link,
.wp-block-button.is-style-outline .wp-block-button__link {
  background: transparent !important;
  color: var(--cyan) !important;
  border: 1px solid var(--cyan) !important;
}

.is-style-outline .wp-block-button__link:hover {
  background: var(--cyan) !important;
  color: var(--bg-0) !important;
  box-shadow: var(--glow-cyan) !important;
}

/* Disabled */
.wp-block-button__link:disabled,
.wp-block-button__link[aria-disabled="true"] {
  opacity: 0.4 !important;
  cursor: not-allowed !important;
  pointer-events: none !important;
}

/* Cover */
.wp-block-cover {
  border-radius: var(--r-lg);
  overflow: hidden;
  border: 1px solid var(--border-soft);
  margin: var(--s6) 0;
}

/* Group */
.wp-block-group.has-background {
  background: var(--bg-2) !important;
  border: 1px solid var(--border-dim);
  border-radius: var(--r-lg);
  padding: var(--s6) !important;
}

/* Media & text — images never crop */
.wp-block-media-text img {
  width: auto;
  max-width: 100%;
  height: auto;
  object-fit: contain;
  border-radius: var(--r-md);
}

/* Tags */
.wp-block-tag-cloud a,
.tag-cloud-link {
  font-family: var(--f-display) !important;
  font-size: 0.68rem !important;
  letter-spacing: 0.12em;
  text-transform: uppercase;
  border: 1px solid var(--border-soft);
  padding: 0.3em 0.85em;
  border-radius: var(--r-sm);
  color: var(--text-mid);
  text-decoration: none;
  transition: color var(--ease-fast),
              border-color var(--ease-fast),
              text-shadow var(--ease-fast);
  display: inline-block;
  margin: 0.18em;
}

.wp-block-tag-cloud a:hover {
  color: var(--cyan);
  border-color: var(--cyan);
  text-shadow: var(--glow-cyan);
}

/* Search */
.wp-block-search__input {
  background: var(--bg-2) !important;
  border: 1px solid var(--border-soft) !important;
  color: var(--text-hi) !important;
  font-family: var(--f-body) !important;
  border-radius: var(--r-sm) !important;
  padding: 0.65em 1em !important;
}

.wp-block-search__input:focus {
  outline: none !important;
  border-color: var(--cyan) !important;
  box-shadow: var(--glow-cyan) !important;
}

.wp-block-search__button {
  font-family: var(--f-display) !important;
  font-size: 0.68rem !important;
  letter-spacing: 0.12em !important;
  text-transform: uppercase !important;
  background: transparent !important;
  border: 1px solid var(--cyan) !important;
  color: var(--cyan) !important;
  border-radius: var(--r-sm) !important;
  cursor: pointer !important;
  transition: background-color var(--ease-fast),
              color var(--ease-fast) !important;
  padding: 0.65em 1.2em !important;
}

.wp-block-search__button:hover {
  background: var(--cyan) !important;
  color: var(--bg-0) !important;
}
