/* Scoped to the Service / Works refinement; tokens in work/aibo-refinement/design-system.yml. */
body:has(.aibo-hero), body:has(.works-aibo-feature) {
  --aibo-ink: oklch(0.31 0.035 170);
  --aibo-body: oklch(0.41 0.035 170);
  --aibo-muted: oklch(0.44 0.035 170);
  --aibo-paper: oklch(0.97 0.008 115);
  --aibo-soft: oklch(0.94 0.016 155);
  --aibo-line: oklch(0.81 0.022 155);
}

body.aibo-service-page.editorial-layout-v13 .aibo-hero {
  padding-block: 40px 64px;
  background: var(--aibo-paper);
}
.aibo-hero-stage {
  display: grid;
  grid-template-columns: minmax(0, 1fr) minmax(0, 1fr);
  align-items: center;
  gap: 48px;
  margin-top: 40px;
}
.aibo-hero-message { display: block; padding: 0; }
.aibo-hero-logo {
  width: 100%;
  max-width: 520px;
  margin: 0 0 0 auto;
  background: transparent;
  box-shadow: none;
}
body.aibo-service-page.editorial-layout-v13 .aibo-hero h1.aibo-reading {
  display: flex;
  align-items: center;
  gap: 24px;
  margin: 16px 0 24px;
  color: var(--aibo-ink);
  font-family: inherit;
  font-size: clamp(50px, 5vw, 72px);
  font-weight: 800;
  letter-spacing: -0.035em;
  line-height: 1.1;
  text-wrap: balance;
}
.aibo-reading span { font-size: 25px; font-weight: 600; letter-spacing: 0.12em; }
body.aibo-service-page.editorial-layout-v13 .aibo-hero .lead {
  margin: 0;
  color: var(--aibo-ink);
  font-size: clamp(25px, 2.6vw, 36px);
  line-height: 1.5;
  font-weight: 600;
}
body.aibo-service-page .aibo-hero .material-hero-link { margin-top: 24px; font-size: 16px; }

.aibo-service-page .aibo-team { margin: 0 0 80px; }
.aibo-service-page .aibo-team :is(h3,h4,p) { margin: 0; color: var(--aibo-body); }
.aibo-service-page .aibo-team :is(h3,h4) { text-wrap: balance; }
.aibo-service-page .aibo-team .aibo-team-statement {
  margin: 0 0 24px;
  color: var(--aibo-ink);
  font-size: clamp(25px, 2.6vw, 36px);
  line-height: 1.5;
  font-weight: 600;
}
.aibo-team-statement span { display: inline-block; }
.aibo-team-track {
  display: flex;
  align-items: center;
  gap: 48px;
  padding: 32px 40px;
  background: var(--aibo-ink);
}
.aibo-service-page .aibo-team-track p { color: var(--aibo-paper); font-size: 20px; line-height: 1.6; }
.aibo-service-page .aibo-team .aibo-team-count { display: flex; align-items: baseline; gap: 12px; flex-shrink: 0; }
.aibo-team-count strong { font-size: clamp(64px, 7vw, 96px); line-height: 1; font-variant-numeric: tabular-nums; letter-spacing: -0.05em; }
body.aibo-service-page.editorial-layout-v13 .aibo-team .aibo-team-count strong { color: var(--aibo-paper); }
.aibo-team-count span { font-size: 25px; font-weight: 600; }
.aibo-service-page .aibo-team .aibo-team-track-title { font-size: 25px; font-weight: 600; }
.aibo-service-page .aibo-team #team-expertise-title { margin: 40px 0 16px; font-size: 20px; font-weight: 600; }
.aibo-team-roles { display: grid; grid-template-columns: minmax(0, 1.05fr) minmax(0, 1fr); gap: 0 40px; }
.aibo-team-roles article { padding: 24px 0; border-top: 1px solid var(--aibo-line); }
.aibo-team-research { grid-row: span 2; }
.aibo-service-page .aibo-team-roles h4 { margin: 0 0 16px; color: var(--aibo-muted); font-size: 16px; font-weight: 600; }
.aibo-service-page .aibo-team .aibo-team-university { margin: 0 0 12px; color: var(--aibo-ink); font-size: clamp(32px, 3vw, 40px); font-weight: 700; line-height: 1.4; }
.aibo-service-page .aibo-team .aibo-team-focus { color: var(--aibo-ink); font-size: clamp(20px, 1.9vw, 25px); font-weight: 600; line-height: 1.6; }
.aibo-service-page .aibo-team-roles p { font-size: 16px; line-height: 1.9; }
.aibo-service-page .aibo-team .aibo-team-faculty { margin-top: 8px; }
.aibo-service-page .aibo-team .aibo-team-detail { margin-top: 24px; padding-top: 16px; border-top: 1px solid var(--aibo-line); }
.aibo-team-field {
  display: grid;
  grid-template-columns: minmax(0, 1fr) minmax(0, 1fr);
  gap: 40px;
  margin-top: 32px;
  padding: 32px;
  background: var(--aibo-soft);
}
.aibo-service-page .aibo-team-field h3 { color: var(--aibo-ink); font-size: clamp(20px, 2.1vw, 28px); line-height: 1.7; font-weight: 600; }
.aibo-service-page .aibo-team-field p { font-size: 16px; line-height: 1.8; }
.aibo-service-page .aibo-team .aibo-team-field-role { margin-bottom: 16px; font-size: 20px; }
.aibo-team-collaboration { margin: 0; align-self: center; }
.aibo-team-collaboration img { display: block; width: 100%; max-width: 520px; height: auto; margin-inline: auto; mix-blend-mode: multiply; }
body.aibo-service-page.editorial-layout-v13 .aibo-material-cover {
  width: min(100%, 560px);
  margin: 32px 0 24px;
  padding: 0;
  aspect-ratio: 1672 / 941;
}
body.aibo-service-page.editorial-layout-v13 .aibo-material-cover img {
  display: block;
  width: 100%;
  height: auto;
  aspect-ratio: 1672 / 941;
  mix-blend-mode: normal;
  max-width: none;
  border: 1px solid var(--aibo-line);
}

body.editorial-v23.editorial-layout-v13 .works-aibo-feature {
  margin: 0 0 80px;
  padding: 0 0 48px;
  border-top: 0;
  border-bottom: 1px solid var(--aibo-line);
}
body.editorial-v23 .works-aibo-feature .dx-layered-heading { align-items: center; justify-content: flex-start; gap: 24px; margin-bottom: 24px; }
body.editorial-v23 .works-aibo-feature .aibo-work-label p { margin: 0 0 8px; color: var(--aibo-muted); font-size: 12px; letter-spacing: 0.14em; }
body.editorial-v23 .works-aibo-feature .aibo-work-label h2 { margin: 0; color: var(--aibo-ink); font-size: 25px; line-height: 1.4; font-weight: 600; text-wrap: balance; }
.aibo-work-brand { display: block; width: 184px; height: auto; }

@media (max-width: 780px) {
  body.aibo-service-page.editorial-layout-v13 .aibo-hero { padding-block: 24px 40px; }
  .aibo-hero-stage { grid-template-columns: minmax(0, 1fr); gap: 24px; margin-top: 24px; }
  .aibo-hero-logo { max-width: 440px; margin: 0; }
  body.aibo-service-page.editorial-layout-v13 .aibo-hero h1.aibo-reading { margin: 16px 0; font-size: 50px; gap: 16px; }
  .aibo-reading span { font-size: 20px; }
  body.aibo-service-page.editorial-layout-v13 .aibo-hero .lead { font-size: 25px; }
  .aibo-team-track { flex-direction: column; align-items: flex-start; gap: 16px; padding: 24px; }
  .aibo-service-page .aibo-team-track p { font-size: 16px; }
  .aibo-service-page .aibo-team .aibo-team-track-title { font-size: 20px; }
  .aibo-team-roles, .aibo-team-field { grid-template-columns: minmax(0, 1fr); gap: 0; }
  .aibo-team-research { grid-row: auto; }
  .aibo-team-field { margin-top: 16px; padding: 24px; gap: 24px; }
  .aibo-service-page .aibo-team .aibo-team-field-role { font-size: 16px; }
  .aibo-service-page .aibo-team { margin-bottom: 48px; }
  .aibo-team-collaboration img { max-width: 400px; }
  body.editorial-v23.editorial-layout-v13 .works-aibo-feature { margin-bottom: 48px; padding-bottom: 32px; }
  body.editorial-v23 .works-aibo-feature .dx-layered-heading { flex-wrap: nowrap; gap: 16px; }
  body.editorial-v23 .works-aibo-feature .aibo-work-label h2 { font-size: 20px; }
  .aibo-work-brand { width: 128px; }
}
