/* KITAVI inner-page compositions. All colors and type inherit approved tokens. */
.inner-page { --inner-surface: var(--ds-white); }
.inner-page :is(.inner-section[id], .inner-hero[id], #dat-lich) { scroll-margin-block-start: 6rem; }
.inner-page .inner-hero { background: var(--ds-cream); border-block-end: 1px solid var(--ds-line); }
.inner-page .inner-hero-grid { display: grid; grid-template-columns: minmax(0, 1.02fr) minmax(0, .98fr); align-items: stretch; gap: var(--ds-space-5); }
.inner-page .inner-hero-copy { padding-block: clamp(2rem, 5vw, 5rem); align-self: center; min-inline-size: 0; }
.inner-page .inner-hero-copy h1 { margin-block: var(--ds-space-3); max-inline-size: 17ch; text-wrap: balance; }
.inner-page .inner-hero-copy > p, .inner-page .inner-lead { max-inline-size: 56ch; color: var(--ds-muted); }
.inner-page .inner-hero-copy .ds-row { margin-block-start: var(--ds-space-4); }
.inner-page .inner-breadcrumb { margin-block-end: var(--ds-space-2); font-size: var(--ds-type-caption); color: var(--ds-muted); }
.inner-page .inner-breadcrumb :is(ol, ul) { display: flex; flex-wrap: wrap; gap: .35rem .6rem; padding: 0; margin: 0; list-style: none; }
.inner-page .inner-breadcrumb a { color: var(--ds-ink); }
.inner-page .inner-breadcrumb [aria-current] { color: var(--ds-muted); }
.inner-page .inner-hero-media { position: relative; min-inline-size: 0; margin: 0; overflow: hidden; min-block-size: 31rem; align-self: stretch; }
.inner-page .inner-hero-media > img { inline-size: 100%; block-size: 100%; min-block-size: inherit; object-fit: cover; position: absolute; inset: 0; }
.inner-page .inner-image-label { position: absolute; z-index: 3; inset: auto auto var(--ds-space-2) var(--ds-space-2); display: inline-flex; align-items: center; max-inline-size: calc(100% - 2rem); padding: .35rem .65rem; color: var(--ds-cream); background: var(--ds-neutral-900); border-radius: var(--ds-radius-sm); font-size: var(--ds-type-caption); font-weight: 600; line-height: 1.35; }
.inner-page .inner-photo { position: relative; margin: 0; min-inline-size: 0; overflow: hidden; border-radius: var(--ds-radius-md); }
.inner-page .inner-photo > img { display: block; inline-size: 100%; block-size: auto; }
.inner-page .inner-section { padding-block: clamp(2.7rem, 5.3vw, 5rem); border-block-end: 1px solid var(--ds-line); }
.inner-page .inner-section--tint, .inner-page .inner-section:nth-of-type(even) { background: var(--ds-primary-50); }
.inner-page .section-intro, .inner-page .inner-section-heading { margin-block-end: var(--ds-space-4); max-inline-size: 65ch; }
.inner-page :is(.section-intro, .inner-section-heading) h2 { margin-block: var(--ds-space-1) var(--ds-space-2); }
.inner-page :is(.section-intro, .inner-section-heading) > p:not(.ds-eyebrow) { color: var(--ds-muted); }
.inner-page :is(.inner-issue-grid, .inner-solution-grid, .inner-story-grid, .inner-related-grid, .inner-project-grid) { display: grid; grid-template-columns: repeat(3, minmax(0, 1fr)); gap: var(--ds-grid-gap); }
.inner-page :is(.inner-issue-card, .inner-solution-grid > article, .inner-story-grid > article, .inner-story-grid > div) { min-inline-size: 0; padding: var(--ds-space-3); color: var(--ds-ink); background: var(--ds-white); border: 1px solid var(--ds-line); border-radius: var(--ds-radius-md); }
.inner-page :is(.inner-issue-card, .inner-solution-grid > article, .inner-story-grid > article, .inner-story-grid > div) h3 { margin-block: var(--ds-space-2) var(--ds-space-1); font-size: var(--ds-type-h4); }
.inner-page :is(.inner-issue-card, .inner-solution-grid > article, .inner-story-grid > article, .inner-story-grid > div) p { font-size: var(--ds-type-body); color: var(--ds-muted); }
.inner-page .inner-issue-card > svg { inline-size: 2rem; block-size: 2rem; stroke: currentColor; }
.inner-page .inner-solution-grid { grid-template-columns: repeat(2, minmax(0, 1fr)); }
.inner-page .inner-solution-grid article { border-block-start: 3px solid var(--ds-primary-500); }
.inner-page .inner-price-layout { display: grid; grid-template-columns: minmax(0, .85fr) minmax(0, 1.15fr); align-items: start; gap: var(--ds-space-6); }
.inner-page .inner-price-layout > * { min-inline-size: 0; }
.inner-page .inner-price-layout .section-intro { margin: 0; }
.inner-page .inner-price-layout .table-wrap { inline-size: 100%; }
.inner-page .inner-price-note { margin-block-start: var(--ds-space-2); font-size: var(--ds-type-caption); color: var(--ds-muted); }
.inner-page .inner-materials { display: flex; flex-wrap: wrap; align-items: center; gap: var(--ds-space-2); margin: 0; padding: 0; list-style: none; }
.inner-page .inner-materials > * { padding: .6rem 1rem; border: 1px solid var(--ds-line); border-radius: var(--ds-radius-sm); background: var(--ds-white); color: var(--ds-ink); font-weight: 700; }
.inner-page .inner-materials + p { max-inline-size: 66ch; margin-block-start: var(--ds-space-2); color: var(--ds-muted); font-size: var(--ds-type-caption); }
.inner-page :is(.inner-project-card, .inner-related-card) { position: relative; min-inline-size: 0; overflow: hidden; display: block; color: var(--ds-ink); background: var(--ds-white); border: 1px solid var(--ds-line); border-radius: var(--ds-radius-md); text-decoration: none; transition: border-color var(--ds-motion-standard) var(--ds-ease), box-shadow var(--ds-motion-standard) var(--ds-ease); }
.inner-page :is(.inner-project-card, .inner-related-card):hover { border-color: var(--ds-neutral-600); box-shadow: var(--ds-shadow-1); }
.inner-page :is(.inner-project-card, .inner-related-card) > a { display: block; block-size: 100%; text-decoration: none; }
.inner-page :is(.inner-project-card, .inner-related-card) img { inline-size: 100%; block-size: auto; aspect-ratio: 1.6; object-fit: cover; }
.inner-page :is(.inner-project-card, .inner-related-card) :is(.inner-photo, figure) { border-radius: 0; }
.inner-page :is(.inner-project-card, .inner-related-card) .inner-image-label { inset: auto auto var(--ds-space-1) var(--ds-space-1); font-size: .75rem; }
.inner-page :is(.inner-card-body, .inner-project-card .card-body, .inner-related-card .card-body) { padding: var(--ds-space-3); }
.inner-page :is(.inner-project-card, .inner-related-card) h3 { margin-block: .5rem; font-size: var(--ds-type-h4); }
.inner-page :is(.inner-project-card, .inner-related-card) :is(p, small) { color: var(--ds-muted); font-size: var(--ds-type-caption); }
.inner-page .inner-card-body > :last-child { margin-block-end: 0; }
.inner-page .inner-faq { display: grid; gap: var(--ds-space-1); max-inline-size: 58rem; }
.inner-page .inner-faq details { padding: 0; color: var(--ds-ink); border: 1px solid var(--ds-line); border-radius: var(--ds-radius-sm); background: var(--ds-white); }
.inner-page .inner-faq summary { padding: var(--ds-space-2); cursor: pointer; font-weight: 700; line-height: 1.45; }
.inner-page .inner-faq details > :not(summary) { padding: 0 var(--ds-space-2) var(--ds-space-2); margin: 0; color: var(--ds-muted); }
.inner-page .inner-contact { color: var(--ds-cream); background: var(--ds-neutral-700); padding-block: clamp(3rem, 6vw, 5rem); }
.inner-page .inner-contact-grid { display: grid; grid-template-columns: minmax(0, .85fr) minmax(0, 1.15fr); gap: var(--ds-space-6); align-items: start; }
.inner-page .inner-contact h2 { color: var(--ds-cream); margin-block: var(--ds-space-1) var(--ds-space-2); }
.inner-page .inner-contact :is(.ds-eyebrow, .inner-lead) { color: var(--ds-cream); }
.inner-page .inner-contact .ds-row { margin-block-start: var(--ds-space-3); }
.inner-page .inner-contact .contact-form, .inner-page .inner-contact .inner-form-panel { padding: var(--ds-space-3); color: var(--ds-ink); background: var(--ds-white); border: 1px solid var(--ds-line); border-radius: var(--ds-radius-lg); }
.inner-page .inner-contact .form-status, .inner-page .inner-form-note { color: var(--ds-muted); font-size: var(--ds-type-caption); }
.inner-page .inner-contact .ds-button--secondary { background: var(--ds-cream); color: var(--ds-ink); }
.inner-page .inner-contact :focus-visible { outline-color: var(--ds-focus-on-dark); }
.inner-page .inner-contact :is(form, .inner-form-panel) :focus-visible { outline-color: var(--ds-focus); }
.inner-page .inner-meta { display: grid; grid-template-columns: repeat(4, minmax(0, 1fr)); gap: var(--ds-space-2); padding: var(--ds-space-3); margin: 0; background: var(--ds-white); border: 1px solid var(--ds-line); border-radius: var(--ds-radius-md); }
.inner-page .inner-meta > div { min-inline-size: 0; padding-inline-start: var(--ds-space-2); border-inline-start: 2px solid var(--ds-primary-500); }
.inner-page .inner-meta :is(dt, .inner-meta-label) { margin: 0; color: var(--ds-muted); font-size: var(--ds-type-caption); }
.inner-page .inner-meta :is(dd, .inner-meta-value) { margin: .4rem 0 0; font-weight: 700; font-size: var(--ds-type-body); }
.inner-page .inner-hero .inner-meta { grid-template-columns: repeat(2, minmax(0, 1fr)); margin-block-start: var(--ds-space-4); }
.inner-page .inner-sample-note { padding: var(--ds-space-2) var(--ds-space-3); border-inline-start: 3px solid var(--ds-primary-500); background: var(--ds-white); color: var(--ds-muted); max-inline-size: 74ch; font-size: var(--ds-type-caption); margin-block-start: var(--ds-space-3); }
.inner-page .inner-comparison { max-inline-size: 64rem; margin-inline: auto; }
.inner-page .inner-comparison .compare, .inner-page.project-page .compare { aspect-ratio: 16 / 11; min-block-size: 0; border-radius: var(--ds-radius-md); }
.inner-page .compare .inner-image-label { inset-block-start: auto; inset-inline-start: var(--ds-space-2); inset-block-end: var(--ds-space-2); }
.inner-page .inner-gallery { display: grid; grid-template-columns: repeat(2, minmax(0, 1fr)); gap: var(--ds-grid-gap); }
.inner-page .inner-gallery .inner-photo { background: var(--ds-white); border: 1px solid var(--ds-line); }
.inner-page .inner-gallery button[data-inner-lightbox] { display: block; position: relative; inline-size: 100%; margin: 0; padding: 0; border: 0; border-radius: inherit; background: transparent; cursor: zoom-in; color: inherit; }
.inner-page .inner-gallery img { inline-size: 100%; block-size: auto; aspect-ratio: 16 / 11; object-fit: cover; }
.inner-page .inner-gallery figcaption { padding: var(--ds-space-2); font-size: var(--ds-type-caption); font-weight: 600; }
.inner-page .inner-gallery .inner-image-label { pointer-events: none; }
.inner-page .inner-gallery button::after { content: "Xem ảnh lớn"; position: absolute; inset: var(--ds-space-2) var(--ds-space-2) auto auto; padding: .35rem .65rem; border-radius: var(--ds-radius-sm); background: var(--ds-white); color: var(--ds-ink); font-size: var(--ds-type-caption); font-weight: 600; }
.inner-page #inner-lightbox { inline-size: min(72rem, calc(100vw - 2rem)); max-inline-size: none; max-block-size: calc(100dvh - 2rem); padding: var(--ds-space-2); color: var(--ds-ink); background: var(--ds-white); border: 1px solid var(--ds-line); border-radius: var(--ds-radius-lg); box-shadow: var(--ds-shadow-3); }
.inner-page #inner-lightbox::backdrop { background: var(--ds-neutral-900); opacity: .88; }
.inner-page .inner-lightbox-toolbar { display: flex; justify-content: space-between; gap: var(--ds-space-2); align-items: center; margin-block-end: var(--ds-space-1); }
.inner-page #inner-lightbox [data-inner-lightbox-close] { margin-inline-start: auto; }
.inner-page #inner-lightbox figure { position: relative; margin: 0; }
.inner-page #inner-lightbox img { inline-size: 100%; max-block-size: calc(100dvh - 10rem); object-fit: contain; block-size: auto; background: var(--ds-cream); }
.inner-page #inner-lightbox [data-inner-lightbox-caption] { margin-block-start: var(--ds-space-1); color: var(--ds-muted); font-size: var(--ds-type-caption); }
.inner-page .inner-inline-links { display: flex; flex-wrap: wrap; align-items: center; gap: var(--ds-space-2); margin-block-start: var(--ds-space-3); }
.inner-page :is(.inner-photo, .inner-issue-card, .inner-related-card, .inner-project-card) { overflow-wrap: break-word; }
@media (min-width: 1200px) {
  .inner-page .inner-hero-media { margin-inline-end: calc((min(var(--ds-container), 100vw - 2 * var(--ds-gutter)) - 100vw) / 2); border-inline-start: 4px solid var(--ds-primary-500); }
}
@media (max-width: 960px) {
  .inner-page .inner-hero-grid { gap: var(--ds-space-3); grid-template-columns: minmax(0, 1fr) minmax(0, .92fr); }
  .inner-page .inner-hero-copy { padding-block: var(--ds-space-5); }
  .inner-page .inner-hero-media { min-block-size: 29rem; }
  .inner-page :is(.inner-price-layout, .inner-contact-grid) { gap: var(--ds-space-4); }
}
@media (max-width: 720px) {
  .inner-page .inner-hero-grid { grid-template-columns: 1fr; gap: 0; }
  .inner-page .inner-hero-copy { padding-block: var(--ds-space-4); }
  .inner-page .inner-hero-copy h1 { max-inline-size: 19ch; }
  .inner-page .inner-hero-media { min-block-size: 0; aspect-ratio: 1.4; margin-inline: calc(-1 * var(--ds-gutter)); border-block-start: 4px solid var(--ds-primary-500); }
  .inner-page .inner-hero-media > img { position: static; block-size: 100%; }
  .inner-page .inner-section { padding-block: var(--ds-space-5); }
  .inner-page :is(.inner-issue-grid, .inner-story-grid) { grid-template-columns: 1fr; }
  .inner-page :is(.inner-solution-grid, .inner-related-grid, .inner-project-grid) { grid-template-columns: repeat(2, minmax(0, 1fr)); }
  .inner-page :is(.inner-price-layout, .inner-contact-grid) { grid-template-columns: 1fr; gap: var(--ds-space-3); }
  .inner-page .inner-meta { grid-template-columns: repeat(2, minmax(0, 1fr)); }
  .inner-page .inner-meta > div { padding-inline-start: var(--ds-space-1); }
  .inner-page :is(.inner-card-body, .inner-project-card .card-body, .inner-related-card .card-body) { padding: var(--ds-space-2); }
  .inner-page :is(.inner-project-card, .inner-related-card) h3 { font-size: var(--ds-type-body); }
  .inner-page .inner-gallery { gap: var(--ds-space-2); }
  .inner-page .inner-gallery button::after { content: ""; display: none; }
  .inner-page .inner-gallery .inner-image-label { inset: auto auto var(--ds-space-1) var(--ds-space-1); font-size: .72rem; padding: .25rem .4rem; }
  .inner-page .inner-gallery figcaption { padding: var(--ds-space-1); }
}
@media (max-width: 380px) {
  .inner-page :is(.inner-solution-grid, .inner-related-grid, .inner-project-grid) { grid-template-columns: 1fr; }
  .inner-page .inner-hero-copy .ds-row > .ds-button { flex: 1 1 auto; }
}
@media (prefers-reduced-motion: reduce) {
  .inner-page *, .inner-page *::before, .inner-page *::after { scroll-behavior: auto !important; }
}

/* Shared service and project additions. */
.inner-page .inner-hero-note { display: flex; align-items: flex-start; gap: var(--ds-space-1); margin-block-start: var(--ds-space-3); color: var(--ds-muted); font-size: var(--ds-type-caption); }
.inner-page .inner-hero-note svg { flex: none; inline-size: 1.1rem; block-size: 1.1rem; margin-block-start: .15rem; }
.inner-page .inner-note { margin-block-start: var(--ds-space-2); color: var(--ds-muted); font-size: var(--ds-type-caption); max-inline-size: 78ch; }
.inner-page .inner-text-link { display: inline-flex; align-items: center; gap: .45rem; inline-size: fit-content; font-weight: 700; font-size: var(--ds-type-caption); text-underline-offset: .2em; }
.inner-page .inner-text-link svg { inline-size: 1.1rem; block-size: 1.1rem; }
.inner-page .inner-actions { margin-block-start: var(--ds-space-3); }
.inner-page .inner-hero-copy > .inner-text-link { margin-block-start: var(--ds-space-2); }
.inner-page .inner-hero-photo { position: relative; min-block-size: 31rem; margin: 0; align-self: stretch; border-radius: 0; }
.inner-page .inner-hero-photo > img { position: absolute; inset: 0; inline-size: 100%; block-size: 100%; object-fit: cover; }
.inner-page .inner-hero-photo .inner-image-label { inset: var(--ds-space-2) auto auto var(--ds-space-2); }
.inner-page .inner-hero-photo figcaption { position: absolute; inset: auto 0 0; padding: var(--ds-space-2); color: var(--ds-cream); background: var(--ds-neutral-900); font-size: var(--ds-type-caption); }
.inner-page .inner-section--compact { padding-block: var(--ds-space-4); }
.inner-page .inner-section--dark { --ds-local-focus: var(--ds-focus-on-dark); color: var(--ds-cream); background: var(--ds-neutral-700); }
.inner-page .inner-section--dark :is(.ds-eyebrow, .inner-lead, .inner-note) { color: var(--ds-cream); }
.inner-page .inner-section--dark .home-timeline { margin-block-start: var(--ds-space-3); }
.inner-page .inner-section--dark .home-timeline li { color: var(--ds-cream); background: var(--ds-neutral-800); }
.inner-page .inner-section--dark .home-timeline :is(p, .home-step-time) { color: var(--ds-neutral-200); }
.inner-page .inner-section-heading { display: flex; justify-content: space-between; align-items: end; gap: var(--ds-space-4); max-inline-size: none; }
.inner-page .inner-section-heading > div { max-inline-size: 38rem; }
.inner-page .inner-section-heading > p { max-inline-size: 44ch; }
.inner-page .inner-split, .inner-page .inner-cta-grid { display: grid; grid-template-columns: minmax(0, .85fr) minmax(0, 1.15fr); gap: var(--ds-space-6); align-items: start; }
.inner-page .inner-split h2 { margin-block: var(--ds-space-1) var(--ds-space-2); }
.inner-page .inner-story-label { display: inline-flex; padding: .3rem .7rem; border-radius: var(--ds-radius-pill); color: var(--ds-ink); background: var(--ds-primary-100); font-size: var(--ds-type-caption); font-weight: 700; }
.inner-page .inner-check-list { list-style: none; margin: 0; padding: 0; display: grid; gap: var(--ds-space-2); }
.inner-page .inner-check-list li { display: flex; gap: var(--ds-space-1); align-items: flex-start; }
.inner-page .inner-check-list svg { flex: none; inline-size: 1.3rem; block-size: 1.3rem; margin-block-start: .15rem; }
.inner-page .inner-card-media { position: relative; margin: 0; }
.inner-page :is(.inner-project-card, .inner-related-card) { padding: 0; }
.inner-page .inner-related-body { padding: var(--ds-space-3); }
.inner-page .inner-gallery button::after { content: none; }
.inner-page .inner-gallery-action { position: absolute; inset: var(--ds-space-2) var(--ds-space-2) auto auto; padding: .35rem .65rem; border-radius: var(--ds-radius-sm); background: var(--ds-white); color: var(--ds-ink); font-size: var(--ds-type-caption); font-weight: 600; }
.inner-page .inner-cta h2 { color: var(--ds-cream); margin-block: var(--ds-space-1) var(--ds-space-2); }
.inner-page .inner-cta-actions { display: grid; justify-items: start; gap: var(--ds-space-2); align-self: center; padding-inline-start: var(--ds-space-4); border-inline-start: 1px solid var(--ds-neutral-500); }
.inner-page .inner-cta-actions .ds-button--secondary { color: var(--ds-ink); background: var(--ds-cream); }
.inner-page .inner-cta-actions .inner-text-link { color: var(--ds-cream); }
.inner-page .inner-contact .inner-contact-panel { color: var(--ds-ink); background: var(--ds-white); }
.inner-page .inner-contact .contact-form { border: 0; padding: 0; }
.inner-page .inner-contact-panel :focus-visible { outline-color: var(--ds-focus); }
.inner-page .inner-lightbox-head { display: flex; align-items: center; justify-content: space-between; gap: var(--ds-space-2); margin-block-end: var(--ds-space-2); }
@media (min-width: 1200px) {
  .inner-page .inner-hero-photo { margin-inline-end: calc((min(var(--ds-container), 100vw - 2 * var(--ds-gutter)) - 100vw) / 2); border-inline-start: 4px solid var(--ds-primary-500); }
}
@media (max-width: 720px) {
  .inner-page .inner-hero-photo { min-block-size: 0; aspect-ratio: 1.4; margin-inline: calc(-1 * var(--ds-gutter)); border-block-start: 4px solid var(--ds-primary-500); }
  .inner-page .inner-hero-photo > img { position: static; block-size: 100%; }
  .inner-page .inner-section-heading { display: grid; gap: var(--ds-space-2); align-items: start; }
  .inner-page .inner-section-heading > p { max-inline-size: 66ch; }
  .inner-page .inner-split, .inner-page .inner-cta-grid { grid-template-columns: 1fr; gap: var(--ds-space-3); }
  .inner-page .inner-cta-actions { padding: 0; border: 0; }
  .inner-page .inner-related-body { padding: var(--ds-space-2); }
  .inner-page .inner-gallery-action { display: none; }
}

.inner-page #lien-he.inner-contact { color: var(--ds-cream); background: var(--ds-neutral-700); }
.inner-page #lien-he.inner-contact :is(h2, .ds-eyebrow, .inner-lead) { color: var(--ds-cream); }
.inner-page #lien-he.inner-contact :is(form, .inner-contact-panel) { color: var(--ds-ink); background: var(--ds-white); }

.inner-page .inner-related-card > a.inner-photo { block-size: auto; }
.inner-page .inner-related-card .inner-related-body { display: block; }
.inner-page .inner-section.inner-section--dark.inner-cta { color: var(--ds-cream); background: var(--ds-neutral-700); }
.inner-page .inner-section--dark .home-timeline li :is(p, .home-step-time) { color: var(--ds-neutral-200); }

.inner-page .inner-section.inner-section--dark :is(.section-intro, .inner-section-heading) > p { color: var(--ds-cream); }
.inner-page .inner-section.inner-section--dark > .ds-container > :is(p, .inner-lead) { color: var(--ds-cream); }

/* Phase 4, milestone 2: shared service and project refinements. */
.inner-page .inner-service-trust { padding-block: var(--ds-space-3); color: var(--ds-ink); background: var(--ds-white); border-block-end: 1px solid var(--ds-line); }
.inner-page .inner-service-trust .home-trust-grid { display: grid; grid-template-columns: repeat(4, minmax(0, 1fr)); gap: var(--ds-space-3); }
.inner-page .inner-service-trust .home-trust-item { display: flex; align-items: flex-start; gap: var(--ds-space-2); min-inline-size: 0; }
.inner-page .inner-service-trust .home-trust-item > svg { flex: none; inline-size: 1.5rem; block-size: 1.5rem; color: var(--ds-primary-700); }
.inner-page .inner-service-trust .home-trust-item h3 { margin: 0 0 var(--ds-space-1); font-size: var(--ds-type-body); }
.inner-page .inner-service-trust .home-trust-item p { margin: 0; color: var(--ds-muted); font-size: var(--ds-type-caption); }
.inner-page .inner-warranty-note { margin-block: var(--ds-space-2); padding: var(--ds-space-2); color: var(--ds-ink); background: var(--ds-primary-50); border-inline-start: 3px solid var(--ds-primary-500); font-size: var(--ds-type-caption); }
.inner-page .inner-workshop-grid { display: grid; grid-template-columns: minmax(0, 1.15fr) minmax(0, .85fr); align-items: center; gap: var(--ds-space-4); }
.inner-page .inner-workshop-grid > * { min-inline-size: 0; }
.inner-page .inner-workshop-grid .inner-photo img { inline-size: 100%; block-size: auto; aspect-ratio: 16 / 11; object-fit: cover; }
.inner-page .inner-gallery-grid { display: grid; grid-template-columns: repeat(3, minmax(0, 1fr)); gap: var(--ds-grid-gap); margin-block-start: var(--ds-space-3); }
.inner-page .inner-gallery-grid img { inline-size: 100%; block-size: auto; aspect-ratio: 16 / 11; object-fit: cover; }
.inner-page .inner-gallery-grid figcaption { padding: var(--ds-space-2); color: var(--ds-ink); background: var(--ds-white); font-size: var(--ds-type-caption); }
.inner-page .inner-project-grid--centered { display: flex; flex-wrap: wrap; justify-content: center; align-items: stretch; }
.inner-page .inner-project-grid--centered > * { flex: 0 1 calc((100% - 2 * var(--ds-grid-gap)) / 3); min-inline-size: 0; }
.inner-page .inner-gallery--five { grid-template-columns: repeat(6, minmax(0, 1fr)); }
.inner-page .inner-gallery--five > * { grid-column: span 2; }
.inner-page .inner-gallery--five > :nth-child(-n+2) { grid-column: span 3; }
.inner-page :is(.inner-text-link, .inner-gallery button[data-inner-lightbox], .home-footer-grid ul a) { min-block-size: 3rem; }
.inner-page .home-footer-grid ul a { display: inline-flex; align-items: center; overflow-wrap: anywhere; }
.inner-page :is(.inner-project-card, .inner-related-card) > a.inner-photo { block-size: auto; }
.inner-page .inner-section.inner-section--dark { color: var(--ds-cream); background: var(--ds-neutral-700); }
@media (min-width: 1000px) {
  .inner-page .inner-solution-grid { grid-template-columns: repeat(3, minmax(0, 1fr)); }
}
@media (max-width: 960px) {
  .inner-page .inner-service-trust .home-trust-grid { grid-template-columns: repeat(2, minmax(0, 1fr)); }
  .inner-page .inner-project-grid--centered > * { flex-basis: calc((100% - var(--ds-grid-gap)) / 2); }
}
@media (max-width: 720px) {
  .inner-page .inner-workshop-grid { grid-template-columns: 1fr; gap: var(--ds-space-3); }
  .inner-page .inner-gallery-grid { grid-template-columns: 1fr; }
}
@media (max-width: 480px) {
  .inner-page .inner-solution-grid { grid-template-columns: 1fr; }
  .inner-page .inner-service-trust .home-trust-grid { grid-template-columns: 1fr; gap: var(--ds-space-2); }
  .inner-page .inner-project-grid--centered > * { flex-basis: 100%; }
  .inner-page .inner-gallery--five { grid-template-columns: 1fr; }
  .inner-page .inner-gallery--five > * { grid-column: auto; }
  .inner-page .inner-gallery--five > :nth-child(-n+2) { grid-column: auto; }
}

/* Keep workshop benefits readable beside the principal image. */
.inner-page .inner-workshop-grid .inner-issue-grid { grid-template-columns: 1fr; }
