/**
 * Yimi Bridge Website V2 Design System foundation.
 * Status: CANDIDATE IMPLEMENTATION SOURCE — Goal 4.5.1.1 Header extension.
 * Authority: docs/DESIGN_SYSTEM.md.
 * Scope: repo-local tokens, responsive primitives, shared components, and
 * Hero / Contact / News reusable structures, and the shared Header component.
 * Local Staging activation is controlled by yimi-v2-css-loader.php.
 */

:root {
  /* Semantic colors */
  --yimi-color-navy: #0C3357;
  --yimi-color-navy-deep: #092F57;
  --yimi-color-navy-hover: #062744;

  --yimi-color-orange: #C56818;
  --yimi-color-action: #B85C00;
  --yimi-color-action-hover: #A94F00;

  --yimi-color-red: #E31B16;

  --yimi-color-text-primary: #0C3357;
  --yimi-color-text-secondary: #465466;
  --yimi-color-text-muted: #687485;
  --yimi-color-text-inverse: #FFFFFF;

  --yimi-color-page: #FFFFFF;
  --yimi-color-surface: #FFFFFF;
  --yimi-color-surface-soft: #FCFAFA;
  --yimi-color-surface-warm: #FAF5F1;

  --yimi-color-border: #F0DFD3;
  --yimi-color-divider: rgba(12, 51, 87, 0.14);
  --yimi-color-divider-inverse: rgba(255, 255, 255, 0.28);

  --yimi-color-focus: #E31B16;

  /* Typography families */
  --yimi-font-display: Georgia, "Times New Roman", "Noto Serif SC", "Songti SC", STSong, serif;
  --yimi-font-body: system-ui, -apple-system, BlinkMacSystemFont, "Segoe UI", "Microsoft YaHei", "PingFang SC", Arial, sans-serif;

  /* Display typography */
  --yimi-type-display-size: clamp(2.5rem, 1.75rem + 2.5vw, 4.5rem);
  --yimi-type-display-weight: 400;
  --yimi-type-display-line-height: 1.06;
  --yimi-type-display-letter-spacing: -0.02em;

  /* H1 typography */
  --yimi-type-h1-size: clamp(2.25rem, 1.75rem + 1.5vw, 3.5rem);
  --yimi-type-h1-weight: 400;
  --yimi-type-h1-line-height: 1.10;
  --yimi-type-h1-letter-spacing: -0.015em;

  /* H2 typography */
  --yimi-type-h2-size: clamp(1.75rem, 1.5rem + 1vw, 2.5rem);
  --yimi-type-h2-weight: 400;
  --yimi-type-h2-line-height: 1.16;
  --yimi-type-h2-letter-spacing: -0.01em;

  /* H3 typography */
  --yimi-type-h3-size: clamp(1.25rem, 1.1rem + 0.45vw, 1.5rem);
  --yimi-type-h3-weight: 600;
  --yimi-type-h3-line-height: 1.28;
  --yimi-type-h3-letter-spacing: 0;

  /* Eyebrow typography */
  --yimi-type-eyebrow-size: 0.875rem;
  --yimi-type-eyebrow-weight: 700;
  --yimi-type-eyebrow-line-height: 1.25;
  --yimi-type-eyebrow-letter-spacing: 0.16em;

  /* Lead typography */
  --yimi-type-lead-size: clamp(1.0625rem, 1rem + 0.25vw, 1.25rem);
  --yimi-type-lead-weight: 400;
  --yimi-type-lead-line-height: 1.60;
  --yimi-type-lead-letter-spacing: 0;

  /* Body typography */
  --yimi-type-body-size: 1rem;
  --yimi-type-body-weight: 400;
  --yimi-type-body-line-height: 1.65;
  --yimi-type-body-letter-spacing: 0;

  /* Small typography */
  --yimi-type-small-size: 0.875rem;
  --yimi-type-small-weight: 400;
  --yimi-type-small-line-height: 1.50;
  --yimi-type-small-letter-spacing: 0;

  /* Control typography */
  --yimi-type-control-size: 1rem;
  --yimi-type-control-weight: 600;
  --yimi-type-control-line-height: 1.25;
  --yimi-type-control-letter-spacing: 0;

  /* Label typography */
  --yimi-type-label-size: 0.9375rem;
  --yimi-type-label-weight: 600;
  --yimi-type-label-line-height: 1.40;
  --yimi-type-label-letter-spacing: 0;

  /* Spacing scale */
  --yimi-space-1: 0.25rem;
  --yimi-space-2: 0.5rem;
  --yimi-space-3: 0.75rem;
  --yimi-space-4: 1rem;
  --yimi-space-5: 1.5rem;
  --yimi-space-6: 2rem;
  --yimi-space-7: 3rem;
  --yimi-space-8: 4rem;
  --yimi-space-9: 6rem;
  --yimi-space-10: 8rem;

  /* Shared spacing rhythm */
  --yimi-section-padding: clamp(4rem, 7vw, 7rem);
  --yimi-section-padding-compact: clamp(3rem, 5vw, 5rem);
  --yimi-card-padding: clamp(1.5rem, 2.2vw, 2rem);

  /* Geometry */
  --yimi-radius-sm: 0.5rem;
  --yimi-radius-md: 0.75rem;
  --yimi-radius-lg: 1rem;
  --yimi-radius-pill: 999px;

  --yimi-border-thin: 1px solid var(--yimi-color-border);
  --yimi-border-strong: 2px solid var(--yimi-color-orange);

  --yimi-shadow-card: 0 8px 24px rgba(12, 51, 87, 0.07);
  --yimi-shadow-shell: 0 12px 32px rgba(12, 51, 87, 0.08);
  --yimi-focus-ring: 0 0 0 3px rgba(227, 27, 22, 0.28);

  /* Layout and containers */
  --yimi-container-content: 75rem;
  --yimi-container-wide: 82.5rem;
  --yimi-container-reading: 47.5rem;

  --yimi-page-gutter: clamp(1.25rem, 4vw, 4rem);
  --yimi-grid-gap: clamp(1rem, 2vw, 2rem);
  --yimi-header-height: clamp(4.5rem, 6vw, 6rem);
}

/* Layout primitives */
.yimi-container,
.yimi-container--wide,
.yimi-container--reading {
  max-width: 100%;
  margin-inline: auto;
}

.yimi-container {
  width: min(
    var(--yimi-container-content),
    calc(100% - (var(--yimi-page-gutter) * 2))
  );
}

.yimi-container--wide {
  width: min(
    var(--yimi-container-wide),
    calc(100% - (var(--yimi-page-gutter) * 2))
  );
}

.yimi-container--reading {
  width: min(
    var(--yimi-container-reading),
    calc(100% - (var(--yimi-page-gutter) * 2))
  );
}

.yimi-section {
  padding-block: var(--yimi-section-padding);
}

.yimi-section--compact {
  padding-block: var(--yimi-section-padding-compact);
}

.yimi-section--warm {
  background-color: var(--yimi-color-surface-warm);
}

.yimi-stack {
  display: flex;
  flex-direction: column;
  gap: var(--yimi-stack-gap, var(--yimi-space-5));
  min-width: 0;
  overflow-wrap: anywhere;
}

.yimi-split {
  display: grid;
  grid-template-columns: minmax(0, 1fr) minmax(0, 1fr);
  gap: var(--yimi-grid-gap);
  min-width: 0;
}

.yimi-split > * {
  min-width: 0;
  max-width: 100%;
  overflow-wrap: anywhere;
}

.yimi-grid {
  display: grid;
  grid-template-columns: repeat(
    var(--yimi-grid-columns, 1),
    minmax(0, 1fr)
  );
  gap: var(--yimi-grid-gap);
  min-width: 0;
}

.yimi-grid > * {
  min-width: 0;
  max-width: 100%;
}

.yimi-grid--cards {
  --yimi-grid-columns: 4;
}

.yimi-grid--five {
  --yimi-grid-columns: 5;
}

.yimi-grid--trust {
  --yimi-grid-columns: 3;
}

/* Media primitives */
.yimi-media-frame,
.yimi-media-frame--hero {
  width: 100%;
  max-width: 100%;
  overflow: hidden;
}

.yimi-media-frame > img {
  display: block;
  max-width: 100%;
  height: auto;
}

.yimi-media-frame--hero {
  aspect-ratio: 3 / 2;
}

.yimi-media-frame--hero > img {
  display: block;
  width: 100%;
  max-width: 100%;
  height: 100%;
  object-fit: cover;
  object-position: var(--yimi-media-focal-x, 50%) var(--yimi-media-focal-y, 50%);
}

.yimi-media-natural {
  display: block;
  max-width: 100%;
  height: auto;
}

/* Shared components */
.yimi-section-heading {
  display: flex;
  flex-direction: column;
  align-items: flex-start;
  max-width: var(--yimi-container-reading);
  min-width: 0;
  overflow-wrap: anywhere;
}

.yimi-section-heading--center {
  align-items: center;
  margin-inline: auto;
  text-align: center;
}

.yimi-section-heading__eyebrow,
.yimi-section-heading__title,
.yimi-section-heading__intro {
  margin: 0;
}

.yimi-section-heading__eyebrow {
  color: var(--yimi-color-red);
  font-family: var(--yimi-font-body);
  font-size: var(--yimi-type-eyebrow-size);
  font-weight: var(--yimi-type-eyebrow-weight);
  line-height: var(--yimi-type-eyebrow-line-height);
  letter-spacing: var(--yimi-type-eyebrow-letter-spacing);
}

.yimi-section-heading__title {
  color: var(--yimi-color-text-primary);
  font-family: var(--yimi-font-display);
  font-size: var(--yimi-type-h2-size);
  font-weight: var(--yimi-type-h2-weight);
  line-height: var(--yimi-type-h2-line-height);
  letter-spacing: var(--yimi-type-h2-letter-spacing);
}

.yimi-section-heading__eyebrow + .yimi-section-heading__title {
  margin-block-start: var(--yimi-space-3);
}

.yimi-section-heading__intro {
  color: var(--yimi-color-text-secondary);
  font-family: var(--yimi-font-body);
  font-size: var(--yimi-type-lead-size);
  font-weight: var(--yimi-type-lead-weight);
  line-height: var(--yimi-type-lead-line-height);
  letter-spacing: var(--yimi-type-lead-letter-spacing);
}

.yimi-section-heading__title + .yimi-section-heading__intro {
  margin-block-start: var(--yimi-space-4);
}

.yimi-button {
  min-width: 0;
  max-width: 100%;
}

.yimi-button > .wp-block-button__link {
  display: inline-flex;
  align-items: center;
  justify-content: center;
  box-sizing: border-box;
  width: 100%;
  min-height: 3rem;
  max-width: 100%;
  padding: 0.75rem 1.5rem;
  border: 2px solid transparent;
  border-radius: var(--yimi-radius-sm);
  font-family: var(--yimi-font-body);
  font-size: var(--yimi-type-control-size);
  font-weight: var(--yimi-type-control-weight);
  line-height: var(--yimi-type-control-line-height);
  letter-spacing: var(--yimi-type-control-letter-spacing);
  text-align: center;
  text-decoration: none;
  white-space: normal;
  overflow-wrap: anywhere;
  cursor: pointer;
  transition:
    color 160ms ease,
    background-color 160ms ease,
    border-color 160ms ease,
    opacity 160ms ease;
}

.yimi-button--primary > .wp-block-button__link {
  color: var(--yimi-color-text-inverse);
  background-color: var(--yimi-color-action);
  border-color: var(--yimi-color-action);
}

.yimi-button--primary:not([aria-disabled="true"]) > .wp-block-button__link:hover:not(:disabled):not([aria-disabled="true"]) {
  background-color: var(--yimi-color-action-hover);
  border-color: var(--yimi-color-action-hover);
}

.yimi-button--primary:not([aria-disabled="true"]) > .wp-block-button__link:active:not(:disabled):not([aria-disabled="true"]) {
  background-color: var(--yimi-color-action-hover);
  border-color: var(--yimi-color-action-hover);
  opacity: 0.9;
}

.yimi-button--secondary > .wp-block-button__link {
  color: var(--yimi-color-text-primary);
  background-color: transparent;
  border-color: var(--yimi-color-orange);
}

.yimi-button--secondary:not([aria-disabled="true"]) > .wp-block-button__link:hover:not(:disabled):not([aria-disabled="true"]),
.yimi-button--secondary:not([aria-disabled="true"]) > .wp-block-button__link:active:not(:disabled):not([aria-disabled="true"]) {
  background-color: var(--yimi-color-surface-warm);
  border-color: var(--yimi-color-action-hover);
}

.yimi-button--secondary:not([aria-disabled="true"]) > .wp-block-button__link:active:not(:disabled):not([aria-disabled="true"]) {
  opacity: 0.9;
}

.yimi-button > .wp-block-button__link:focus-visible {
  outline: 3px solid var(--yimi-color-focus);
  outline-offset: 3px;
  box-shadow: var(--yimi-focus-ring);
}

.yimi-button > .wp-block-button__link:disabled,
.yimi-button > .wp-block-button__link[aria-disabled="true"],
.yimi-button[aria-disabled="true"] > .wp-block-button__link {
  opacity: 0.55;
  cursor: not-allowed;
}

.yimi-card {
  display: flex;
  flex-direction: column;
  min-width: 0;
  padding: var(--yimi-card-padding);
  color: var(--yimi-color-text-secondary);
  background-color: var(--yimi-color-surface);
  border: var(--yimi-border-thin);
  border-radius: var(--yimi-radius-lg);
  overflow-wrap: anywhere;
}

.yimi-card--value {
  background-color: var(--yimi-color-surface-soft);
}

.yimi-card--trust {
  background-color: var(--yimi-color-surface-warm);
  border-radius: var(--yimi-radius-md);
}

.yimi-card__icon {
  display: inline-grid;
  place-items: center;
  inline-size: clamp(2.5rem, 3vw, 3.5rem);
  block-size: clamp(2.5rem, 3vw, 3.5rem);
  margin-block-end: var(--yimi-space-5);
  color: var(--yimi-color-orange);
  background-color: var(--yimi-color-surface-warm);
  border-radius: var(--yimi-radius-md);
  flex: 0 0 auto;
}

.yimi-card__title,
.yimi-card__body {
  margin: 0;
}

.yimi-card__title {
  color: var(--yimi-color-text-primary);
  font-family: var(--yimi-font-display);
  font-size: var(--yimi-type-h3-size);
  font-weight: var(--yimi-type-h3-weight);
  line-height: var(--yimi-type-h3-line-height);
  letter-spacing: var(--yimi-type-h3-letter-spacing);
}

.yimi-card__body {
  margin-block-start: var(--yimi-space-4);
  font-family: var(--yimi-font-body);
  font-size: var(--yimi-type-body-size);
  font-weight: var(--yimi-type-body-weight);
  line-height: var(--yimi-type-body-line-height);
  letter-spacing: var(--yimi-type-body-letter-spacing);
}

.yimi-trust-strip {
  min-width: 0;
  padding: var(--yimi-card-padding);
  background-color: var(--yimi-color-surface-soft);
  border: var(--yimi-border-thin);
  border-radius: var(--yimi-radius-lg);
}

.yimi-trust-strip--home {
  padding: var(--yimi-space-4);
  background-color: transparent;
  border: 0;
  border-radius: 0;
}

.yimi-trust-strip--home .yimi-grid {
  gap: var(--yimi-space-5) var(--yimi-grid-gap);
}

.yimi-trust-strip--home .yimi-card--trust {
  display: grid;
  grid-template-columns: auto minmax(0, 1fr);
  grid-template-rows: auto auto;
  column-gap: var(--yimi-space-4);
  row-gap: var(--yimi-space-2);
  align-content: start;
  align-items: start;
  margin: 0;
  padding: 0;
  background-color: transparent;
  border: 0;
  border-radius: 0;
}

.yimi-trust-strip--home .yimi-card__icon {
  grid-column: 1;
  grid-row: 1 / span 2;
  inline-size: var(--yimi-space-7);
  block-size: var(--yimi-space-7);
  margin-block-end: 0;
  background-color: transparent;
  border-radius: 0;
}

.yimi-trust-strip--home .yimi-card__title,
.yimi-trust-strip--home .yimi-card__body {
  grid-column: 2;
  margin: 0;
}

.yimi-trust-strip--home .yimi-card__title {
  font-size: var(--yimi-type-control-size);
  font-weight: var(--yimi-type-control-weight);
  line-height: var(--yimi-type-control-line-height);
  letter-spacing: var(--yimi-type-control-letter-spacing);
}

.yimi-trust-strip--home .yimi-card__body {
  font-size: var(--yimi-type-small-size);
  line-height: var(--yimi-type-small-line-height);
}

.yimi-cta {
  padding-block: clamp(3rem, 5vw, 4.5rem);
  color: var(--yimi-color-text-inverse);
  background-color: var(--yimi-color-navy-deep);
}

.yimi-cta__inner {
  display: grid;
  grid-template-columns: minmax(0, 1fr) auto;
  align-items: center;
  gap: var(--yimi-space-7);
  min-width: 0;
}

.yimi-cta__content {
  min-width: 0;
  overflow-wrap: anywhere;
}

.yimi-cta__title,
.yimi-cta__support {
  margin: 0;
}

.yimi-cta__title {
  color: var(--yimi-color-text-inverse);
  font-family: var(--yimi-font-display);
  font-size: var(--yimi-type-h2-size);
  font-weight: var(--yimi-type-h2-weight);
  line-height: var(--yimi-type-h2-line-height);
  letter-spacing: var(--yimi-type-h2-letter-spacing);
}

.yimi-cta__support {
  max-width: 42.5rem;
  margin-block-start: var(--yimi-space-4);
  color: var(--yimi-color-text-inverse);
  font-family: var(--yimi-font-body);
  font-size: var(--yimi-type-lead-size);
  font-weight: var(--yimi-type-lead-weight);
  line-height: var(--yimi-type-lead-line-height);
  letter-spacing: var(--yimi-type-lead-letter-spacing);
}

.yimi-cta__actions {
  display: flex;
  flex-wrap: wrap;
  gap: var(--yimi-space-3);
  align-items: center;
}

/* Hero components */
.yimi-hero {
  --yimi-hero-text-track: 48fr;
  --yimi-hero-media-track: 52fr;
  --yimi-hero-title-size: var(--yimi-type-h1-size);
  --yimi-hero-title-line-height: var(--yimi-type-h1-line-height);
  --yimi-hero-title-letter-spacing: var(--yimi-type-h1-letter-spacing);
  padding-block: clamp(3rem, 6vw, 6rem);
}

.yimi-hero--editorial {
  --yimi-hero-text-track: 43fr;
  --yimi-hero-media-track: 57fr;
}

.yimi-hero__inner {
  display: grid;
  grid-template-columns:
    minmax(0, var(--yimi-hero-text-track))
    minmax(0, var(--yimi-hero-media-track));
  align-items: center;
  gap: var(--yimi-space-6);
  min-width: 0;
}

.yimi-hero__content {
  box-sizing: border-box;
  max-width: 38.75rem;
  min-width: 0;
  padding-inline-end: clamp(2rem, 5vw, 5rem);
  overflow-wrap: anywhere;
}

.yimi-hero__eyebrow,
.yimi-hero__title,
.yimi-hero__lead {
  margin: 0;
}

.yimi-hero__eyebrow {
  color: var(--yimi-color-orange);
  font-family: var(--yimi-font-body);
  font-size: var(--yimi-type-eyebrow-size);
  font-weight: var(--yimi-type-eyebrow-weight);
  line-height: var(--yimi-type-eyebrow-line-height);
  letter-spacing: var(--yimi-type-eyebrow-letter-spacing);
}

.yimi-hero__title {
  color: var(--yimi-color-text-primary);
  font-family: var(--yimi-font-display);
  font-size: var(--yimi-hero-title-size);
  font-weight: var(--yimi-type-h1-weight);
  line-height: var(--yimi-hero-title-line-height);
  letter-spacing: var(--yimi-hero-title-letter-spacing);
}

.yimi-hero__eyebrow + .yimi-hero__title {
  margin-block-start: var(--yimi-space-3);
}

.yimi-hero__rule {
  width: 3rem;
  height: 0.1875rem;
  margin-block: var(--yimi-space-5);
  background-color: var(--yimi-color-red);
}

.yimi-hero__lead {
  color: var(--yimi-color-text-secondary);
  font-family: var(--yimi-font-body);
  font-size: var(--yimi-type-lead-size);
  font-weight: var(--yimi-type-lead-weight);
  line-height: var(--yimi-type-lead-line-height);
  letter-spacing: var(--yimi-type-lead-letter-spacing);
}

.yimi-hero__actions {
  display: flex;
  flex-wrap: wrap;
  align-items: center;
  gap: var(--yimi-space-3);
  margin-block-start: var(--yimi-space-6);
}

.yimi-hero__media {
  min-width: 0;
  max-width: 100%;
}

.yimi-hero__highlights {
  display: flex;
  flex-wrap: wrap;
  align-items: center;
  gap: var(--yimi-space-2) var(--yimi-space-4);
  margin-block-start: var(--yimi-space-5);
  min-width: 0;
  overflow-wrap: anywhere;
}

/* Limited variants derived from Founder-locked page targets */
.yimi-section--dense {
  padding-block: var(--yimi-space-6);
}

.yimi-section--boundary {
  padding-block: var(--yimi-space-4);
}

.yimi-hero--edge-media,
.yimi-section--dense,
.yimi-section--boundary {
  margin-block-end: 0;
}

.single-content .yimi-hero--edge-media,
.single-content .yimi-section--dense,
.single-content .yimi-section--boundary,
.single-content .yimi-card--compact {
  margin-bottom: 0;
}

.yimi-section--dense > .wp-block-group__inner-container > .yimi-container,
.yimi-section--boundary > .wp-block-group__inner-container > .yimi-container,
.yimi-cta--compact .yimi-cta__inner {
  width: min(
    var(--yimi-container-wide),
    calc(100% - (var(--yimi-page-gutter) * 2))
  );
}

.yimi-hero--edge-media {
  padding-block: 0;
}

.yimi-hero--edge-media .yimi-hero__inner {
  width: calc(100% - var(--yimi-page-gutter));
  max-width: none;
  min-height: 36rem;
  margin-inline: var(--yimi-page-gutter) 0;
  gap: 0;
  align-items: stretch;
}

.yimi-hero--edge-media .yimi-hero__content {
  display: flex;
  flex-direction: column;
  justify-content: center;
  padding-block: var(--yimi-space-7);
  padding-inline-end: var(--yimi-space-8);
}

.yimi-hero--edge-media .yimi-hero__media {
  align-self: stretch;
  min-height: 36rem;
  aspect-ratio: auto;
  border-radius: 0;
}

.yimi-hero--edge-media .yimi-hero__media img {
  height: 100%;
  object-fit: cover;
}

.yimi-card--icon-led {
  align-items: center;
  text-align: center;
}

.yimi-card--compact {
  padding: var(--yimi-space-4);
  margin-block-end: 0;
}

.yimi-card--compact .yimi-card__icon {
  margin-block-end: var(--yimi-space-3);
  background-color: transparent;
  border-radius: 0;
}

.yimi-card--compact .yimi-card__icon svg,
.yimi-boundary__icon svg {
  display: block;
  width: 100%;
  height: 100%;
  fill: currentColor;
}

.yimi-card--compact .yimi-card__body {
  margin-block-start: var(--yimi-space-2);
}

.yimi-section--dense .yimi-section-heading {
  margin-block-end: 0;
}

.yimi-card--audience {
  padding-block: 0;
  padding-inline: var(--yimi-space-5);
  background-color: transparent;
  border: 0;
  border-radius: 0;
}

.yimi-audience .yimi-card--audience:not(:first-child) {
  border-inline-start: 1px solid var(--yimi-color-border);
}

.yimi-boundary--strip {
  display: grid;
  grid-template-columns: auto minmax(0, 1fr);
  align-items: center;
  gap: var(--yimi-space-4);
  padding: var(--yimi-space-4) var(--yimi-space-5);
  background-color: var(--yimi-color-surface-warm);
  border-radius: var(--yimi-radius-md);
}

.yimi-boundary--strip p {
  margin: 0;
}

.yimi-boundary__icon {
  display: inline-grid;
  place-items: center;
  inline-size: var(--yimi-space-6);
  block-size: var(--yimi-space-6);
  color: var(--yimi-color-orange);
}

.yimi-cta--compact {
  padding-block: var(--yimi-space-5);
}

/* Contact components */
.yimi-contact-paths {
  display: grid;
  grid-template-columns: repeat(2, minmax(0, 1fr));
  gap: var(--yimi-grid-gap);
  min-width: 0;
}

.yimi-contact-paths > * {
  min-width: 0;
  max-width: 100%;
}

.yimi-inquiry-card {
  align-items: flex-start;
}

.yimi-inquiry-card__icon {
  flex: 0 0 auto;
}

.yimi-inquiry-card__title,
.yimi-inquiry-card__body,
.yimi-inquiry-card__action {
  max-width: 100%;
}

.yimi-inquiry-card__body {
  flex-grow: 1;
}

.yimi-inquiry-card__action {
  margin-block-start: auto;
  padding-block-start: var(--yimi-space-5);
}

.yimi-tabs {
  display: grid;
  grid-template-columns: repeat(2, minmax(0, 1fr));
  gap: var(--yimi-space-2);
  min-width: 0;
}

.yimi-tab {
  width: 100%;
  min-width: 0;
  max-width: 100%;
}

.yimi-tab > .wp-block-button__link {
  display: inline-flex;
  align-items: center;
  justify-content: center;
  box-sizing: border-box;
  width: 100%;
  min-height: 3rem;
  max-width: 100%;
  padding: var(--yimi-space-3) var(--yimi-space-4);
  color: var(--yimi-color-text-primary);
  background-color: var(--yimi-color-surface-soft);
  border: var(--yimi-border-thin);
  border-radius: var(--yimi-radius-sm);
  font-family: var(--yimi-font-body);
  font-size: var(--yimi-type-control-size);
  font-weight: var(--yimi-type-control-weight);
  line-height: var(--yimi-type-control-line-height);
  letter-spacing: var(--yimi-type-control-letter-spacing);
  text-align: center;
  text-decoration: none;
  white-space: normal;
  overflow-wrap: anywhere;
  cursor: pointer;
}

.yimi-tab > .wp-block-button__link:hover {
  color: var(--yimi-color-action-hover);
  background-color: var(--yimi-color-surface-warm);
  border-color: var(--yimi-color-orange);
}

.yimi-tab[aria-selected="true"] > .wp-block-button__link,
.yimi-tab > .wp-block-button__link[aria-selected="true"],
.yimi-tab.yimi-tab--selected > .wp-block-button__link {
  color: var(--yimi-color-red);
  background-color: var(--yimi-color-surface);
  border-color: var(--yimi-color-orange);
  box-shadow: inset 0 -3px 0 var(--yimi-color-red);
}

.yimi-tab > .wp-block-button__link:focus-visible {
  outline: 3px solid var(--yimi-color-focus);
  outline-offset: 3px;
  box-shadow: var(--yimi-focus-ring);
}

.yimi-tab[aria-selected="true"] > .wp-block-button__link:focus-visible,
.yimi-tab > .wp-block-button__link[aria-selected="true"]:focus-visible {
  box-shadow:
    inset 0 -3px 0 var(--yimi-color-red),
    var(--yimi-focus-ring);
}

.yimi-form-shell {
  min-width: 0;
  padding: clamp(1.5rem, 4vw, 3rem);
  background-color: var(--yimi-color-surface);
  border: var(--yimi-border-thin);
  border-radius: var(--yimi-radius-lg);
  box-shadow: var(--yimi-shadow-shell);
}

.yimi-form-panel--inactive {
  display: none;
}

.yimi-form-grid {
  display: grid;
  grid-template-columns: repeat(2, minmax(0, 1fr));
  gap: var(--yimi-space-5);
  min-width: 0;
}

.yimi-field {
  display: flex;
  flex-direction: column;
  align-items: stretch;
  gap: var(--yimi-space-2);
  min-width: 0;
}

.yimi-field--full {
  grid-column: 1 / -1;
}

.yimi-field__label {
  color: var(--yimi-color-text-primary);
  font-family: var(--yimi-font-body);
  font-size: var(--yimi-type-label-size);
  font-weight: var(--yimi-type-label-weight);
  line-height: var(--yimi-type-label-line-height);
  letter-spacing: var(--yimi-type-label-letter-spacing);
  overflow-wrap: anywhere;
}

.yimi-field__helper {
  color: var(--yimi-color-text-muted);
  font-family: var(--yimi-font-body);
  font-size: var(--yimi-type-small-size);
  font-weight: var(--yimi-type-small-weight);
  line-height: var(--yimi-type-small-line-height);
  letter-spacing: var(--yimi-type-small-letter-spacing);
  overflow-wrap: anywhere;
}

.yimi-field__required {
  color: var(--yimi-color-red);
}

.yimi-field__control {
  box-sizing: border-box;
  width: 100%;
  max-width: 100%;
  min-height: 3rem;
  padding: 0.75rem 1rem;
  color: var(--yimi-color-text-primary);
  background-color: var(--yimi-color-surface);
  border: var(--yimi-border-thin);
  border-radius: var(--yimi-radius-sm);
  font-family: var(--yimi-font-body);
  font-size: var(--yimi-type-body-size);
  font-weight: var(--yimi-type-body-weight);
  line-height: var(--yimi-type-body-line-height);
  letter-spacing: var(--yimi-type-body-letter-spacing);
}

.yimi-field__control::placeholder {
  color: var(--yimi-color-text-muted);
  opacity: 1;
}

textarea.yimi-field__control {
  min-height: 8.75rem;
  resize: vertical;
}

.yimi-field__control:focus-visible {
  border-color: var(--yimi-color-navy);
  outline: 2px solid var(--yimi-color-navy);
  outline-offset: 0;
  box-shadow: var(--yimi-focus-ring);
}

.yimi-field__control[aria-invalid="true"] {
  border-color: var(--yimi-color-red);
}

.yimi-field__choice {
  display: flex;
  align-items: center;
  gap: var(--yimi-space-3);
  min-height: 2.75rem;
  max-width: 100%;
  overflow-wrap: anywhere;
}

/* Contact wide-screen material alignment */
body:has(.yimi-contact-paths) .yimi-hero {
  padding-block: var(--yimi-space-6);
}

body:has(.yimi-contact-paths) .yimi-hero .yimi-media-frame--hero {
  aspect-ratio: 16 / 9;
}

body:has(.yimi-contact-paths) .yimi-section:has(.yimi-contact-paths) {
  padding-block: var(--yimi-space-8);
}

body:has(.yimi-contact-paths) .yimi-contact-paths .yimi-inquiry-card {
  padding: var(--yimi-space-5);
}

body:has(.yimi-contact-paths) .yimi-contact-paths .yimi-inquiry-card__action {
  padding-block-start: var(--yimi-space-4);
}

body:has(.yimi-contact-paths) .yimi-contact-paths .yimi-inquiry-card__action .wp-block-button__link {
  color: var(--yimi-color-text-inverse);
  background-color: var(--yimi-color-action);
  border-color: var(--yimi-color-action);
}

body:has(.yimi-contact-paths) .yimi-contact-paths .yimi-inquiry-card__action .wp-block-button__link:hover {
  color: var(--yimi-color-text-inverse);
  background-color: var(--yimi-color-action-hover);
  border-color: var(--yimi-color-action-hover);
}

body:has(.yimi-contact-paths) .yimi-form-shell {
  padding: clamp(1.5rem, 3vw, 2rem);
}

body:has(.yimi-contact-paths) .yimi-form-shell .frm-fluent-form > fieldset {
  display: grid;
  grid-template-columns: repeat(2, minmax(0, 1fr));
  gap: var(--yimi-space-5) var(--yimi-space-5);
  min-width: 0;
}

body:has(.yimi-contact-paths) .yimi-form-shell .frm-fluent-form > fieldset > .ff-el-group {
  min-width: 0;
  margin-block-end: 0;
}

body:has(.yimi-contact-paths) .yimi-form-shell .frm-fluent-form > fieldset > .ff-el-group:has(.ff-el-form-check),
body:has(.yimi-contact-paths) .yimi-form-shell .frm-fluent-form > fieldset > .ff-el-group:has(textarea),
body:has(.yimi-contact-paths) .yimi-form-shell .frm-fluent-form > fieldset > .ff-custom_html,
body:has(.yimi-contact-paths) .yimi-form-shell .frm-fluent-form > fieldset > .ff_submit_btn_wrapper {
  grid-column: 1 / -1;
}

body:has(.yimi-contact-paths) .yimi-form-shell .ff-el-group:has(.ff-el-form-check + .ff-el-form-check) > .ff-el-input--content {
  display: grid;
  grid-template-columns: repeat(2, minmax(0, 1fr));
  gap: var(--yimi-space-2) var(--yimi-space-5);
}

body:has(.yimi-contact-paths) .yimi-form-shell .ff-el-group:has(textarea) textarea {
  min-height: 8.75rem;
}

body:has(.yimi-contact-paths) .yimi-form-shell .ff_submit_btn_wrapper .ff-btn-submit {
  width: 100%;
  min-height: 3rem;
  padding: var(--yimi-space-3) var(--yimi-space-5);
  color: var(--yimi-color-text-inverse);
  background-color: var(--yimi-color-action);
  border-color: var(--yimi-color-action);
  border-radius: var(--yimi-radius-sm);
  font-family: var(--yimi-font-body);
  font-size: var(--yimi-type-control-size);
  font-weight: var(--yimi-type-control-weight);
  line-height: var(--yimi-type-control-line-height);
}

body:has(.yimi-contact-paths) .yimi-form-shell .ff_submit_btn_wrapper .ff-btn-submit:hover {
  background-color: var(--yimi-color-action-hover);
  border-color: var(--yimi-color-action-hover);
}

body:has(.yimi-contact-paths) .yimi-form-shell .ff_submit_btn_wrapper .ff-btn-submit:focus-visible {
  outline: 3px solid var(--yimi-color-focus);
  outline-offset: 3px;
  box-shadow: var(--yimi-focus-ring);
}

body:has(.yimi-contact-paths) .yimi-trust-strip {
  padding: var(--yimi-space-3) var(--yimi-space-4);
}

body:has(.yimi-contact-paths) .yimi-trust-strip .yimi-grid--trust {
  gap: 0;
}

body:has(.yimi-contact-paths) .yimi-trust-strip .yimi-card--trust {
  min-height: 0;
  padding: var(--yimi-space-2) var(--yimi-space-5);
  background-color: transparent;
  border: 0;
  border-radius: 0;
  box-shadow: none;
}

body:has(.yimi-contact-paths) .yimi-trust-strip .yimi-card--trust + .yimi-card--trust {
  border-inline-start: var(--yimi-border-thin);
}

/* News components */
.yimi-news-categories {
  display: flex;
  flex-wrap: wrap;
  align-items: center;
  gap: var(--yimi-space-2);
  min-width: 0;
}

.yimi-news-chip {
  min-width: 0;
  max-width: 100%;
}

.yimi-news-chip > .wp-block-button__link {
  display: inline-flex;
  align-items: center;
  justify-content: center;
  box-sizing: border-box;
  width: 100%;
  min-height: 2.75rem;
  max-width: 100%;
  padding: 0.625rem 1.25rem;
  color: var(--yimi-color-text-primary);
  background-color: var(--yimi-color-surface);
  border: var(--yimi-border-thin);
  border-radius: var(--yimi-radius-sm);
  font-family: var(--yimi-font-body);
  font-size: var(--yimi-type-control-size);
  font-weight: var(--yimi-type-control-weight);
  line-height: var(--yimi-type-control-line-height);
  letter-spacing: var(--yimi-type-control-letter-spacing);
  text-align: center;
  text-decoration: none;
  white-space: normal;
  overflow-wrap: anywhere;
}

.yimi-news-chip > .wp-block-button__link:hover {
  color: var(--yimi-color-action-hover);
  background-color: var(--yimi-color-surface-warm);
  border-color: var(--yimi-color-orange);
}

.yimi-news-chip[aria-current="page"] > .wp-block-button__link,
.yimi-news-chip > .wp-block-button__link[aria-current="page"] {
  color: var(--yimi-color-text-inverse);
  background-color: var(--yimi-color-action);
  border-color: var(--yimi-color-action);
  box-shadow: inset 0 -3px 0 var(--yimi-color-text-inverse);
}

.yimi-news-chip > .wp-block-button__link:focus-visible {
  outline: 3px solid var(--yimi-color-focus);
  outline-offset: 3px;
  box-shadow: var(--yimi-focus-ring);
}

.yimi-news-chip[aria-current="page"] > .wp-block-button__link:focus-visible,
.yimi-news-chip > .wp-block-button__link[aria-current="page"]:focus-visible {
  box-shadow:
    inset 0 -3px 0 var(--yimi-color-text-inverse),
    var(--yimi-focus-ring);
}

.yimi-featured-post {
  display: grid;
  grid-template-columns: minmax(0, 42fr) minmax(0, 58fr);
  min-width: 0;
  background-color: var(--yimi-color-surface);
  border: var(--yimi-border-thin);
  border-radius: var(--yimi-radius-lg);
  box-shadow: var(--yimi-shadow-card);
}

.yimi-media-frame.yimi-featured-post__media,
.yimi-media-frame.yimi-post-card__media {
  aspect-ratio: 16 / 10;
  border-radius: var(--yimi-radius-lg) 0 0 var(--yimi-radius-lg);
}

.yimi-media-frame.yimi-featured-post__media > img,
.yimi-media-frame.yimi-post-card__media > img {
  display: block;
  width: 100%;
  max-width: 100%;
  height: 100%;
  object-fit: cover;
  object-position: var(--yimi-media-focal-x, 50%) var(--yimi-media-focal-y, 50%);
}

.yimi-featured-post__content,
.yimi-post-card__content {
  display: flex;
  flex-direction: column;
  align-items: flex-start;
  min-width: 0;
  padding: var(--yimi-card-padding);
  overflow-wrap: anywhere;
}

.yimi-featured-post__category,
.yimi-featured-post__title,
.yimi-featured-post__excerpt,
.yimi-featured-post__meta,
.yimi-post-card__category,
.yimi-post-card__title,
.yimi-post-card__excerpt,
.yimi-post-card__meta {
  margin: 0;
}

.yimi-featured-post__category,
.yimi-post-card__category {
  color: var(--yimi-color-orange);
  font-family: var(--yimi-font-body);
  font-size: var(--yimi-type-eyebrow-size);
  font-weight: var(--yimi-type-eyebrow-weight);
  line-height: var(--yimi-type-eyebrow-line-height);
  letter-spacing: var(--yimi-type-eyebrow-letter-spacing);
}

.yimi-featured-post__title {
  margin-block-start: var(--yimi-space-3);
  color: var(--yimi-color-text-primary);
  font-family: var(--yimi-font-display);
  font-size: var(--yimi-type-h2-size);
  font-weight: var(--yimi-type-h2-weight);
  line-height: var(--yimi-type-h2-line-height);
  letter-spacing: var(--yimi-type-h2-letter-spacing);
}

.yimi-post-card__title {
  margin-block-start: var(--yimi-space-3);
  color: var(--yimi-color-text-primary);
  font-family: var(--yimi-font-display);
  font-size: var(--yimi-type-h3-size);
  font-weight: var(--yimi-type-h3-weight);
  line-height: var(--yimi-type-h3-line-height);
  letter-spacing: var(--yimi-type-h3-letter-spacing);
}

.yimi-featured-post__excerpt,
.yimi-post-card__excerpt {
  margin-block-start: var(--yimi-space-4);
  color: var(--yimi-color-text-secondary);
  font-family: var(--yimi-font-body);
  font-size: var(--yimi-type-body-size);
  font-weight: var(--yimi-type-body-weight);
  line-height: var(--yimi-type-body-line-height);
  letter-spacing: var(--yimi-type-body-letter-spacing);
}

.yimi-featured-post__meta,
.yimi-post-card__meta {
  display: flex;
  flex-wrap: wrap;
  gap: var(--yimi-space-2) var(--yimi-space-4);
  margin-block-start: var(--yimi-space-4);
  color: var(--yimi-color-text-muted);
  font-family: var(--yimi-font-body);
  font-size: var(--yimi-type-small-size);
  font-weight: var(--yimi-type-small-weight);
  line-height: var(--yimi-type-small-line-height);
  letter-spacing: var(--yimi-type-small-letter-spacing);
}

.yimi-featured-post__link,
.yimi-post-card__link {
  display: inline-flex;
  align-items: center;
  min-height: 2.75rem;
  margin-block-start: auto;
  padding-block-start: var(--yimi-space-4);
  color: var(--yimi-color-navy);
  font-family: var(--yimi-font-body);
  font-size: var(--yimi-type-control-size);
  font-weight: var(--yimi-type-control-weight);
  line-height: var(--yimi-type-control-line-height);
  letter-spacing: var(--yimi-type-control-letter-spacing);
  text-decoration: underline;
  text-decoration-thickness: 0.125rem;
  text-underline-offset: 0.25rem;
}

.yimi-featured-post__link:hover,
.yimi-post-card__link:hover {
  color: var(--yimi-color-action-hover);
}

.yimi-featured-post__link:focus-visible,
.yimi-post-card__link:focus-visible {
  outline: 3px solid var(--yimi-color-focus);
  outline-offset: 3px;
  box-shadow: var(--yimi-focus-ring);
}

.yimi-post-card {
  display: grid;
  grid-template-columns: minmax(12rem, 0.75fr) minmax(0, 1.25fr);
  min-width: 0;
  background-color: var(--yimi-color-surface);
  border: var(--yimi-border-thin);
  border-radius: var(--yimi-radius-lg);
}

/* News landing and native archive integration */
.single-content .yimi-news-landing {
  margin-block-end: 0;
}

.yimi-news-landing .yimi-news-hero__media > img {
  object-position: 55% 60%;
}

.yimi-news-highlights-wrap {
  background-color: var(--yimi-color-surface-warm);
  border-block: var(--yimi-border-thin);
}

.yimi-news-highlights {
  display: grid;
  grid-template-columns: repeat(4, minmax(0, 1fr));
  gap: 0;
  min-width: 0;
}

.yimi-news-highlights > .wp-block-group__inner-container {
  display: contents;
}

.yimi-news-highlight {
  min-width: 0;
  margin: 0;
  padding: var(--yimi-space-4) var(--yimi-space-3);
  color: var(--yimi-color-text-primary);
  font-family: var(--yimi-font-body);
  font-size: var(--yimi-type-small-size);
  font-weight: var(--yimi-type-label-weight);
  line-height: var(--yimi-type-label-line-height);
  letter-spacing: var(--yimi-type-label-letter-spacing);
  text-align: center;
  overflow-wrap: anywhere;
}

.single-content .yimi-news-highlight {
  margin-block: 0;
}

.yimi-news-highlight + .yimi-news-highlight {
  border-inline-start: var(--yimi-border-thin);
}

.yimi-news-controls {
  background-color: var(--yimi-color-surface-soft);
}

.yimi-news-controls .yimi-news-categories {
  justify-content: center;
}

.yimi-news-chip--current > .wp-block-button__link {
  color: var(--yimi-color-text-inverse);
  background-color: var(--yimi-color-action);
  border-color: var(--yimi-color-action);
  box-shadow: inset 0 -3px 0 var(--yimi-color-text-inverse);
}

.yimi-news-chip--current > .wp-block-button__link:focus-visible {
  box-shadow:
    inset 0 -3px 0 var(--yimi-color-text-inverse),
    var(--yimi-focus-ring);
}

.yimi-news-feed:not(:has(.wp-block-post)):not(:has(.yimi-news-empty-state)) {
  display: none;
}

.yimi-news-feed:has(.wp-block-post) {
  padding-block: var(--yimi-space-7);
}

.yimi-news-feed:has(.yimi-news-empty-state) {
  padding-block: var(--yimi-space-7);
}

.yimi-news-empty-state {
  width: min(100%, var(--yimi-container-reading));
  margin-inline: auto;
  padding: var(--yimi-card-padding);
  color: var(--yimi-color-text-primary);
  background-color: var(--yimi-color-surface-soft);
  border: var(--yimi-border-thin);
  border-radius: var(--yimi-radius-lg);
  box-shadow: var(--yimi-shadow-card);
  text-align: center;
}

.yimi-news-empty-state .wp-block-heading {
  margin-block: 0 var(--yimi-space-3);
  font-family: var(--yimi-font-display);
  font-size: var(--yimi-type-h3-size);
  font-weight: var(--yimi-type-h3-weight);
  line-height: var(--yimi-type-h3-line-height);
  letter-spacing: var(--yimi-type-h3-letter-spacing);
}

.yimi-news-empty-state p {
  margin: 0;
  color: var(--yimi-color-text-secondary);
  font-family: var(--yimi-font-body);
  font-size: var(--yimi-type-body-size);
  line-height: var(--yimi-type-body-line-height);
}

.yimi-news-feed--regular:has(.wp-block-post) {
  background-color: var(--yimi-color-surface-soft);
}

.yimi-news-query__template {
  display: grid;
  gap: var(--yimi-grid-gap);
  margin: 0;
  padding: 0;
  list-style: none;
}

.yimi-news-landing .yimi-featured-post__media > a,
.yimi-news-landing .yimi-post-card__media > a {
  display: block;
  width: 100%;
  height: 100%;
}

.yimi-news-landing .yimi-featured-post__media img,
.yimi-news-landing .yimi-post-card__media img {
  display: block;
  width: 100%;
  height: 100%;
  object-fit: cover;
}

.yimi-news-landing .yimi-featured-post__title a,
.yimi-news-landing .yimi-post-card__title a,
.yimi-news-landing .yimi-featured-post__category a,
.yimi-news-landing .yimi-post-card__category a {
  color: inherit;
  text-decoration: none;
}

.yimi-news-landing .wp-block-post-excerpt__more-link {
  display: inline-flex;
  align-items: center;
  min-height: 2.75rem;
  margin-block-start: var(--yimi-space-3);
  color: var(--yimi-color-navy);
  font-weight: var(--yimi-type-control-weight);
  text-decoration: underline;
  text-decoration-thickness: 0.125rem;
  text-underline-offset: 0.25rem;
}

.yimi-news-landing .wp-block-query-pagination {
  margin-block-start: var(--yimi-space-6);
}

.yimi-news-landing .wp-block-query-pagination a:focus-visible,
.yimi-news-landing .yimi-featured-post a:focus-visible,
.yimi-news-landing .yimi-post-card a:focus-visible {
  outline: 3px solid var(--yimi-color-focus);
  outline-offset: 3px;
  box-shadow: var(--yimi-focus-ring);
}

body.category .post-archive-hero-section {
  background-color: var(--yimi-color-surface-warm);
  border-block-end: var(--yimi-border-thin);
}

body.category .post-archive-hero-section .hero-container,
body.category #primary .content-container {
  width: min(
    var(--yimi-container-content),
    calc(100% - (var(--yimi-page-gutter) * 2))
  );
  max-width: 100%;
  margin-inline: auto;
  padding-inline: 0;
}

body.category .post-archive-title .archive-title {
  margin: 0;
  color: var(--yimi-color-text-primary);
  font-family: var(--yimi-font-display);
  font-size: var(--yimi-type-h1-size);
  font-weight: var(--yimi-type-h1-weight);
  line-height: var(--yimi-type-h1-line-height);
  letter-spacing: var(--yimi-type-h1-letter-spacing);
}

body.category #primary {
  margin: 0;
  padding-block: var(--yimi-section-padding-compact);
}

body.category #main.site-main {
  display: grid;
  gap: var(--yimi-grid-gap);
}

body.category .loop-entry {
  display: grid;
  grid-template-columns: minmax(16rem, 0.8fr) minmax(0, 1.2fr);
  min-width: 0;
  margin: 0;
  background-color: var(--yimi-color-surface);
  border: var(--yimi-border-thin);
  border-radius: var(--yimi-radius-lg);
  box-shadow: var(--yimi-shadow-card);
  overflow: hidden;
}

body.category .loop-entry .post-thumbnail {
  min-width: 0;
  aspect-ratio: 16 / 10;
  margin: 0;
}

body.category .loop-entry .post-thumbnail img {
  display: block;
  width: 100%;
  height: 100%;
  object-fit: cover;
}

body.category .loop-entry .entry-content-wrap {
  min-width: 0;
  padding: var(--yimi-card-padding);
  overflow-wrap: anywhere;
}

body.category .loop-entry .entry-title {
  color: var(--yimi-color-text-primary);
  font-family: var(--yimi-font-display);
  font-size: var(--yimi-type-h2-size);
  font-weight: var(--yimi-type-h2-weight);
  line-height: var(--yimi-type-h2-line-height);
  letter-spacing: var(--yimi-type-h2-letter-spacing);
}

body.category .loop-entry .entry-summary,
body.category .loop-entry .entry-meta {
  color: var(--yimi-color-text-secondary);
  font-family: var(--yimi-font-body);
}

body.category .loop-entry a:focus-visible,
body.category .navigation.pagination a:focus-visible,
body.category .search-form :is(input, button):focus-visible {
  outline: 3px solid var(--yimi-color-focus);
  outline-offset: 3px;
  box-shadow: var(--yimi-focus-ring);
}

body.category .error {
  padding: var(--yimi-card-padding);
  color: var(--yimi-color-text-secondary);
  background-color: var(--yimi-color-surface-soft);
  border: var(--yimi-border-thin);
  border-radius: var(--yimi-radius-lg);
}

body.category .error .page-content,
body.category .error .page-content > p {
  margin: 0;
}

body.category .error .search-form {
  margin-block-start: var(--yimi-space-5);
}

/* Native single Post presentation */
body.single-post {
  color: var(--yimi-color-text-primary);
  background-color: var(--yimi-color-page);
}

body.single-post #primary {
  margin: 0;
  padding-block: var(--yimi-section-padding-compact);
}

body.single-post #primary .content-container {
  width: min(
    var(--yimi-container-content),
    calc(100% - (var(--yimi-page-gutter) * 2))
  );
  max-width: 100%;
  margin-inline: auto;
  padding-inline: 0;
}

body.single-post #main.site-main,
body.single-post .content-wrap,
body.single-post .single-entry {
  min-width: 0;
}

body.single-post .single-entry {
  margin: 0;
  background-color: var(--yimi-color-surface);
  border: var(--yimi-border-thin);
  border-radius: var(--yimi-radius-lg);
  box-shadow: var(--yimi-shadow-card);
  overflow: hidden;
}

body.single-post .single-entry .entry-content-wrap {
  padding: clamp(1.5rem, 4vw, 4rem);
}

body.single-post .single-entry :where(.entry-header, .entry-content, .entry-footer),
body.single-post .article-post-thumbnail,
body.single-post .article-post-thumbnail-caption,
body.single-post .post-navigation {
  width: min(100%, var(--yimi-container-reading));
  margin-inline: auto;
}

body.single-post .entry-header {
  margin-block-end: var(--yimi-space-6);
}

body.single-post .entry-title {
  margin: 0;
  color: var(--yimi-color-text-primary);
  font-family: var(--yimi-font-display);
  font-size: var(--yimi-type-h1-size);
  font-weight: var(--yimi-type-h1-weight);
  line-height: var(--yimi-type-h1-line-height);
  letter-spacing: var(--yimi-type-h1-letter-spacing);
  overflow-wrap: anywhere;
}

body.single-post :where(.entry-taxonomies, .entry-meta) {
  display: flex;
  flex-wrap: wrap;
  gap: var(--yimi-space-2) var(--yimi-space-3);
  color: var(--yimi-color-text-muted);
  font-family: var(--yimi-font-body);
  font-size: var(--yimi-type-small-size);
  line-height: var(--yimi-type-small-line-height);
}

body.single-post .entry-taxonomies {
  margin-block-end: var(--yimi-space-3);
  font-weight: var(--yimi-type-label-weight);
}

body.single-post :where(.entry-taxonomies, .entry-meta) a {
  color: var(--yimi-color-action);
  text-underline-offset: 0.2em;
}

body.single-post .entry-content {
  color: var(--yimi-color-text-secondary);
  font-family: var(--yimi-font-body);
  font-size: var(--yimi-type-body-size);
  font-weight: var(--yimi-type-body-weight);
  line-height: var(--yimi-type-body-line-height);
  overflow-wrap: anywhere;
}

body.single-post .entry-content :where(h2, h3) {
  color: var(--yimi-color-text-primary);
  font-family: var(--yimi-font-display);
}

body.single-post .entry-content h2 {
  font-size: var(--yimi-type-h2-size);
  font-weight: var(--yimi-type-h2-weight);
  line-height: var(--yimi-type-h2-line-height);
  letter-spacing: var(--yimi-type-h2-letter-spacing);
}

body.single-post .entry-content h3 {
  font-size: var(--yimi-type-h3-size);
  font-weight: var(--yimi-type-h3-weight);
  line-height: var(--yimi-type-h3-line-height);
  letter-spacing: var(--yimi-type-h3-letter-spacing);
}

body.single-post .entry-content :where(a, .wp-block-footnotes a) {
  color: var(--yimi-color-action);
  text-decoration-thickness: 0.1em;
  text-underline-offset: 0.2em;
}

body.single-post .entry-content :where(ul, ol) {
  padding-inline-start: var(--yimi-space-5);
}

body.single-post .entry-content blockquote {
  margin-inline: 0;
  padding: var(--yimi-space-4) var(--yimi-space-5);
  color: var(--yimi-color-text-secondary);
  background-color: var(--yimi-color-surface-warm);
  border-inline-start: var(--yimi-border-strong);
}

body.single-post .entry-content :where(img, video, iframe) {
  max-width: 100%;
}

body.single-post .entry-content img,
body.single-post .article-post-thumbnail img {
  display: block;
  width: 100%;
  height: auto;
}

body.single-post .entry-content :where(pre, .wp-block-table) {
  max-width: 100%;
  overflow-x: auto;
}

body.single-post :where(.entry-content, .entry-taxonomies, .entry-meta, .post-navigation) a:focus-visible {
  outline: 3px solid var(--yimi-color-focus);
  outline-offset: 3px;
  box-shadow: var(--yimi-focus-ring);
}

/* Shared Header component */
#masthead.site-header {
  background-color: var(--yimi-color-surface);
  border-block-end: 1px solid var(--yimi-color-divider);
  font-family: var(--yimi-font-body);
}

#masthead .site-main-header-wrap .site-container {
  max-width: none;
  padding-inline: var(--yimi-page-gutter);
}

#masthead .site-main-header-inner-wrap {
  width: 100%;
  max-width: var(--yimi-container-wide);
  margin-inline: auto;
}

#masthead .header-navigation .menu > .menu-item > a {
  min-height: 2.75rem;
  padding-inline: 0.875rem;
  color: var(--yimi-color-navy);
  font-family: var(--yimi-font-body);
  font-size: var(--yimi-type-control-size);
  font-weight: var(--yimi-type-control-weight);
  line-height: var(--yimi-type-control-line-height);
  letter-spacing: var(--yimi-type-control-letter-spacing);
}

#masthead .header-navigation .menu > .menu-item > a:hover {
  color: var(--yimi-color-red);
}

#masthead .header-navigation .menu > .current-menu-item > a,
#masthead .header-navigation .menu > .current_page_item > a {
  color: var(--yimi-color-red);
}

#masthead .header-navigation-style-underline .menu > .current-menu-item > a::after,
#masthead .header-navigation-style-underline .menu > .current_page_item > a::after {
  inset-inline: 0.875rem;
  inset-block-end: 0.5rem;
  height: 3px;
  background-color: var(--yimi-color-red);
}

#masthead #site-navigation .lang-item + .lang-item > a {
  padding-inline-start: 0;
}

#masthead #site-navigation .lang-item + .lang-item > a::before,
#mobile-site-navigation .lang-item + .lang-item > a::before {
  content: "|";
  margin-inline-end: 0.75rem;
  color: var(--yimi-color-text-muted);
  font-weight: 400;
}

#masthead.site-header a:focus-visible,
#masthead.site-header button:focus-visible,
#mobile-drawer.popup-drawer a:focus-visible,
#mobile-drawer.popup-drawer button:focus-visible {
  outline: 3px solid var(--yimi-color-focus);
  outline-offset: 3px;
  border-radius: var(--yimi-radius-sm);
  box-shadow: var(--yimi-focus-ring);
}

#masthead .menu-toggle-open {
  min-width: 2.75rem;
  min-height: 2.75rem;
  color: var(--yimi-color-navy);
}

#mobile-drawer .drawer-inner {
  background-color: var(--yimi-color-navy-deep);
}

#mobile-drawer .drawer-header,
#mobile-drawer .drawer-navigation .drawer-menu-container {
  padding-inline: var(--yimi-space-5);
}

#mobile-site-navigation .menu > .menu-item > a {
  color: var(--yimi-color-text-inverse);
  font-family: var(--yimi-font-body);
  font-size: var(--yimi-type-control-size);
  font-weight: var(--yimi-type-control-weight);
  line-height: var(--yimi-type-control-line-height);
}

#mobile-site-navigation .menu > .menu-item > a:hover,
#mobile-site-navigation .menu > .current-menu-item > a,
#mobile-site-navigation .menu > .current_page_item > a {
  color: var(--yimi-color-red);
  text-decoration: underline;
  text-decoration-thickness: 3px;
  text-underline-offset: 0.3em;
}

#mobile-site-navigation .menu > .lang-item {
  display: inline-flex;
  width: auto;
  border-block-end: 0;
}

#mobile-site-navigation .menu > .lang-item > a {
  padding-inline: 0.5rem;
}

#mobile-site-navigation .menu > .lang-item-first > a {
  padding-inline-start: 0;
}

/* Shared Footer component */
#colophon.site-footer {
  background-color: var(--yimi-color-navy-deep);
  color: var(--yimi-color-text-inverse);
  font-family: var(--yimi-font-body);
}

#colophon .site-middle-footer-wrap,
#colophon .site-bottom-footer-wrap,
#colophon .site-footer-row-container-inner {
  background-color: var(--yimi-color-navy-deep);
  color: var(--yimi-color-text-inverse);
}

#colophon .site-footer-row-container-inner > .site-container {
  max-width: none;
  padding-inline: var(--yimi-page-gutter);
}

#colophon .site-footer-row {
  width: 100%;
  max-width: var(--yimi-container-wide);
  margin-inline: auto;
}

#colophon .widget {
  margin-block: 0;
}

#colophon .widget + .widget,
#colophon .footer-widget-area + .footer-widget-area {
  margin-block-start: var(--yimi-space-4);
}

#colophon .widget_media_image img {
  width: clamp(8rem, 12vw, 11rem);
  height: auto;
}

#colophon .widget-title {
  margin: 0 0 var(--yimi-space-4);
  color: var(--yimi-color-text-inverse);
  font-family: var(--yimi-font-display);
  font-size: var(--yimi-type-h3-size);
  font-weight: var(--yimi-type-h3-weight);
  line-height: var(--yimi-type-h3-line-height);
  letter-spacing: var(--yimi-type-h3-letter-spacing);
  text-transform: none;
}

#colophon .textwidget {
  color: var(--yimi-color-text-inverse);
  font-size: var(--yimi-type-body-size);
  line-height: var(--yimi-type-body-line-height);
}

#colophon .textwidget p {
  margin: 0 0 var(--yimi-space-3);
}

#colophon .textwidget p:last-child {
  margin-block-end: 0;
}

#colophon .footer-navigation .menu {
  display: grid;
  gap: var(--yimi-space-1);
  justify-content: stretch;
  margin: 0;
  padding: 0;
  list-style: none;
}

#colophon .footer-navigation .menu > .menu-item {
  margin: 0;
}

#colophon .footer-navigation .menu > .menu-item > a,
#colophon .textwidget a {
  color: var(--yimi-color-text-inverse);
  text-decoration-color: transparent;
  text-underline-offset: 0.25em;
}

#colophon .footer-navigation .menu > .menu-item > a {
  display: flex;
  min-height: 2.75rem;
  align-items: center;
  padding: var(--yimi-space-1) 0;
  font-size: var(--yimi-type-body-size);
  line-height: var(--yimi-type-body-line-height);
}

#colophon .footer-navigation .menu > .menu-item > a:hover,
#colophon .textwidget a:hover {
  color: var(--yimi-color-text-inverse);
  text-decoration-color: var(--yimi-color-orange);
  text-decoration-thickness: 2px;
}

#colophon .footer-navigation .menu > .menu-item > a[aria-current="page"] {
  color: var(--yimi-color-text-inverse);
  text-decoration-line: underline;
  text-decoration-color: var(--yimi-color-orange);
  text-decoration-thickness: 2px;
  text-underline-offset: 0.25em;
}

#colophon a:focus-visible {
  outline: 3px solid var(--yimi-color-focus);
  outline-offset: 3px;
  border-radius: var(--yimi-radius-sm);
  box-shadow: 0 0 0 2px var(--yimi-color-text-inverse);
}

#colophon .site-bottom-footer-wrap {
  border-block-start: 1px solid var(--yimi-color-divider-inverse);
}

#colophon .site-bottom-footer-wrap .textwidget {
  font-size: var(--yimi-type-small-size);
  line-height: var(--yimi-type-small-line-height);
}

/* Gutenberg integration adapters */
/* Gutenberg Group inner-container adapters */
:where(
  .yimi-section-heading,
  .yimi-split,
  .yimi-grid,
  .yimi-card,
  .yimi-card__icon,
  .yimi-boundary--strip,
  .yimi-cta__inner,
  .yimi-hero__highlights,
  .yimi-contact-paths,
  .yimi-featured-post,
  .yimi-featured-post__content,
  .yimi-post-card,
  .yimi-post-card__content
) > .wp-block-group__inner-container {
  display: contents;
}

.yimi-split > .wp-block-group__inner-container > * {
  min-width: 0;
  max-width: 100%;
  overflow-wrap: anywhere;
}

:where(
  .yimi-grid,
  .yimi-contact-paths
) > .wp-block-group__inner-container > * {
  min-width: 0;
  max-width: 100%;
}

.yimi-tabs.is-layout-flex {
  display: grid;
}

/* Responsive overrides */
@media (max-width: 63.999rem) {
  .yimi-news-highlights {
    grid-template-columns: repeat(2, minmax(0, 1fr));
  }

  .yimi-news-highlight:nth-child(3) {
    border-inline-start: 0;
  }

  .yimi-news-highlight:nth-child(n + 3) {
    border-block-start: var(--yimi-border-thin);
  }

  .yimi-grid--cards,
  .yimi-grid--five,
  .yimi-grid--trust {
    --yimi-grid-columns: 2;
  }

  .yimi-audience .yimi-card--audience:nth-child(odd) {
    border-inline-start: 0;
  }
}

@media (max-width: 48rem) {
  body.category .loop-entry {
    grid-template-columns: minmax(0, 1fr);
  }

  body:has(.yimi-contact-paths) .yimi-hero {
    padding-block: var(--yimi-space-5);
  }

  body:has(.yimi-contact-paths) .yimi-hero .yimi-media-frame--hero {
    aspect-ratio: 16 / 10;
  }

  body:has(.yimi-contact-paths) .yimi-form-shell .frm-fluent-form > fieldset,
  body:has(.yimi-contact-paths) .yimi-form-shell .ff-el-group:has(.ff-el-form-check + .ff-el-form-check) > .ff-el-input--content {
    grid-template-columns: minmax(0, 1fr);
  }

  body:has(.yimi-contact-paths) .yimi-contact-paths .yimi-inquiry-card__action .wp-block-button__link {
    width: 100%;
  }

  body:has(.yimi-contact-paths) .yimi-trust-strip .yimi-card--trust + .yimi-card--trust {
    border-block-start: var(--yimi-border-thin);
    border-inline-start: 0;
  }

  .yimi-split {
    grid-template-columns: minmax(0, 1fr);
  }

  .yimi-media-frame--hero {
    aspect-ratio: 16 / 10;
  }

  .yimi-cta__inner {
    grid-template-columns: minmax(0, 1fr);
  }

  .yimi-cta__actions .yimi-button {
    width: 100%;
  }

  .yimi-hero__inner,
  .yimi-form-grid,
  .yimi-featured-post {
    grid-template-columns: minmax(0, 1fr);
  }

  .yimi-hero__content {
    padding-inline-end: 0;
  }

  .yimi-hero--edge-media {
    padding-block: var(--yimi-space-7);
  }

  .yimi-hero--edge-media .yimi-hero__inner {
    width: min(
      var(--yimi-container-content),
      calc(100% - (var(--yimi-page-gutter) * 2))
    );
    min-height: 0;
    margin-inline: auto;
    gap: var(--yimi-space-6);
  }

  .yimi-hero--edge-media .yimi-hero__content {
    padding-block: 0;
    padding-inline-end: 0;
  }

  .yimi-hero--edge-media .yimi-hero__media {
    min-height: 0;
    aspect-ratio: 16 / 10;
    border-radius: var(--yimi-radius-lg);
  }

  .yimi-hero__actions .yimi-button {
    width: 100%;
  }

  .yimi-media-frame.yimi-featured-post__media {
    border-radius: var(--yimi-radius-lg) var(--yimi-radius-lg) 0 0;
  }
}

@media (max-width: 47.999rem) {
  .yimi-news-highlights {
    grid-template-columns: minmax(0, 1fr);
  }

  .yimi-news-highlight + .yimi-news-highlight {
    border-block-start: var(--yimi-border-thin);
    border-inline-start: 0;
  }

  .yimi-news-controls .yimi-news-categories {
    align-items: stretch;
  }

  .yimi-news-controls .yimi-news-chip {
    flex: 1 1 calc(50% - var(--yimi-space-2));
  }

  .yimi-contact-paths,
  .yimi-tabs,
  .yimi-post-card {
    grid-template-columns: minmax(0, 1fr);
  }

  .yimi-media-frame.yimi-post-card__media {
    border-radius: var(--yimi-radius-lg) var(--yimi-radius-lg) 0 0;
  }

  .yimi-grid--cards,
  .yimi-grid--five,
  .yimi-grid--trust {
    --yimi-grid-columns: 1;
  }

  .yimi-audience .yimi-card--audience {
    padding-block: var(--yimi-space-5);
    border-inline-start: 0;
  }

  .yimi-audience .yimi-card--audience:not(:first-child) {
    border-block-start: 1px solid var(--yimi-color-border);
  }
}

@media (prefers-reduced-motion: reduce) {
  .yimi-button > .wp-block-button__link {
    transition: none;
  }
}

/* Business Hero: approved focal and bounded split-frame safe crop. */
:is(.page-id-7, .page-id-6) .yimi-hero__media {
  --yimi-media-focal-x: 64%;
  --yimi-media-focal-y: 53%;
}

@media (min-width: 48.001rem) {
  :is(.page-id-7, .page-id-6) .yimi-hero--edge-media .yimi-hero__media {
    align-self: center;
    min-height: 0;
    height: auto;
    aspect-ratio: 9 / 10;
    max-height: 36rem;
  }
}

/* Medical service rail: content failure-point reflow; preserve wide and narrow. */
@media (min-width: 48rem) and (max-width: 88.499rem) {
  :is(.page-id-9, .page-id-8) .yimi-grid--five {
    --yimi-grid-columns: 2;
  }
}

/* News editorial Hero: usable split width and bounded inset; retain shared type/media. */
.yimi-news-hero.yimi-hero--editorial {
  padding-block: clamp(2rem, 3.333vw, 3rem);
}
.yimi-news-hero.yimi-hero--editorial .yimi-hero__inner {
  width: 100%;
}
.yimi-news-hero.yimi-hero--editorial .yimi-hero__content {
  max-width: 38.75rem;
  padding-inline-end: 0;
  margin-block-end: 0;
}

/* Contact checkbox: effective 44px label target; retain native control and wrapping. */
.yimi-form-shell .fluentform .ff-el-form-check-label:has(> input[type="checkbox"]) {
  display: flex;
  align-items: center;
  gap: var(--yimi-space-2);
  min-height: 44px;
  min-width: 44px;
  max-width: 100%;
  box-sizing: border-box;
}

.yimi-form-shell .fluentform .ff-el-form-check-label > input[type="checkbox"] {
  flex-shrink: 0;
  margin-block: 0;
  top: 0;
}

/* 2026-10-02 first-round V remediation: shared geometry, native blocks only. */
.single-content .yimi-hero__title {
  margin: 0;
}

.single-content .yimi-section-heading__eyebrow,
.single-content .yimi-section-heading__title,
.single-content .yimi-section-heading__intro {
  margin: 0;
}

.single-content .yimi-section-heading__eyebrow + .yimi-section-heading__title {
  margin-block-start: var(--yimi-space-3);
}

.single-content .yimi-section-heading__title + .yimi-section-heading__intro {
  margin-block-start: var(--yimi-space-4);
}

.yimi-container .yimi-container {
  width: 100%;
}

.single-content :is(.yimi-section-heading, .yimi-section-heading__title) {
  margin-block-end: var(--yimi-space-6);
}

.yimi-section-heading .yimi-section-heading__title {
  margin-block-end: 0;
}

.single-content .yimi-hero__rule {
  box-sizing: border-box;
  inline-size: 3rem;
  block-size: 3px;
  margin: var(--yimi-space-5) 0;
  padding: 0;
  border: 0;
  box-shadow: none;
  opacity: 1;
}

.yimi-hero__content {
  padding-inline-end: 0;
  overflow-wrap: normal;
}

.yimi-hero__title,
.yimi-section-heading__title,
.yimi-card__title {
  word-break: normal;
  overflow-wrap: normal;
  text-wrap: balance;
}

html:lang(zh) :is(.yimi-hero__title, .yimi-section-heading__title, .yimi-card__title) {
  font-family: "Microsoft YaHei", "PingFang SC", system-ui, sans-serif;
  letter-spacing: 0;
  line-break: strict;
}

html:lang(zh) .single-content :is(.yimi-hero__lead, .yimi-card__body, .yimi-cta__support, .yimi-form-shell) {
  font-family: "Microsoft YaHei", "PingFang SC", system-ui, sans-serif;
}

html:lang(zh) .yimi-hero__lead {
  text-wrap: balance;
  overflow-wrap: normal;
}

.single-content .yimi-grid {
  align-items: stretch;
}

.single-content .yimi-grid .yimi-card {
  margin-block: 0;
  padding: var(--yimi-card-padding);
}

.single-content .yimi-card :is(.yimi-card__icon, .yimi-card__title, .yimi-card__body) {
  margin-block: 0;
}

.single-content .yimi-card .yimi-card__icon {
  inline-size: 3rem;
  block-size: 3rem;
  margin-block-end: var(--yimi-space-5);
}

.single-content .yimi-card__icon svg,
.yimi-news-highlight__icon svg {
  display: block;
  width: 100%;
  height: 100%;
}

.single-content .yimi-card .yimi-card__body {
  margin-block-start: var(--yimi-space-3);
  font-size: 1rem;
  line-height: 1.65;
}

.single-content .yimi-trust-strip--home .yimi-card--trust {
  padding: 0;
  text-align: start;
}

.single-content .yimi-trust-strip--home .yimi-card__icon {
  margin: 0;
}

.single-content .yimi-trust-strip--home .yimi-card__title {
  font-size: clamp(1.25rem, 1.15rem + .3vw, 1.375rem);
  line-height: 1.3;
}

.single-content .yimi-trust-strip--home .yimi-card__body {
  margin: 0;
}

/* About: remove the theme's extra page shell; the native sections own spacing. */
body:has(.yimi-values-section) #primary,
body:has(.yimi-values-section) .entry-content-wrap {
  margin: 0;
  padding: 0;
}

body:has(.yimi-values-section) #primary .content-container {
  width: 100%;
  max-width: none;
  padding: 0;
}

body:has(.yimi-values-section) #primary .single-entry {
  margin-inline: 0;
  border: 0;
  box-shadow: none;
}

body:has(.yimi-values-section) .yimi-hero--edge-media {
  padding-block: clamp(3rem, 5vw, 5rem);
}

body:has(.yimi-values-section) .yimi-hero--edge-media .yimi-hero__inner {
  width: min(var(--yimi-container-content), calc(100% - var(--yimi-page-gutter) * 2));
  margin-inline: auto;
  min-height: 0;
  gap: var(--yimi-space-7);
  align-items: center;
}

body:has(.yimi-values-section) .yimi-hero--edge-media .yimi-hero__content {
  padding: 0;
}

body:has(.yimi-values-section) .yimi-hero--edge-media .yimi-hero__media {
  min-height: 0;
  aspect-ratio: 3 / 2;
}

.single-content .yimi-values {
  gap: 0;
}

.single-content .yimi-values .yimi-card {
  padding: var(--yimi-space-5);
  background: transparent;
  border: 0;
  border-radius: 0;
}

.single-content .yimi-values .yimi-card + .yimi-card {
  border-inline-start: var(--yimi-border-thin);
}

body:has(.yimi-values-section) .yimi-hero--editorial .yimi-hero__content {
  max-width: none;
}

body:has(.yimi-values-section) .yimi-hero--editorial .yimi-stack {
  display: grid;
  gap: var(--yimi-space-3);
  margin-block-start: var(--yimi-space-5);
  font-size: 1rem;
  line-height: 1.65;
}

body:has(.yimi-values-section) .yimi-hero--editorial .yimi-stack p {
  margin: 0;
}

body:has(.yimi-values-section) .yimi-hero--editorial .yimi-stack > .wp-block-group__inner-container {
  display: contents;
}

:is(.page-id-7, .page-id-6) .yimi-hero--edge-media {
  background: linear-gradient(90deg, var(--yimi-color-surface-warm), var(--yimi-color-surface));
}

/* Keep the welcoming hand and luggage visible in Home's narrow split frame. */
@media (min-width: 64rem) and (max-width: 75rem) {
  body.home .yimi-hero--edge-media .yimi-hero__media {
    align-self: center;
    min-height: 0;
    aspect-ratio: 3 / 2;
  }
  .single-content .yimi-trust-strip--home .yimi-grid {
    --yimi-grid-columns: 2;
  }
}

.single-content .yimi-boundary--strip {
  width: min(100%, calc(var(--yimi-container-reading) + 7.25rem));
  margin-inline: auto;
  box-sizing: border-box;
  align-items: start;
  padding: var(--yimi-space-5) var(--yimi-space-6);
  font-size: 1rem;
  line-height: 1.65;
}

.single-content .yimi-boundary--strip p {
  max-width: var(--yimi-container-reading);
  margin: 0;
}

/* Contact: keep plugin-owned definitions and the existing Tabs module intact. */
body:has(.yimi-contact-paths) .yimi-hero {
  padding-block: clamp(3rem, 5vw, 5rem);
}

body:has(.yimi-contact-paths) .yimi-section:has(.yimi-contact-paths) {
  padding-block: var(--yimi-space-6) var(--yimi-space-7);
}

.single-content .yimi-contact-paths .yimi-inquiry-card {
  margin: 0;
  padding: var(--yimi-card-padding);
}

.single-content .yimi-inquiry-card .yimi-inquiry-card__icon {
  inline-size: 3.5rem;
  block-size: 3.5rem;
}

.single-content .yimi-inquiry-card .yimi-inquiry-card__action {
  margin-block-start: auto;
  padding-block-start: var(--yimi-space-5);
}

.single-content .yimi-tabs {
  gap: 0;
  margin: 0;
}

.single-content .yimi-tab > .wp-block-button__link {
  min-height: 3rem;
  border-end-start-radius: 0;
  border-end-end-radius: 0;
}

.single-content .yimi-form-shell > .wp-block-group__inner-container > h2,
.single-content .yimi-form-shell > h2 {
  color: var(--yimi-color-navy);
  font-family: var(--yimi-font-display);
  font-size: clamp(1.75rem, 1.5rem + .5vw, 2rem);
  font-weight: 400;
  line-height: 1.2;
}

.yimi-form-shell .fluentform {
  font-family: var(--yimi-font-body);
  font-size: 1rem;
  line-height: 1.65;
}

.yimi-form-shell .fluentform .ff-el-input--label label {
  font-size: 1rem;
  font-weight: 600;
  line-height: 1.4;
}

.yimi-form-shell .fluentform .ff-el-form-control {
  min-height: 3rem;
  max-width: 100%;
  font-family: var(--yimi-font-body);
  font-size: 1rem;
  line-height: 1.5;
  color: var(--yimi-color-navy);
  border: 1px solid var(--yimi-color-text-muted);
}

.yimi-form-shell .fluentform .ff-el-form-control::placeholder {
  color: var(--yimi-color-text-secondary);
  opacity: 1;
}

.yimi-form-shell .fluentform select.ff-el-form-control {
  appearance: auto;
  padding-inline-end: 2.5rem;
}

.yimi-form-shell .fluentform .ff-el-form-control:focus-visible {
  outline: 2px solid var(--yimi-color-navy);
  outline-offset: 2px;
}

.yimi-form-shell .fluentform .ff-el-form-check-label {
  font-size: 1rem;
  line-height: 1.65;
  white-space: normal;
}

.yimi-form-shell .fluentform .ff-custom_html,
.yimi-form-shell .fluentform .ff-custom_html p {
  font-size: 1rem;
  line-height: 1.65;
}

.yimi-form-shell .fluentform .ff-custom_html p + p {
  margin-block-start: var(--yimi-space-4);
}

#medical-escort-inquiry-form .ff-el-form-check-label:has(> input[name="checkbox_1[]"]) {
  align-items: flex-start;
}

#medical-escort-inquiry-form .ff-el-form-check-label > input[name="checkbox_1[]"] {
  margin-block-start: .25rem;
}

body:has(.yimi-contact-paths) .single-content .yimi-trust-strip {
  padding: var(--yimi-space-5);
}

body:has(.yimi-contact-paths) .single-content .yimi-trust-strip .yimi-card--trust {
  padding: var(--yimi-space-5);
}

/* Shared close: CTA surface spans the page, links and content keep their identity. */
.single-content .yimi-cta {
  padding-block: var(--yimi-space-7);
}

.single-content .yimi-cta__content {
  max-width: 42.5rem;
}

#colophon .widget_media_image img {
  width: clamp(5.625rem, 7.5vw, 6.875rem);
}

#colophon .textwidget a {
  display: inline-flex;
  align-items: center;
  min-height: 2.75rem;
}

/* Empty decorative glyph; the existing mail link remains the accessible name. */
#colophon .textwidget a[href^="mailto:"] {
  gap: var(--yimi-space-3);
}

#colophon .textwidget a[href^="mailto:"]::before {
  content: "";
  flex: 0 0 1.5rem;
  inline-size: 1.5rem;
  block-size: 1.125rem;
  border: 2px solid currentColor;
  border-radius: 2px;
  background: linear-gradient(35deg, transparent 46%, currentColor 48% 52%, transparent 54%) left top / 50% 60% no-repeat,
    linear-gradient(-35deg, transparent 46%, currentColor 48% 52%, transparent 54%) right top / 50% 60% no-repeat;
}

/* Kadence's width and translation otherwise extend the underline past its link. */
#masthead .header-navigation-style-underline .menu > .current-menu-item > a::after,
#masthead .header-navigation-style-underline .menu > .current_page_item > a::after {
  width: auto;
  transform: none;
}

/* Native category template adapter: no term, language relation or route writes. */
body.category #masthead .header-navigation .menu {
  flex-wrap: nowrap;
  align-items: center;
}

body.category #masthead .header-navigation .lang-item > a {
  white-space: nowrap;
}

body.category .post-archive-hero-section .entry-hero-container-inner {
  padding-block: clamp(3rem, 5vw, 5rem);
  background-color: var(--yimi-color-surface-warm);
}

body.category .post-archive-title {
  min-height: 0;
}

body.category #masthead .header-navigation .menu-item:has(> a[href$="/news/"]) > a,
body.category #masthead .header-navigation .menu-item:has(> a[href$="/news-zh/"]) > a {
  text-decoration: underline;
  text-decoration-thickness: 3px;
  text-underline-offset: .5em;
}

@media (min-width: 48rem) {
  html:lang(en) .single-content .yimi-grid--cards .yimi-card--icon-led .yimi-card__title {
    min-height: 2.56em;
  }
  html:lang(en) .single-content #business-services .yimi-card__title {
    min-height: 3.84em;
  }
}

.single-content #medical-support .yimi-card__body {
  text-align: start;
}

.single-content #medical-support .yimi-card {
  padding: var(--yimi-space-5);
}

.single-content #medical-support .yimi-card__title {
  text-wrap: wrap;
}

html:lang(zh) .single-content .yimi-card__body {
  text-wrap: balance;
}

@media (min-width: 88.5rem) {
  html:lang(en) .single-content #medical-support .yimi-card__title {
    min-height: 3.84em;
  }
}

@media (min-width: 64rem) and (max-width: 75rem) {
  html:lang(en) .single-content #business-services .yimi-card__title {
    min-height: 5.12em;
  }
}

.yimi-news-hero.yimi-hero--editorial .yimi-hero__inner {
  width: min(var(--yimi-container-wide), calc(100% - var(--yimi-page-gutter) * 2));
}

.single-content .yimi-news-highlight {
  display: flex;
  flex-direction: column;
  align-items: center;
  gap: var(--yimi-space-3);
}

.yimi-news-highlight > .wp-block-group__inner-container {
  display: contents;
}

.single-content .yimi-news-highlight__icon {
  inline-size: 2rem;
  block-size: 2rem;
  margin: 0;
  color: var(--yimi-color-orange);
}

.single-content .yimi-news-highlight p {
  margin: 0;
}

@media (max-width: 75rem) and (min-width: 48rem) {
  .single-content .yimi-values {
    --yimi-grid-columns: 2;
  }
  .single-content .yimi-values .yimi-card:nth-child(odd) {
    border-inline-start: 0;
  }
  .single-content .yimi-values .yimi-card:nth-child(n + 3) {
    border-block-start: var(--yimi-border-thin);
  }
}

@media (max-width: 47.999rem) {
  .single-content .yimi-card__title { min-height: 0; }
  .single-content .yimi-values .yimi-card + .yimi-card {
    border-inline-start: 0;
    border-block-start: var(--yimi-border-thin);
  }
  body:has(.yimi-values-section) .yimi-hero--edge-media .yimi-hero__inner {
    gap: var(--yimi-space-6);
  }
}

/* Round2 2026-10-04: CTA/Footer interface and protected-notice reading measure. */
body:has(.single-content .yimi-cta) #colophon.site-footer {
  border-top: 1px solid var(--yimi-color-divider-inverse);
}
.yimi-form-shell .fluentform .ff-custom_html p {
  max-inline-size: 760px;
}

/* OFFLINE ONLY: G05 fluid-width successor; no copy/font-size/DOM change. */
@media (max-width: 35rem), (min-width: 54rem) {
 html:lang(zh) body.page-id-165 .yimi-news-hero .yimi-hero__title {
  max-inline-size: min(100%, 8.1em);
  text-wrap: wrap;
 }
}
@media (min-width: 48.001rem) and (max-width: 53.999rem) {
 html:lang(zh) body.page-id-165 .yimi-news-hero .yimi-hero__title {
  max-inline-size: min(100%, 6.1em);
  text-wrap: wrap;
 }
}
/* OFFLINE CANDIDATE ONLY: preserves2-column2+1 grid and all3 texts. */
@media (min-width: 48rem) and (max-width: 63.999rem) {
  body:is(.page-id-17, .page-id-16):has(.yimi-contact-paths) .yimi-trust-strip .yimi-card--trust + .yimi-card--trust {
    border-block-start: 0;
    border-inline-start: 0;
  }
  body:is(.page-id-17, .page-id-16):has(.yimi-contact-paths) .yimi-trust-strip .yimi-card--trust:nth-child(even) {
    border-inline-start: var(--yimi-border-thin);
  }
  body:is(.page-id-17, .page-id-16):has(.yimi-contact-paths) .yimi-trust-strip .yimi-card--trust:nth-child(n + 3) {
    border-block-start: var(--yimi-border-thin);
  }
}

/* B7 ZH Home CTA natural line balancing. */
@media (max-width: 47.999rem) {
  html:lang(zh) body.page-id-4 .yimi-cta__support {
    text-wrap: balance;
    overflow-wrap: normal;
  }
}

/* OWN qualification candidate: preserve Submit label, permit natural wrap. */
body:has(.yimi-contact-paths) .yimi-form-shell .ff_submit_btn_wrapper .ff-btn-submit {
  white-space: normal;
  height: auto;
  overflow-wrap: anywhere;
}

/* Scoped prospective wrapper correction: preserve native page bodies and all copy. */
body:is(.page-id-16,.page-id-17,.page-id-165,.page-id-166) .entry-header { display:none; }
body:is(.page-id-16,.page-id-17,.page-id-165,.page-id-166) .entry-content-wrap { padding:0; }

/* B8 matched Source Kadence Footer: keep the native heading above its menu. */
#colophon .site-footer-middle-section-2 {
  display: flex;
  flex-direction: column;
  align-items: stretch;
}

/* B8 matched native Footer gutter and redundant theme page-title shell. */
#colophon .site-footer-middle-section-2 .footer-navigation-wrap { margin-inline: 0; }
body.page-id-4 .entry-header,
body.page-id-5 .entry-header,
body.page-id-6 .entry-header,
body.page-id-7 .entry-header,
body.page-id-8 .entry-header,
body.page-id-9 .entry-header,
body.page-id-10 .entry-header,
body.page-id-11 .entry-header,
body.page-id-16 .entry-header,
body.page-id-17 .entry-header,
body.page-id-165 .entry-header,
body.page-id-166 .entry-header { display: none; }

/* B8 actual Kadence service-page shell: native sections own the gutter. */
body:is(.page-id-6,.page-id-7,.page-id-8,.page-id-9) #primary,
body:is(.page-id-6,.page-id-7,.page-id-8,.page-id-9) .entry-content-wrap { margin:0; padding:0; }
body:is(.page-id-6,.page-id-7,.page-id-8,.page-id-9) #primary .content-container { width:100%; max-width:none; padding:0; }
body:is(.page-id-6,.page-id-7,.page-id-8,.page-id-9) #primary .single-entry { margin-inline:0; border:0; box-shadow:none; }
.single-content #medical-support .yimi-container { width:min(var(--yimi-container-wide), calc(100% - var(--yimi-page-gutter) * 2)); }
.single-content #medical-support .yimi-card__title { inline-size:100%; min-inline-size:0; }
.single-content :is(#medical-support,#business-services) .yimi-card__body { word-break:normal; overflow-wrap:normal; }
@media (min-width:88.5rem) { html:lang(en) .single-content #medical-support .yimi-card__title { font-size:22px; } }

/* R01: bound native archive language owner; retain both 44px links. */
body.category #masthead #site-navigation .yb-lang-switcher {
  display: flex;
  flex: 0 0 auto;
  align-items: center;
  gap: 8px;
  white-space: nowrap;
}

/* U01-U09 isolated frontend candidate. No content, assets, Form or JS changes. */
:root {
  --yimi-container-content: 75rem;
  --yimi-container-wide: 75rem;
  --yimi-page-gutter: clamp(1.25rem, 3vw, 3rem);
  --yimi-type-h1-size: clamp(2.625rem, 2rem + .84vw, 2.75rem);
  --yimi-type-h1-line-height: 1.18;
  --yimi-type-h2-size: clamp(1.625rem, 1.5rem + .7vw, 2.125rem);
}
body.page #primary .content-container,
body.page #primary .single-entry,
body.page #primary .entry-content-wrap {
  width: 100%; max-width: none; padding-inline: 0; margin-inline: 0;
  border-inline: 0; box-shadow: none;
}
#masthead :is(#main-header, #mobile-header) .site-container,
#colophon .site-footer-row-container-inner > .site-container {
  width: min(75rem, calc(100% - var(--yimi-page-gutter) * 2));
  max-width: 75rem; margin-inline: auto; padding-inline: 0;
}
#masthead :is(#main-header, #mobile-header) .site-main-header-inner-wrap { padding-inline: 0; }
body.page .single-content .yimi-hero {
  width: 100%; max-width: none; margin-inline: 0;
  padding-block: clamp(2rem, 4vw, 3.5rem);
}
body.page .single-content .yimi-hero .yimi-hero__inner {
  width: min(75rem, calc(100% - var(--yimi-page-gutter) * 2));
  max-width: 75rem; margin-inline: auto; min-height: 0;
  grid-template-columns: minmax(0, 1fr) minmax(0, 1fr);
  gap: clamp(1.5rem, 3vw, 3rem); align-items: center;
}
body.page .single-content .yimi-hero .yimi-hero__content {
  padding: 0; max-width: none;
}
body.page .single-content .yimi-hero .yimi-hero__title {
  font-size: var(--yimi-type-h1-size); line-height: 1.18;
  max-width: none; inline-size: auto; text-wrap: balance;
}
body.page .single-content .yimi-hero .yimi-hero__rule {
  margin-block: 1.125rem;
}
body.page .single-content .yimi-hero .yimi-hero__media {
  min-height: 0; height: auto; aspect-ratio: 3 / 2;
  align-self: center; border-radius: 1rem; overflow: hidden;
}
body.page .single-content .yimi-hero .yimi-hero__media img {
  display: block; width: 100%; height: 100%; aspect-ratio: 3 / 2;
  object-fit: cover;
}
body.page .single-content .yimi-section-heading__title,
body.page .single-content .yimi-cta__title {
  font-size: var(--yimi-type-h2-size); line-height: 1.2;
  text-wrap: balance;
}
body.page .single-content .yimi-section-heading { max-width: 55rem; margin-inline: auto; }
body.page .single-content .yimi-cta { width: 100%; max-width: none; margin-inline: 0; }
body.page .single-content .yimi-cta .yimi-cta__inner {
  width: min(75rem, calc(100% - var(--yimi-page-gutter) * 2));
  max-width: 75rem; margin-inline: auto;
}
body.page .single-content .yimi-cta__support { max-width: 47.5rem; text-wrap: balance; }
body.page .single-content .yimi-card--icon-led:not(.yimi-card--trust) {
  text-align: center; padding: clamp(1.5rem, 2vw, 1.75rem);
}
body.page .single-content .yimi-card--icon-led:not(.yimi-card--trust) .yimi-card__body {
  text-align: center; font-size: 1rem; line-height: 1.65;
}
body.page .single-content .yimi-card--icon-led:not(.yimi-card--trust) .yimi-card__title {
  font-size: 1.25rem; line-height: 1.28; min-height: 2.56em;
  text-wrap: balance;
}
body.page .single-content .yimi-card--icon-led:not(.yimi-card--trust) .yimi-card__icon {
  width: 2.75rem; height: 2.75rem; margin-block-end: 1.125rem;
}
body.page:has(.yimi-contact-paths) .single-content .yimi-hero { padding-block: 2rem; }
body.page:has(.yimi-contact-paths) .single-content .yimi-section:has(.yimi-contact-paths) {
  padding-block: 1.5rem 2rem;
}
body.page .single-content .yimi-contact-paths .yimi-inquiry-card {
  padding: 1.5rem; gap: .75rem;
}
body.page .single-content .yimi-inquiry-card .yimi-inquiry-card__icon {
  width: 2.75rem; height: 2.75rem; margin-block-end: .75rem;
}
body.page .single-content .yimi-inquiry-card .yimi-inquiry-card__action { margin-block-start: 1rem; }
body.page .single-content .yimi-inquiry-card .yimi-inquiry-card__icon,
body.page .single-content .yimi-inquiry-card .yimi-inquiry-card__body,
body.page .single-content .yimi-inquiry-card .yimi-inquiry-card__action { margin-block: 0; }
body.page .single-content .yimi-inquiry-card .yimi-inquiry-card__action { padding-block-start: 0; }
body.page .single-content :is(#business-inquiry-form, #medical-escort-inquiry-form) {
  scroll-margin-top: 7rem;
}
@media (min-width: 48rem) {
  body.page:not(:has(.yimi-values-section)) .single-content .yimi-grid--five {
    display: flex; flex-wrap: wrap; justify-content: center; gap: 1.5rem;
  }
  body.page:not(:has(.yimi-values-section)) .single-content .yimi-grid--five > .wp-block-group__inner-container { display: contents; }
  body.page:not(:has(.yimi-values-section)) .single-content .yimi-grid--five .yimi-card {
    flex: 0 0 calc((100% - 1.5rem) / 2); min-width: 0; max-width: none;
  }
  html:lang(en) body.page .single-content #business-services .yimi-card__title { min-height: 3.84em; }
}
@media (min-width: 48rem) and (max-width: 63.999rem) {
  body.page .single-content .yimi-hero .yimi-hero__title { font-size: clamp(2.125rem, .5rem + 3.5vw, 2.25rem); }
}
@media (min-width: 64rem) {
  body.page:not(:has(.yimi-values-section)) .single-content .yimi-grid--five .yimi-card { flex-basis: calc((100% - 3rem) / 3); }
}
@media (max-width: 47.999rem) {
  body.page .single-content .yimi-hero .yimi-hero__inner { grid-template-columns: 1fr; gap: 1.5rem; }
  body.page .single-content .yimi-hero .yimi-hero__title { font-size: 2rem; }
  body.page .single-content .yimi-hero .yimi-hero__media,
  body.page .single-content .yimi-hero .yimi-hero__media img { aspect-ratio: 16 / 10; }
  body.page .single-content .yimi-hero__lead { font-size: 1rem; line-height: 1.65; }
  body.page .single-content .yimi-card--icon-led:not(.yimi-card--trust) .yimi-card__title { min-height: 0; }
  body.page .single-content .yimi-form-shell { padding: 1.25rem; }
  body.page .single-content .yimi-contact-paths { gap: 1rem; }
  body.page:has(.yimi-contact-paths) .single-content .yimi-hero { padding-block: 1.5rem; margin-block-end: 0; }
  body.page:has(.yimi-contact-paths) .single-content .yimi-section:has(.yimi-contact-paths) { padding-block-start: 1rem; gap: 1rem; }
  body.page .single-content .yimi-contact-paths { margin-block-end: 0; }
  body.page .single-content .yimi-contact-paths .yimi-inquiry-card { padding: 1.25rem; }
}
body.page .single-content #medical-support .yimi-card { padding: 1.5rem; text-align: center; }
body.page .single-content #medical-support .yimi-card__body { text-align: center; }
body.page .single-content #medical-support .yimi-card__title {
  font-size: 1.25rem; line-height: 1.28; min-height: 2.56em; text-wrap: balance;
}
@media (max-width: 47.999rem) {
  body.page .single-content #medical-support .yimi-card__title { min-height: 0; }
}
/* Two tracks keep long Business descriptions readable at intermediate widths. */
@media (min-width: 48rem) and (max-width: 75rem) {
  body.page .single-content #business-services .yimi-grid--cards { grid-template-columns: repeat(2, minmax(0, 1fr)); }
  html:lang(en) body.page .single-content #business-services .yimi-card__title { min-height: 2.56em; }
}

/* Isolated comparison only. Desktop >=1024px; retain the 1200px axis and gap. */
@media (min-width: 64rem) {
  body.page .single-content .yimi-hero .yimi-hero__inner {
    grid-template-columns: minmax(0, .93fr) minmax(0, 1.07fr);
  }
  body.page .single-content .yimi-hero .yimi-hero__content p {
    text-wrap: pretty;
  }
}

/* U07: clear inherited bottom spacing on the two News landing pages. */
body.page:has(.yimi-news-landing) #primary.content-area { margin-bottom: 0; }

/* 2026-10-12: shared Hero top spacing, white surface and column alignment. */
:root { --yimi-hero-top-space: clamp(2rem, 4vw, 3.5rem); }
body.page:has(.single-content .yimi-hero) #primary.content-area {
  margin-block-start: 0;
}
body.page .single-content .yimi-hero,
body.page:has(.yimi-contact-paths) .single-content .yimi-hero {
  padding-block-start: var(--yimi-hero-top-space);
  background: var(--yimi-color-page);
}
body.page .single-content .yimi-hero .yimi-hero__inner {
  align-items: start;
}
body.page .single-content .yimi-hero :is(.yimi-hero__content, .yimi-hero__media) {
  align-self: start;
  margin-block: 0;
}
/* Keep the complete Chinese phrase together at the two-column tablet size. */
@media (min-width: 48rem) and (max-width: 63.999rem) {
  html:lang(zh) body.page-id-165 .single-content .yimi-news-hero .yimi-hero__title {
    max-inline-size: min(100%, 8.1em);
    text-wrap: wrap;
  }
}

/* 2026-10-13 local candidates. Append to accepted f9c4265495aa CSS; no Production activation. */
/* R04: News is the current parent section, not the actual archive URL. */
#masthead a.yimi-news-section-current,
.current-menu-ancestor > a.yimi-news-section-current { color:#E31B16 !important; }
#masthead a.yimi-news-section-current { text-decoration:underline; text-underline-offset:10px; text-decoration-thickness:2px; }
#mobile-drawer a.yimi-news-section-current { color:#fff !important;text-decoration:underline;text-underline-offset:6px;text-decoration-thickness:2px; }
/* R05: small white-surface eyebrow has the existing AA action orange. */
.page-id-10 .yimi-hero__eyebrow,.page-id-11 .yimi-hero__eyebrow { color:#B85C00 !important; }
/* R06: preserve full service descriptions and body size, give long cards space. */
.page-id-6 .yimi-business-service-grid,.page-id-7 .yimi-business-service-grid { gap:24px; }
.yimi-business-readable-card .yimi-card__body { text-align:left !important; line-height:1.7; }
@media(min-width:64rem){
 .page-id-6 .yimi-business-service-grid,.page-id-7 .yimi-business-service-grid { display:block !important; }
 .page-id-6 .yimi-business-service-grid > .wp-block-group__inner-container,.page-id-7 .yimi-business-service-grid > .wp-block-group__inner-container { display:grid !important;grid-template-columns:repeat(3,minmax(0,1fr));gap:24px;width:100%; }
}
/* R11: actual ol/li structure with authored wording and visible ordered markers. */
.yimi-approach-steps { margin:20px 0 0;padding-inline-start:1.75em; }
.yimi-approach-steps li { padding-inline-start:8px;margin-block:10px; }
.yimi-approach-steps li::marker { color:#B85C00;font-weight:700; }
.yimi-approach-steps p { margin:0; }
/* R12: H2 semantics do not inherit global display-H2 visual size. */
h2.yimi-inquiry-card__title { font-size:clamp(1.25rem,1.1rem + .45vw,1.5rem) !important;line-height:1.28 !important;font-weight:600; }
/* R02/R03: permanently visible field-local detail, no extra checkbox or conditional hiding. */
.yimi-guardian-help,.yimi-input-privacy-help { font:inherit;font-size:1rem !important;line-height:1.65 !important;color:#0C3357;background:#FAF5F1;border-inline-start:3px solid #B85C00;padding:14px 16px;margin-block:12px;overflow-wrap:break-word; }
.yimi-guardian-help p { font-size:1rem !important;line-height:1.65 !important;margin:8px 0 0; }
.yimi-input-privacy-help { margin-top:0; }
/* R08: keep every notice sentence, improve scan rhythm and reading measure. */
.yimi-readable-notice { max-width:760px; margin-inline:0; }
.yimi-readable-notice p { margin:0 0 16px !important;line-height:1.7 !important; }
/* R07: retained full text; compact pre-form surfaces and checkbox rows. */
.page-id-16 .yimi-inquiry-card,.page-id-17 .yimi-inquiry-card { min-height:0 !important;padding:20px !important; }
.page-id-16 .yimi-inquiry-card > .wp-block-group__inner-container,
.page-id-17 .yimi-inquiry-card > .wp-block-group__inner-container { display:grid;grid-template-columns:40px minmax(0,1fr);gap:10px 16px;align-items:start; }
.yimi-inquiry-card__icon { grid-column:1;grid-row:1;width:40px !important;height:40px !important;margin:0 !important; }
.yimi-inquiry-card__title { grid-column:2;grid-row:1;margin:0 !important; }
.yimi-inquiry-card__body,.yimi-inquiry-card__action { grid-column:1 / -1;margin:0 !important; }
.page-id-16 .ff-el-form-check,.page-id-17 .ff-el-form-check { margin-bottom:8px !important; }
.page-id-16 .ff-el-form-check-label,.page-id-17 .ff-el-form-check-label { min-height:44px !important;display:flex;align-items:center;gap:8px; }
.page-id-16 .ff-el-form-check-label input,.page-id-17 .ff-el-form-check-label input { flex:0 0 auto; }
@media(max-width:47.999rem){
 .page-id-16 .yimi-inquiry-card,.page-id-17 .yimi-inquiry-card { padding:16px !important; }
 .page-id-16 .yimi-inquiry-grid,.page-id-17 .yimi-inquiry-grid { gap:16px !important; }
 .page-id-16 .yimi-section,.page-id-17 .yimi-section { padding-block:24px !important; }
 .page-id-16 .yimi-hero,.page-id-17 .yimi-hero { padding-bottom:16px !important; }
}
/* R13: truthful zero-post state retains six category entries and one All return. */
.yimi-empty-category-candidate .error { max-width:760px;margin:32px auto;padding:24px;border:1px solid #F0DFD3;border-radius:16px; }
/* R17: only the existing four-character phrase; no full-paragraph nowrap. */
.yimi-phrase { white-space:nowrap; }
/* R16/R18 are a separate optional view, never automatically selected. */
@media(min-width:48rem) and (max-width:63.999rem){
 .yimi-optional-visuals.page-id-6 .yimi-hero__media,.yimi-optional-visuals.page-id-7 .yimi-hero__media,
 .yimi-optional-visuals.page-id-10 .yimi-hero__media,.yimi-optional-visuals.page-id-11 .yimi-hero__media { aspect-ratio:4/3 !important; }
}
.yimi-footer-wordmark { filter:brightness(0) invert(1);width:112px;height:auto; }

/* D-046 R15: full native preparation copy follows the form and its trust strip. */
.yimi-inquiry-preparation{max-width:760px;margin:24px 0;padding:20px 24px;border-inline-start:3px solid #b85c00;background:#faf5f1;}
.yimi-inquiry-preparation h2{font-size:1.25rem!important;line-height:1.35!important;margin:0 0 12px!important;}
.yimi-inquiry-preparation p{font-size:1rem!important;line-height:1.7!important;margin:0 0 18px!important;}
.yimi-inquiry-preparation p:last-child{margin-bottom:0!important;}
/* R16 only four approved tablet Hero contexts; original raster bytes untouched. */
@media(min-width:48rem) and (max-width:63.999rem){
 :is(.page-id-6,.page-id-7,.page-id-10,.page-id-11) .yimi-hero__media{aspect-ratio:4/3!important;}
 :is(.page-id-6,.page-id-7,.page-id-10,.page-id-11) .yimi-hero__media img{width:100%!important;height:100%!important;aspect-ratio:4/3!important;object-fit:cover!important;}
}
/* R18 native bilingual Footer titles, bound to Source text-2/text-3 only. */
#colophon :is(#text-2,#text-3) .widget-title{font-family:inherit;font-size:2.625rem!important;line-height:1.05!important;font-weight:650;letter-spacing:.035em;color:#fff!important;margin-bottom:18px!important;}
/* R13 actual scoped archives, not the old fixture-only empty-state class. */
body:is(.category-111,.category-116,.category-121,.category-126,.category-131,.category-113,.category-118,.category-123,.category-128,.category-133) .search-form{max-width:32rem;margin:20px auto 0;}
@media(max-width:47.999rem){.yimi-inquiry-preparation{padding:16px 18px;}}

/* UX6 2026-10-16 native replaceable SVG image icons. */
.ux6-card-icon.wp-block-image{padding:0;border:0;line-height:0;flex-shrink:0;}
.ux6-card-icon.wp-block-image img{display:block;width:100%;height:100%;object-fit:contain;}
.yimi-footer-logo{display:block;width:120px;max-width:100%;line-height:0;margin-bottom:18px;}
.yimi-footer-logo img{display:block;width:100%;height:auto;}
/* UX6 filled archive: native multi-column list cards need one inner column. */
body.category #archive-container .loop-entry{grid-template-columns:minmax(0,1fr);}
