/* Reflow the desktop presentation into a readable touch document. */
.profile-canvas :is(#project-4, #project-5) .project-copy-break--mobile { display: none; }
.mobile-contact { display: none; }
.design-price-label-mobile { display: none; }
.design-statement-break-mobile { display: none; }
.project-copy-wrap-mobile { display: none !important; }
.ongoing-summary-mobile { display: none; }
.withheld-break-mobile { display: none; }
.profile-canvas .about-bridge__orb--h { display: none; }
.profile-canvas .about-bridge__orb--i { display: none; }
.mobile-menu-toggle { display: none; }
.mobile-menu:not([open]) { display: none; }
.mobile-menu {
  position: fixed; inset: 0 0 0 auto; width: min(100%, max(75%, 280px)); height: 100dvh;
  box-sizing: border-box;
  max-width: none; max-height: none; margin: 0; border: 0;
  padding: max(20px, env(safe-area-inset-top)) 20px max(24px, env(safe-area-inset-bottom));
  background: #f7fafc; color: #162a43; overflow-y: auto; overscroll-behavior: contain;
  font-family: inherit;
}
.mobile-menu[open] { display: flex; flex-direction: column; animation: mobile-menu-enter 220ms ease-out; }
.mobile-menu::backdrop { background: rgb(22 42 67 / 28%); }
@keyframes mobile-menu-enter { from { transform: translateX(100%); } to { transform: translateX(0); } }
@media (prefers-reduced-motion: reduce) { .mobile-menu[open] { animation: none; } }
.mobile-menu__top { position: absolute; top: max(20px, env(safe-area-inset-top)); right: 20px; z-index: 1; }
.mobile-menu__brand { --menu-mark-h: 21px; display: inline-flex; align-items: center; gap: 6px; color: var(--color-primary, #76b7fb); }
.mobile-menu__brand .type-eyebrow__logo { width: calc(var(--menu-mark-h) * 30 / 21); height: var(--menu-mark-h); transform: translateY(1px); }
.mobile-menu__wordmark { font-size: calc(var(--menu-mark-h) - 5pt); font-weight: 700; line-height: 1; letter-spacing: 0; }
@media (max-width: 900px) { .mobile-menu__brand { --menu-mark-h: 18px; } }
.mobile-menu__close, .mobile-menu-toggle { width: 48px; height: 48px; padding: 0; border: 0; background: transparent; color: #162a43; font-size: 30px; cursor: pointer; flex: 0 0 48px; }
.mobile-menu__close { width: 44px; height: 44px; flex-basis: 44px; font-size: 24px; }
.mobile-menu__top, .mobile-menu__links, .mobile-menu__footer { flex-shrink: 0; }
.mobile-menu__links { display: grid; gap: 0; padding: 0 0 16px; }
.mobile-menu__links a:first-child { padding-right: 52px; }
.mobile-menu__links a { padding: 8px 0; min-height: 44px; color: #162a43; font-size: 30px; font-weight: 600; line-height: 1.2; text-decoration: none; letter-spacing: 0; }
.mobile-menu__links a[aria-current] { color: #247ac8; }
.mobile-menu__footer :is(.mobile-menu__whatsapp, .mobile-menu__website) { justify-self: start; }
.mobile-menu__footer { display: grid; gap: 8px; margin-top: 0; }
.mobile-menu__contact-row { display: grid; grid-template-columns: 4.5em minmax(0, 1fr); align-items: center; gap: 8px; min-height: 24px; color: #34516c; font-size: 11px; line-height: 16px; }
.mobile-menu__contact-row strong { font-weight: 500; }
.mobile-menu__contact-row > :last-child { min-width: 0; }
.mobile-menu__website + .mobile-menu__contact-row { margin-top: 8px; padding-top: 16px; border-top: 1px solid #dce4eb; }
.mobile-menu__footer a { padding: 12px 0; color: #34516c; font-size: 14px; overflow-wrap: anywhere; }
.mobile-menu__footer .mobile-menu__contact-row a { padding: 4px 0; font-size: inherit; line-height: inherit; text-decoration: none; }
.mobile-menu :focus-visible, .mobile-menu-toggle:focus-visible { outline: 2px solid #247ac8; outline-offset: 4px; }
@media (max-width: 1023px) {
  html.profile-html.profile-canvas-active,
  body.profile-canvas-active { overflow-x: clip; overflow-y: visible; }
  #smooth-wrapper { overflow: clip !important; }
  .profile-scale-root,
  .profile-canvas-wrapper {
    width: 100%;
    min-width: 0;
    max-width: 100%;
    margin-inline: 0;
    overflow: clip;
  }
  .profile-canvas :is(#project-4, #project-5) .project-copy-break--mobile { display: inline; }
  .profile-canvas :is(#project-4, #project-5) .project-copy-break--desktop { display: none; }
  .mobile-menu__top { font-size: 16px; }
  .mobile-menu__links a { display: flex; align-items: center; box-sizing: border-box; min-height: 48px; font-size: 20px; overflow-wrap: anywhere; }
  .mobile-menu__footer a { font-size: 12px; }
  .profile-canvas {
    --page-left: 20px;
    --page-rail: 20px;
    --page-content-width: calc(100% - 40px);
    --page-content-max: 100%;
    --section-screen: 100svh;
    --section-pad-y: 64px;
    --gallery-width: 100%;
    --gallery-gap: 16px;
    --type-lead-airy: 26px;
    --type-body-strong: 19px;
    --type-dense-link: 19px;
    --type-caption-strong: 15px;
    --type-button-large: 19px;
    --type-button-utility: 15px;
    --type-body: calc(14px - 2pt);
    --type-caption: 12px;
    --type-lead: 16px;
    --type-tagline: 14px;
    --type-display-md: 22px;
    --type-hero-display: 30px;
    position: relative;
    width: 100%;
    min-height: 0;
  }
  .profile-canvas * { min-width: 0; letter-spacing: 0 !important; }
  .profile-canvas-wrapper { height: auto; }
  .profile-canvas :is(.about-scroll-block, .about-bridge, .projects-dome, .process-section, .design-construction-block, .archive-section) {
    width: calc(100% + 40px);
    margin-left: -20px;
  }
  .profile-canvas .profile-section { padding-block: 48px; }
  .profile-canvas .about-scroll-block,
  .profile-canvas .about-scroll-block > #about { min-height: 0; }
  .profile-canvas .about-scroll-block { margin-top: 0; }
  .profile-canvas .about-scroll-block > #about { width: 100%; margin-left: 0; aspect-ratio: 941 / 1672; }
  .profile-canvas .about-scroll-block__bg { object-fit: contain; }
  .profile-canvas .about-scroll-block > #about .type-lede { font-size: 25px; line-height: 1.25; }
  .profile-canvas .about-scroll-block > #about .profile-hero__stack { top: 24%; width: calc(100% - 32px); max-width: none; }
  .profile-canvas .about-scroll-block > #about .type-lede--rotate { display: flex; flex-direction: column; align-items: center; text-align: center; }
  .profile-canvas .about-scroll-block > #about .type-lede__rotate { max-width: 100%; justify-items: center; text-align: center; }
  .profile-canvas .about-bridge { min-height: 320px; padding: 80px 24px; }
  .profile-canvas .about-bridge__headline { font-size: 15px; line-height: 1.5; }
  .profile-canvas .about-bridge__line { white-space: normal; }
  .profile-canvas .about-bridge__orbs { display: block; }
  .profile-canvas .about-bridge__orb--a { width: 28.8px; height: 28.8px; }
  .profile-canvas .about-bridge__orb--b { width: 43.2px; height: 43.2px; }
  .profile-canvas .about-bridge__orb--c { width: 22.4px; height: 22.4px; }
  .profile-canvas .about-bridge__orb--d { width: 33.6px; height: 33.6px; }
  .profile-canvas .about-bridge__orb--e { width: 25.6px; height: 25.6px; }
  .profile-canvas .about-bridge__orb--f { width: 19.2px; height: 19.2px; }
  .profile-canvas .about-bridge__orb--g { width: 38.4px; height: 38.4px; }
  .profile-canvas .about-bridge__orb--h { display: block; width: 28.8px; height: 28.8px; top: 88%; right: 5%; }
  .profile-canvas .about-bridge__orb--i { display: block; width: 28.8px; height: 28.8px; top: 88%; left: 5%; }
  .profile-canvas .type-display { font-size: 22px; overflow-wrap: anywhere; }
  .profile-canvas :is(.projects-dome, #process, #design, #construction) h2.type-display,
  .profile-canvas h2.ongoing-section__title { font-weight: 700; }
  .profile-canvas .projects-dome { --projects-dome-curve: 160px; margin-top: 24px; padding-bottom: 32px; }
  .profile-canvas .projects-dome__cta {
    display: block;
    height: auto;
    aspect-ratio: 1920 / 520;
    top: calc((var(--projects-dome-curve) - 100vw * 520 / 1920) * 0.18);
    bottom: auto;
  }
  .profile-canvas .projects-dome__head-stack { padding-bottom: 24px; }
  .profile-canvas .type-num--ghost { display: none; }
  .profile-canvas .projects-dome .projects-section__title { font-size: 22px; }
  .profile-canvas .projects-dome > .profile-section[id^="project-"] {
    position: relative;
    isolation: isolate;
  }
  .profile-canvas .projects-dome > .profile-section[id^="project-"] > .type-num--ghost {
    display: block;
    top: 32px;
    font-size: 140px;
    line-height: 0.75;
    opacity: 0.1;
  }
  .profile-canvas .projects-dome .profile-copy--body .type-body {
    font-size: 12px !important;
    line-height: 1.6 !important;
    text-align: center !important;
    text-wrap: pretty;
  }
  .profile-canvas .projects-dome .profile-copy--body br {
    display: none !important;
  }
  .profile-canvas .projects-dome .profile-copy--body br.project-copy-break--sentence {
    display: inline !important;
  }
  .profile-canvas .projects-dome .project-gallery--copy-inset .profile-copy--body .type-body {
    text-align: left !important;
  }
  .profile-canvas .projects-dome .project-gallery--copy-inset-end .profile-copy--body .type-body {
    text-align: right !important;
  }
  .profile-canvas .projects-dome .project-media-row > .type-sub {
    font-size: 10px;
  }
  .profile-canvas :is(.profile-copy--body, .project-showcase) { width: 100% !important; max-width: 100% !important; margin: 0 !important; }
  .profile-canvas .profile-copy--body .type-body { font-size: calc(14px - 2pt) !important; line-height: 1.7; text-align: left !important; }
  .profile-canvas .profile-copy--body br { display: none; }
  .profile-canvas :is(.project-gallery, .project-gallery__smalls, .project-gallery__inset, .project-media-row) {
    display: grid !important;
    grid-template-columns: minmax(0, 1fr) !important;
    width: 100% !important;
    max-width: 100% !important;
    gap: 16px !important;
    margin: 24px 0 0 !important;
    padding: 0 !important;
    transform: none !important;
  }
  .profile-canvas .project-gallery img { width: 100% !important; height: auto !important; min-height: 0 !important; max-height: none !important; object-fit: contain; }
  .profile-canvas .project-media-row > .type-sub { position: static; writing-mode: horizontal-tb; transform: none; font-size: 14px; opacity: .7; margin: 0; }
  .profile-canvas :is(.ongoing-panel, .ongoing-entry, #ongoing-3) { margin-top: 32px !important; padding-block: 32px !important; }
  .profile-canvas :is(.ongoing-mosaic-split, .ongoing-mosaic, .ongoing-triad, .ongoing-collage--pair) {
    display: grid !important;
    grid-template-columns: minmax(0, 1fr) !important;
    width: 100% !important;
    max-width: 100% !important;
    height: auto !important;
    gap: 20px !important;
    margin: 0 !important;
    padding: 0 !important;
    transform: none !important;
  }
  .profile-canvas :is(.ongoing-mosaic__item, .ongoing-collage__item, .ongoing-triad__item, .ongoing-entry__copy) {
    position: relative !important; inset: auto !important; width: 100% !important; max-width: 100% !important; margin: 0 !important; transform: none !important;
  }
  .profile-canvas :is(.ongoing-mosaic, .ongoing-collage, .ongoing-triad) img { width: 100% !important; height: auto !important; max-width: 100% !important; }
  .profile-canvas .ongoing-entry__title { font-size: 24px; }
  .profile-canvas .ongoing-mosaic__caption { font-size: 14px; line-height: 1.7; }
  .profile-canvas #process.process-section { margin-top: 150px; padding: 108px 20px 48px; min-height: 0; }
  .profile-canvas #process.process-section::before { top: 0; }
  .profile-canvas .process-stages { margin-top: 32px; }
  .profile-canvas .process-stage { width: 100%; margin-left: 0; padding: 24px 0 0; --process-row-gap: 24px; }
  .profile-canvas .process-stage__row { grid-template-columns: 26px minmax(0, 1fr) 44px; gap: 12px; }
  .profile-canvas .process-stage__copy { min-height: 0; }
  .profile-canvas :is(.process-stage__title, .process-stage__num) { font-size: 14px; white-space: normal; }
  .profile-canvas #process .process-stage__title { font-size: 14px; }
  .profile-canvas .process-stage__desc { font-size: calc(14px - 2pt); }
  .profile-canvas .process-stage__row > .button-icon-circular { width: 44px; height: 44px; margin: 0; }
  .profile-canvas .process-stage__media { width: 100%; }
  .profile-canvas .process-stage.is-open .process-stage__media { height: 300px; }
  .profile-canvas :is(#design, #construction) { min-height: 0; margin-top: 40px !important; padding-block: 48px !important; }
  .profile-canvas #construction { padding-bottom: 148px !important; }
  .profile-canvas :is(#design, #construction) .design-panel { display: grid; grid-template-columns: minmax(0, 1fr); margin-top: 32px; padding: 0; gap: 32px; min-height: 0; background: transparent; border: 0; box-shadow: none; }
  .profile-canvas .design-panel__box { padding: 24px 0; border-radius: 0; background: transparent; }
  .profile-canvas .design-services.design-services--panel { display: flex; flex-direction: column; gap: 20px; }
  .profile-canvas .design-services__item { width: 100%; }
  .mobile-contact { position: absolute; bottom: 32px; left: 20px; right: 20px; z-index: 5; display: grid; gap: 12px; text-align: center; background: #fff; padding: 20px; }
  .mobile-contact a { display: block; padding: 12px 0; font-size: 14px; color: #162a43; }
  #archiveCardMeta { max-width: calc(100% - 32px); }
  #archiveCardMeta :is(.archive-card-meta__actions, .archive-card-meta__facts) { width: min(100%, 260px); }
  #archiveCardMeta .archive-card-meta__actions { grid-template-columns: minmax(0, 1fr); }
  #archiveCardMeta .archive-card-meta__actions a { min-height: 48px; }
  .profile-canvas .design-services__name { font-size: 14px; }
  .profile-canvas :is(.design-section__lead, .design-section__statement) { max-width: 100% !important; }
  .profile-canvas .design-section__lead-line { white-space: normal; }
  .profile-canvas .design-panel__price-cta .design-panel__cta { width: 100%; min-height: 48px; padding: 12px 20px; }
  .profile-canvas > .explore-mask { width: 100%; height: 140svh; margin-left: 0; }
  .profile-canvas .explore-mask__main { width: 100%; height: 70svh; }
  .profile-canvas .explore-mask__svg { overflow: visible; }
  .profile-canvas .explore-mask__copy { font-size: var(--explore-copy-size, 26px); letter-spacing: 0; }
  .profile-canvas :is(.project-gallery, .ongoing-mosaic, .ongoing-collage, .ongoing-triad) img { aspect-ratio: 3 / 2 !important; object-fit: contain !important; }
  /* Preserve the desktop photo compositions only within Projects. */
  .profile-canvas .projects-dome .project-media-row {
    width: calc(100% + 40px) !important;
    max-width: none !important;
    margin-left: -20px !important;
    grid-template-columns: minmax(0, 1fr) minmax(0, 5fr) !important;
    gap: 6px !important;
    align-items: end;
  }
  .profile-canvas .projects-dome .project-media-row--result {
    grid-template-columns: minmax(0, 5fr) minmax(0, 1fr) !important;
  }
  .profile-canvas .projects-dome .project-media-row > .type-sub {
    white-space: normal;
    overflow-wrap: anywhere;
    line-height: 1.25;
  }
  .profile-canvas .projects-dome .project-media-row > .project-gallery {
    margin: 0 !important;
  }
  .profile-canvas .projects-dome .project-gallery {
    grid-template-columns: repeat(3, minmax(0, 1fr)) !important;
    gap: 8px !important;
    align-items: end;
  }
  .profile-canvas .projects-dome .project-gallery img {
    aspect-ratio: 5 / 3 !important;
    object-fit: cover !important;
  }
  .profile-canvas .projects-dome > :is(#project-1, #project-2, #project-3) {
    display: flex;
    flex-direction: column;
    gap: 24px;
    padding-top: 120px;
  }
  .profile-canvas :is(#project-1, #project-2, #project-3) > .profile-copy--body {
    order: 2;
    box-sizing: border-box;
    padding: 0;
  }
  .profile-canvas .projects-dome :is(#project-1, #project-2, #project-3) > .profile-copy--body .type-body {
    text-align: center !important;
    text-wrap: balance;
    margin: 0;
  }
  .profile-canvas :is(#project-1, #project-2, #project-3) .project-media-row {
    order: 1;
    margin-top: 0 !important;
    grid-template-columns: minmax(0, 1fr) !important;
  }
  .profile-canvas :is(#project-1, #project-2, #project-3) .project-media-row > .project-gallery {
    grid-column: 1;
    grid-row: 2;
    width: 100% !important;
    max-width: none !important;
  }
  .profile-canvas :is(#project-1, #project-2, #project-3) .project-media-row > .project-gallery {
    display: grid !important;
    grid-template-columns: none !important;
    grid-auto-flow: column;
    grid-auto-columns: calc((100% - 16px) * 0.416667);
    overflow-x: auto;
    overscroll-behavior-inline: contain;
    touch-action: pan-x pinch-zoom;
    scroll-snap-type: x proximity;
    scrollbar-width: none;
    -webkit-overflow-scrolling: touch;
  }
  .profile-canvas :is(#project-1, #project-2, #project-3) .project-media-row > .project-gallery::-webkit-scrollbar {
    display: none;
  }
  .profile-canvas :is(#project-1, #project-2, #project-3) .project-media-row > .project-gallery > img {
    scroll-snap-align: start;
  }
  .profile-canvas :is(#project-1, #project-2, #project-3) .project-media-row > .type-sub {
    grid-column: 1;
    grid-row: 1;
    margin: 0;
    padding: 0 20px;
    font-size: 12px;
  }
  .profile-canvas :is(#project-1, #project-2, #project-3) .project-media-row--render > .type-sub {
    text-align: center;
  }
  .profile-canvas :is(#project-1, #project-2, #project-3) .project-media-row--result > .type-sub {
    text-align: center;
  }
  .profile-canvas :is(#project-1, #project-2, #project-3) .project-media-arrow { display: none; }
  .profile-canvas .projects-dome .project-gallery--feature-lead {
    grid-template-columns: minmax(0, var(--photo-first)) minmax(0, var(--photo-second)) minmax(0, var(--photo-third)) !important;
  }
  .profile-canvas .projects-dome .project-gallery--feature {
    grid-template-columns: minmax(0, var(--photo-first)) minmax(0, var(--photo-second)) minmax(0, var(--photo-third)) !important;
  }
  /* Image widths at the desktop's 520px / 280px heights, preserving natural ratios. */
  .profile-canvas #project-4 { --photo-first: 828.67fr; --photo-second: 266.90fr; --photo-third: 297.24fr; }
  .profile-canvas #project-5 { --photo-first: 420fr; --photo-second: 304.14fr; --photo-third: 753.10fr; }
  .profile-canvas #project-6 { --photo-first: 755.67fr; --photo-second: 335.17fr; --photo-third: 406.14fr; }
  .profile-canvas #project-7 { --photo-first: 289.70fr; --photo-second: 429.01fr; --photo-third: 796.73fr; }
  .profile-canvas #project-8 { --photo-first: 711.78fr; --photo-second: 392.97fr; --photo-third: 422.08fr; }
  .profile-canvas .projects-dome :is(.project-gallery--feature, .project-gallery--feature-lead) {
    width: calc(100% + 40px) !important;
    max-width: none !important;
    margin-left: -20px !important;
    gap: 8px !important;
  }
  .profile-canvas .projects-dome :is(.project-gallery__inset, .project-gallery__smalls) {
    display: contents !important;
  }
  .profile-canvas .projects-dome :is(.project-gallery--feature, .project-gallery--feature-lead) img {
    grid-row: 1;
    aspect-ratio: auto !important;
    object-fit: contain !important;
  }
  .profile-canvas .projects-dome .project-gallery__inset > .profile-copy--body {
    grid-column: 1 / -1;
    grid-row: 2;
    padding: 16px 20px 0;
  }
  /* Projects 04-08: copy above the small pair, with the large photo alongside. */
  .profile-canvas #project-5 { --photo-third: 600fr; }
  .profile-canvas #project-6 { --photo-first: 600fr; }
  .profile-canvas #project-7 { --photo-third: 600fr; }
  .profile-canvas #project-8 { --photo-first: 650fr; }
  .profile-canvas :is(#project-4, #project-5, #project-6, #project-7, #project-8) .project-gallery {
    --composition-inset: 18vw;
    width: calc(100% + 40px - var(--composition-inset)) !important;
    grid-template-rows: auto auto;
    row-gap: 16px !important;
  }
  .profile-canvas :is(#project-5, #project-7) .project-gallery {
    margin-left: calc(var(--composition-inset) - 20px) !important;
  }
  .profile-canvas :is(#project-4, #project-5, #project-6, #project-7, #project-8) .project-gallery {
    --composition-inset: 0px;
  }
  .profile-canvas :is(#project-4, #project-6, #project-8) .project-gallery {
    margin-left: -20px !important;
  }
  .profile-canvas :is(#project-4, #project-5, #project-6, #project-7, #project-8) .project-gallery__inset > .profile-copy--body {
    grid-row: 1;
    align-self: start;
    width: calc(100% + var(--composition-inset)) !important;
    max-width: none !important;
    padding: 0 8px;
  }
  .profile-canvas :is(#project-5, #project-7) .project-gallery__inset > .profile-copy--body {
    grid-column: 1 / 3;
    margin-left: calc(-1 * var(--composition-inset)) !important;
  }
  .profile-canvas :is(#project-4, #project-6, #project-8) .project-gallery__inset > .profile-copy--body { grid-column: 2 / 4; }
  .profile-canvas :is(#project-4, #project-5, #project-6, #project-7, #project-8) .project-gallery > img {
    grid-row: 1 / 3;
    align-self: end;
  }
  .profile-canvas :is(#project-5, #project-7) .project-gallery > img { grid-column: 3; }
  .profile-canvas :is(#project-4, #project-6, #project-8) .project-gallery > img { grid-column: 1; }
  .profile-canvas :is(#project-4, #project-5, #project-6, #project-7, #project-8) .project-gallery__smalls > img { grid-row: 2; }
  .profile-canvas :is(#project-5, #project-7) .project-gallery__smalls > img:first-child { grid-column: 1; }
  .profile-canvas :is(#project-5, #project-7) .project-gallery__smalls > img:last-child { grid-column: 2; }
  .profile-canvas :is(#project-4, #project-6, #project-8) .project-gallery__smalls > img:first-child { grid-column: 2; }
  .profile-canvas :is(#project-4, #project-6, #project-8) .project-gallery__smalls > img:last-child { grid-column: 3; }
  .profile-canvas :is(#project-4, #project-5, #project-6, #project-7, #project-8) .project-gallery > img,
  .profile-canvas :is(#project-4, #project-5, #project-6, #project-7, #project-8) .project-gallery__smalls > img {
    grid-row: 1;
  }
  .profile-canvas :is(#project-4, #project-5, #project-6, #project-7, #project-8) .project-gallery__inset > .profile-copy--body {
    grid-column: 1 / -1;
    grid-row: 2;
    width: 100% !important;
    box-sizing: border-box;
    margin-left: 0 !important;
    padding: 0 20px;
  }
  .profile-canvas > .archive-section { width: 100%; height: 100svh; min-height: 0; aspect-ratio: auto; margin: 0; }
  /* Keep the remaining sections' desktop compositions within the mobile width. */
  .profile-canvas .projects-dome + .ongoing-panel--cactura::before {
    bottom: calc(clamp(48px, 5.5vw, 84px) + var(--heading-line) - 40px);
  }
  .profile-canvas :is(#ongoing-1, #ongoing-2, #ongoing-3) > .type-num--ghost {
    display: block;
    font-size: 140px;
    top: 32px;
    opacity: 0.07;
  }
  .profile-canvas .ongoing-entry .ongoing-mosaic-split {
    grid-template-columns: minmax(0, 2fr) minmax(0, 3fr) !important;
    gap: 12px !important;
    align-items: center;
  }
  .profile-canvas #ongoing-2 .ongoing-mosaic-split {
    grid-template-columns: minmax(0, 3fr) minmax(0, 2fr) !important;
  }
  .profile-canvas .ongoing-entry .ongoing-entry__title { font-size: 14px; overflow-wrap: anywhere; }
  .profile-canvas .ongoing-entry .profile-copy--body .type-body { font-size: calc(12px - 2pt) !important; }
  .profile-canvas .ongoing-entry .profile-copy--body br { display: inline; }
  .profile-canvas .ongoing-entry .ongoing-mosaic {
    grid-template-columns: repeat(3, minmax(0, 1fr)) !important;
    gap: 6px !important;
    align-items: start;
  }
  .profile-canvas #ongoing-2 .ongoing-mosaic {
    grid-template-columns: minmax(0, 450.44fr) minmax(0, 330.32fr) minmax(0, 401.01fr) !important;
  }
  .profile-canvas #ongoing-3 .ongoing-mosaic {
    grid-template-columns: minmax(0, 425.50fr) minmax(0, 214.01fr) minmax(0, 503.47fr) !important;
  }
  .profile-canvas .ongoing-entry .ongoing-mosaic__item--mid { margin-top: 48px !important; }
  .profile-canvas .ongoing-entry .ongoing-mosaic__item--trail { margin-top: 20px !important; }
  .profile-canvas .ongoing-entry :is(.ongoing-mosaic, .ongoing-collage) img {
    aspect-ratio: auto !important;
    object-fit: contain !important;
  }
  .profile-canvas .ongoing-entry .ongoing-collage--pair {
    grid-template-columns: repeat(10, minmax(0, 1fr)) !important;
    grid-template-rows: repeat(10, minmax(0, 1fr));
    aspect-ratio: 780 / 420;
    gap: 0 !important;
  }
  .profile-canvas .ongoing-entry .ongoing-collage__item--back {
    grid-column: 3 / -1;
    grid-row: 1 / -1;
  }
  .profile-canvas .ongoing-entry .ongoing-collage__item--front {
    grid-column: 1 / 7;
    grid-row: 3 / 9;
  }
  .profile-canvas .ongoing-entry .ongoing-collage__item img { height: 100% !important; }
  .profile-canvas .ongoing-entry .ongoing-mosaic__withheld-label { font-size: 9px; line-height: 1.5; padding: 8px; }
  .profile-canvas .ongoing-entry .withheld-break-mobile { display: inline; }
  .profile-canvas .projects-dome + .ongoing-panel--cactura { padding: 0 !important; }
  .profile-canvas .ongoing-panel--cactura::before,
  .profile-canvas #ongoing-3::before { display: none; }
  .profile-canvas .ongoing-panel--cactura > #ongoing {
    padding: 48px 0 32px !important;
  }
  .profile-canvas :is(#ongoing-1, #ongoing-2, #ongoing-3) {
    width: calc(100% + 40px) !important;
    margin: 32px 0 0 -20px !important;
    padding: 40px 20px !important;
    box-sizing: border-box;
  }
  .profile-canvas :is(#ongoing-1, #ongoing-2, #ongoing-3) { background: #fff; }
  .profile-canvas :is(#ongoing-1, #ongoing-2, #ongoing-3) > .type-num--ghost {
    top: 32px;
    font-size: 140px;
    line-height: 0.75;
    opacity: 0.1;
    z-index: 0;
  }
  /* These full-bleed panels already reach the page edge. */
  .profile-canvas :is(#ongoing-1, #ongoing-3) > .type-num--ghost {
    left: 0;
    right: auto;
    transform: translate(-24%, -12%);
  }
  .profile-canvas #ongoing-2 > .type-num--ghost-end {
    left: auto;
    right: 0;
    transform: translate(8%, -12%);
  }
  .profile-canvas :is(#ongoing-1, #ongoing-2, #ongoing-3) .ongoing-mosaic-split {
    display: flex !important;
    flex-direction: column;
    align-items: stretch;
    gap: 16px !important;
    width: 100% !important;
    margin: 0 !important;
    padding: 0 !important;
    position: relative;
  }
  .profile-canvas .ongoing-entry .ongoing-entry__copy { display: contents; }
  .profile-canvas .ongoing-entry .ongoing-entry__copy > .ongoing-entry__title {
    order: 0;
    align-self: center;
    width: fit-content;
    max-width: 100%;
    box-sizing: border-box;
    margin: 0 auto;
    padding: 0;
    border-radius: 0;
    background: transparent;
    font-size: 16px;
    font-weight: 600;
    line-height: 1.35;
    text-align: center;
  }
  .profile-canvas .ongoing-entry .ongoing-entry__copy > .ongoing-entry__title::before {
    content: "";
    display: block;
    width: 24px;
    height: 3px;
    margin: 0 auto 10px;
    background: #dee3be;
  }
  .profile-canvas .ongoing-summary-mobile {
    display: block;
    order: 1;
    margin: -10px 0 0;
    text-align: center;
    font-size: 11px;
    line-height: 1.5;
    color: #405b73;
  }
  .profile-canvas .ongoing-entry .profile-copy--body { order: 3; }
  .profile-canvas .ongoing-entry .profile-copy--body .type-body {
    margin: 0;
    font-size: 12px !important;
    text-align: left !important;
    line-height: 1.6;
    text-wrap: pretty;
  }
  .profile-canvas .ongoing-entry .profile-copy--body br { display: none; }
  .profile-canvas .ongoing-entry .ongoing-role { display: inline; margin: 0; }
  .profile-canvas .ongoing-entry :is(.ongoing-mosaic, .ongoing-collage) {
    order: 2;
    width: 80% !important;
    align-self: center;
    margin: 0 auto !important;
  }
  .profile-canvas .ongoing-entry :is(.ongoing-mosaic, .ongoing-mosaic--withheld) {
    /* Keep the responsive transform reset and horizontal swipe layout intact. */
    translate: 0 var(--ongoing-reveal-y, 0px);
  }
  .profile-canvas .ongoing-entry .ongoing-collage--pair {
    display: block !important;
    position: relative;
    aspect-ratio: 16 / 9;
  }
  .profile-canvas #ongoing-1 .ongoing-collage__item--front { display: none; }
  .profile-canvas #ongoing-1 .ongoing-collage__item--back {
    width: 100%; height: 100%; margin: 0; position: static;
  }
  .profile-canvas #ongoing-1 .ongoing-collage__item img { object-fit: cover !important; }
  .profile-canvas :is(#ongoing-2, #ongoing-3) .ongoing-mosaic__item {
    margin: 0 !important;
    width: 100% !important;
    transform: none !important;
  }
  .profile-canvas :is(#ongoing-2, #ongoing-3) .ongoing-mosaic {
    display: flex !important;
    width: calc(100% + 20px) !important;
    align-self: flex-start;
    margin: 0 -20px 0 0 !important;
    gap: 12px !important;
    overflow-x: auto;
    overscroll-behavior-x: contain;
    scroll-snap-type: x mandatory;
    scrollbar-width: thin;
    scrollbar-color: #b5bea0 transparent;
  }
  .profile-canvas :is(#ongoing-2, #ongoing-3) .ongoing-mosaic__item {
    flex: 0 0 76%;
    min-width: 0;
    scroll-snap-align: start;
  }
  .profile-canvas :is(#ongoing-2, #ongoing-3) .ongoing-mosaic__item a { display: block; }
  .profile-canvas :is(#ongoing-2, #ongoing-3) .ongoing-mosaic__item img {
    aspect-ratio: 4 / 3 !important;
    object-fit: contain !important;
    background: #fff;
  }
  .profile-canvas #process .process-stage__media {
    width: calc(100% + 40px);
    margin-left: 0;
  }
  .profile-canvas #process .process-stage {
    --process-desc-gap: 8px;
    --process-open-below: 15px;
    width: calc(100% + 80px);
    margin-left: -40px;
    padding: 24px 40px 0;
  }
  .profile-canvas #process .process-stage.is-open .process-stage__media {
    height: auto;
    aspect-ratio: 5 / 3;
    margin-top: 6px;
  }
  .profile-canvas #process .process-spotlight {
    --spot-side: 28%;
    --spot-center: 88%;
    --spot-current-left: 6%;
    --spot-next-left: 72%;
  }
  .profile-canvas #process :is(.process-spotlight__slide, .process-gallery__card) img {
    object-fit: contain;
  }
  .profile-canvas #process .process-spotlight--boards .process-spotlight__slide {
    background: transparent;
  }
  .profile-canvas :is(#design, #construction) .design-panel {
    grid-template-columns: minmax(0, 0.9fr) minmax(0, 1.4fr);
    gap: 16px;
    align-items: stretch;
  }
  .profile-canvas :is(#design, #construction) .design-panel__left { gap: 24px; }
  .profile-canvas :is(#design, #construction) .design-panel__box { padding: 0; }
  .profile-canvas :is(#design, #construction) .design-services--panel {
    display: grid;
    grid-template-columns: repeat(2, minmax(0, 1fr));
    grid-template-rows: repeat(4, minmax(0, auto));
    grid-auto-flow: column;
    gap: 20px 10px;
  }
  .profile-canvas :is(#design, #construction) .design-services__item { gap: 6px; }
  .profile-canvas :is(#design, #construction) :is(.design-services__name, .design-services__num) { font-size: 12px; }
  .profile-canvas :is(#design, #construction) .design-services__name { font-size: calc(12px - 2pt); }
  .profile-canvas :is(#design, #construction) .design-section__lead { font-size: 16px; overflow-wrap: anywhere; }
  .profile-canvas :is(#design, #construction) :is(.design-section__statement, .design-panel__note, .design-section__price-label) { font-size: calc(12px - 2pt); }
  .profile-canvas #construction .design-panel__note--after-starting { font-size: 7px; }
  .profile-canvas :is(#design, #construction) .design-panel__cta { padding: 10px 6px; white-space: normal; }
  .profile-canvas :is(#design, #construction) .design-section__price-value { font-size: 14px; }
  .profile-canvas :is(#design, #construction) > .type-display { text-align: center; }
  .profile-canvas :is(#design, #construction).design-section .design-section__lead { font-size: 14px; margin-bottom: 7px; }
  .profile-canvas :is(#design, #construction).design-section .design-section__statement { font-size: calc(12px - 2pt); }
  .profile-canvas :is(#design, #construction) .design-panel {
    grid-template-columns: minmax(0, 0.9fr) minmax(0, 2fr);
    padding: 12px;
    gap: 12px;
    border-radius: 12px;
    background: var(--color-canvas-parchment);
  }
  .profile-canvas :is(#design, #construction) .design-panel__box {
    padding: 12px;
    border: 1px solid var(--hairline);
    border-radius: 8px;
    background: var(--color-canvas);
  }
  .profile-canvas :is(#design, #construction) .design-panel__left {
    align-items: stretch;
    justify-content: space-between;
    gap: 24px;
  }
  .profile-canvas :is(#design, #construction) .design-services--panel { gap: 16px 12px; }
  .profile-canvas :is(#design, #construction) .design-services__num { font-size: 16px; color: #84a5c6; }
  .profile-canvas :is(#design, #construction) .design-panel { grid-template-columns: minmax(0, 1fr); gap: 20px; padding: 24px 16px; border-radius: 8px; }
  .profile-canvas :is(#design, #construction) :is(.design-panel__left, .design-panel__copy) { display: contents; }
  .profile-canvas :is(#design, #construction).design-section .design-section__lead { order: 1; margin: 0; max-width: none; text-align: center; font-size: 14px; line-height: 1.4; }
  .profile-canvas :is(#design, #construction).design-section .design-section__statement { order: 4; margin: 0; text-align: center; font-size: 12px; line-height: 1.6; letter-spacing: 0; text-wrap: balance; }
  .profile-canvas :is(#design, #construction) .design-statement-break-mobile { display: none; }
  .profile-canvas :is(#design, #construction) .design-panel__box { order: 3; padding: 20px 12px; border: 1px solid var(--hairline); border-radius: 8px; background: var(--color-canvas); }
  .profile-canvas :is(#design, #construction) .design-section__price-label { display: block; order: 5; margin: 0 0 -12px; text-align: center; font-size: 9px; }
  .profile-canvas :is(#design, #construction) .design-panel__bottom { order: 6; justify-self: center; width: 180px; max-width: 100%; }
  .profile-canvas :is(#design, #construction) .design-price-label-mobile { display: none; }
  .profile-canvas :is(#design, #construction) .design-price-arrow { display: none; }
  .profile-canvas :is(#design, #construction) .design-panel__price-cta .design-panel__cta { display: flex; align-items: center; justify-content: center; gap: 8px; flex-wrap: nowrap; white-space: nowrap; }
  .profile-canvas :is(#design, #construction) .design-services--panel {
    grid-template-columns: repeat(2, minmax(0, 1fr));
    grid-template-rows: repeat(4, minmax(0, 1fr));
    grid-auto-flow: column;
    gap: 16px;
  }
  .profile-canvas :is(#design, #construction) .design-services--panel {
    grid-template-columns: minmax(0, 1fr);
    grid-template-rows: repeat(8, auto);
    grid-auto-flow: row;
    width: 240px;
    max-width: 100%;
    margin: 0 auto;
    gap: 14px;
    text-align: left;
  }
  .profile-canvas :is(#design, #construction) .design-panel__box {
    padding: 12px 0;
    border: 0;
    border-radius: 0;
    background: transparent;
    box-shadow: none;
  }
  .profile-canvas :is(#design, #construction) .design-services__item {
    display: grid;
    grid-template-columns: 20px minmax(0, 1fr);
    align-items: start;
    align-content: start;
    gap: 8px;
  }
  .profile-canvas :is(#design, #construction) .design-services__num { font-size: 12px; line-height: 16px; color: #547c9c; }
  .profile-canvas :is(#design, #construction) .design-services__name { font-size: 10px; line-height: 16px; letter-spacing: 0; overflow-wrap: anywhere; }
  .profile-canvas :is(#design, #construction) .design-services__num { font-size: 11px; line-height: 19.2px; color: #84a5c6; }
  .profile-canvas :is(#design, #construction) .design-services__name { font-size: 12px; line-height: 1.6; overflow-wrap: normal; text-align: left; text-wrap: pretty; }
  .profile-canvas :is(#design, #construction) .design-services__detail { white-space: nowrap; }
  .profile-canvas :is(#design, #construction) .design-panel__price-cta .design-panel__cta {
    width: 100%;
    min-height: 28px;
    padding: 4px 6px;
    border-radius: 24px;
    background: #162a43;
    color: #fff;
  }
  .profile-canvas :is(#design, #construction) .design-panel__cta .design-section__price-value {
    font-size: calc(12px - 2pt);
    font-weight: 700;
    line-height: 1.4;
  }
  .profile-canvas :is(#design, #construction) .design-panel__price-cta .design-panel__cta { min-height: 30px; padding: 4px 16px; }
  .profile-canvas :is(#design, #construction) .design-panel__cta .design-section__price-value { font-size: 10px; }
  .profile-canvas #construction .design-panel__note--after-starting { order: 7; grid-column: 1 / -1; justify-self: stretch; width: 100%; max-width: none; margin: 0; text-align: center; font-size: 12px; line-height: 1.6; text-wrap: balance; }
  .profile-canvas > .explore-mask {
    height: 220svh;
    overflow: clip;
  }
  .profile-canvas > .archive-section {
    margin-top: 0;
    margin-bottom: 0;
  }
  .profile-canvas > .archive-section #scene {
    /* The logo and contact details follow the canvas's projected bounds. */
    transform: translateY(-8svh);
  }
  .profile-canvas > .explore-mask .explore-mask__main {
    position: sticky;
    top: 0;
    transform: none !important;
    height: 100svh;
    aspect-ratio: auto;
  }
  .profile-canvas .mobile-contact { display: none; }
  .explore-mask__main--mobile > .explore-mask__svg { display: none; }
  .explore-mobile {
    position: absolute;
    inset: 0;
    overflow: hidden;
    contain: layout paint;
    isolation: isolate;
    background: #fff;
  }
  .explore-mobile__world {
    position: absolute;
    left: 50%;
    top: 50%;
    width: max(100%, 150svh);
    aspect-ratio: 3 / 2;
    transform: translate(-50%, -50%);
  }
  .explore-mobile__layer,
  .explore-mobile__wash { position: absolute; inset: 0; pointer-events: none; }
  .explore-mobile__layer:last-child::after {
    content: "";
    position: absolute;
    top: 65%;
    left: 0;
    right: 0;
    height: 135%;
    background: linear-gradient(to bottom, rgb(255 255 255 / 0), #fff 18%);
  }
  .explore-mobile__layer img {
    position: absolute;
    left: 0;
    width: 100%;
    max-width: none;
    object-fit: fill;
  }
  .explore-mobile__wash { background: #fff; opacity: 0; }
  .explore-mobile .explore-mobile__copy {
    position: absolute;
    top: 18%;
    left: 16px;
    right: 16px;
    margin: 0;
    color: #fff;
    font-family: "Montserrat", sans-serif;
    font-size: 26px;
    font-weight: 900;
    line-height: 1.05;
    letter-spacing: 0;
    text-align: center;
    pointer-events: none;
  }
  .explore-mobile__copy span { display: block; }
  .explore-mobile .explore-mobile__copy--end { color: #162a43; opacity: 0; }
  .explore-mobile__arrow {
    position: absolute;
    top: 37.5%;
    left: 50%;
    width: 48px;
    height: 64px;
    transform: translateX(-50%);
    margin: 0;
    padding: 0;
    border: 0;
    border-radius: 0;
    background: transparent;
    color: #fff;
  }
  .explore-mobile__arrow svg { display: block; width: 100%; height: 100%; }
  .explore-mobile__arrow:focus-visible { outline: 2px solid #247ac8; outline-offset: 4px; }
  .mobile-menu__footer :is(.mobile-menu__whatsapp, .mobile-menu__website) {
    display: inline-flex;
    align-items: center;
    justify-content: center;
    gap: 8px;
    box-sizing: border-box;
    width: 144px;
    max-width: 100%;
    min-height: 44px;
    padding: 8px 16px !important;
    border: 1px solid transparent;
    border-radius: 999px;
    box-shadow: none;
    font-size: 12px !important;
    line-height: 1.4;
    letter-spacing: 0;
    text-decoration: none;
  }
  .mobile-menu__footer .mobile-menu__whatsapp {
    margin-top: 0;
    background: #162a43;
    color: #fff;
    font-weight: 600;
  }
  .mobile-menu__footer .mobile-menu__website {
    border-color: #c6cdd3;
    background: transparent;
    color: #505a63;
    font-weight: 500;
  }
  .mobile-menu__footer :is(.mobile-menu__whatsapp, .mobile-menu__website)::after {
    margin: 0;
    color: currentColor;
    opacity: 1;
  }
  .mobile-menu__footer .mobile-menu__whatsapp:hover { background: #244462; }
  .mobile-menu__footer .mobile-menu__website:hover { border-color: #818a92; background: #eef2f5; }
  .site-header { width: 100% !important; max-width: 100% !important; left: 0 !important; right: 0 !important; transform: none; padding: calc(15px + env(safe-area-inset-top, 0px)) 8px 0 !important; }
  .site-header.is-hidden { transform: translateY(-110%); }
  .site-header__bar { width: 100%; height: auto !important; min-height: 48px; display: flex; flex-wrap: nowrap; gap: 4px; padding: 2px 12px !important; }
  .site-header__logo { position: static !important; transform: none !important; order: 0; margin-right: auto; }
  .site-header__actions, .site-header__nav { display: none !important; }
  .mobile-menu-toggle { display: block; order: 1; width: 44px; height: 44px; flex-basis: 44px; font-size: 26px; }
  .site-header__track { width: max-content; }
  .site-header__list { flex-wrap: nowrap !important; gap: 0; }
  .site-header__link { font-size: 12px !important; min-height: 44px; display: inline-flex; align-items: center; padding: 8px 12px !important; }
  .site-header__cta { min-height: 44px; display: inline-flex; align-items: center; font-size: 12px !important; }
}
@media (max-width: 1023px) and (prefers-reduced-motion: reduce) {
  .profile-canvas > .explore-mask { height: 100svh; }
}

.profile-canvas .ongoing-entry :is(.ongoing-mosaic, .ongoing-mosaic--withheld) {
  translate: 0 var(--ongoing-reveal-y, 0px);
}

@media (max-width: 450px) {
  .profile-canvas .about-scroll-block > #about .type-lede { font-size: 25px; }
}
@media (max-width: 374px) {
  .profile-canvas .about-scroll-block > #about .type-lede { font-size: 25px; }
  .profile-canvas .type-display { font-size: 22px; }
  .profile-canvas .projects-dome .projects-section__title { font-size: 22px; }
}

/* Desktop NOW ON GOING uses the same vertical editorial structure as mobile. */
@media (min-width: 1024px) {
  #archiveCardMeta .archive-card-meta__actions {
    grid-template-columns: minmax(0, 1fr);
    width: max-content;
    max-width: 100%;
  }

  .profile-canvas .projects-dome + .ongoing-panel--cactura {
    margin-top: calc(var(--section-lead-y) - var(--section-head-y));
    padding: 0;
    background: #fff;
  }

  .profile-canvas .ongoing-panel--cactura::before,
  .profile-canvas #ongoing-3::before {
    display: none;
  }

  .profile-canvas .projects-dome + .ongoing-panel--cactura > .ongoing-section {
    padding: var(--section-head-y) 0 160px;
  }

  .profile-canvas :is(#ongoing-1, #ongoing-2, #ongoing-3) {
    width: 1920px;
    max-width: none;
    margin: 0 0 0 calc(-1 * var(--page-left));
    padding: 144px 0 176px;
    overflow: hidden;
    box-sizing: border-box;
    background: #fff;
  }

  .profile-canvas #ongoing-1 {
    padding-top: 0;
  }

  .profile-canvas :is(#ongoing-1, #ongoing-2, #ongoing-3) > .type-num--ghost {
    display: none;
  }

  .profile-canvas :is(#ongoing-1, #ongoing-3) > .type-num--ghost {
    left: 0;
    right: auto;
    transform: translate(-22%, -10%);
  }

  .profile-canvas #ongoing-2 > .type-num--ghost-end {
    left: auto;
    right: 0;
    transform: translate(8%, -10%);
  }

  .profile-canvas :is(#ongoing-1, #ongoing-2, #ongoing-3) .ongoing-mosaic-split {
    position: relative;
    z-index: 1;
    display: flex;
    flex-direction: column;
    align-items: stretch;
    gap: 28px;
    width: 100%;
    max-width: none;
    margin: 0;
    padding: 0;
  }

  .profile-canvas #ongoing-3.ongoing-entry--mosaic-split-end .ongoing-mosaic-split {
    width: 100%;
    margin: 0;
    padding: 0;
  }

  .profile-canvas #ongoing-1.ongoing-entry--mosaic-split-end .ongoing-mosaic-split {
    padding-right: 0;
  }

  .profile-canvas .ongoing-entry .ongoing-entry__copy {
    display: contents;
  }

  .profile-canvas .ongoing-entry .ongoing-entry__copy > .ongoing-entry__title {
    order: 0;
    align-self: center;
    width: fit-content;
    max-width: 960px;
    margin: 0 auto;
    padding: 0;
    font-size: 34px;
    font-weight: 600;
    line-height: 1.24;
    letter-spacing: 0;
    text-align: center;
  }

  .profile-canvas .ongoing-entry .ongoing-entry__copy > .ongoing-entry__title::before {
    content: "";
    display: block;
    width: 48px;
    height: auto;
    margin: 0 auto 20px;
    padding-bottom: 12px;
    border-bottom: 4px solid #dee3be;
    background: none;
    color: color-mix(in srgb, #dee3be 42%, #2f3428 58%);
    font-size: 34px;
    font-weight: 600;
    line-height: 1;
    letter-spacing: 0;
  }

  .profile-canvas #ongoing-1 .ongoing-entry__copy > .ongoing-entry__title::before {
    content: "01";
  }

  .profile-canvas #ongoing-2 .ongoing-entry__copy > .ongoing-entry__title::before {
    content: "02";
  }

  .profile-canvas #ongoing-3 .ongoing-entry__copy > .ongoing-entry__title::before {
    content: "03";
  }

  .profile-canvas .ongoing-summary-mobile {
    display: block;
    order: 1;
    margin: -12px 0 20px;
    color: #405b73;
    font-size: 20px;
    line-height: 1.5;
    letter-spacing: 0;
    text-align: center;
  }

  .profile-canvas .ongoing-entry .profile-copy--body {
    order: 3;
    width: 100%;
    max-width: none;
    margin: 28px 0 0;
    padding: 0 48px;
    box-sizing: border-box;
  }

  .profile-canvas :is(#ongoing-2, #ongoing-3) .profile-copy--body {
    align-self: stretch;
    width: 100%;
    max-width: none;
    margin: 28px 0 0;
  }

  .profile-canvas .ongoing-entry .profile-copy--body .type-body {
    width: fit-content;
    max-width: 100%;
    margin: 0 auto;
    font-size: 20px;
    line-height: 1.7;
    letter-spacing: 0;
    text-align: center !important;
    text-wrap: pretty;
  }

  .profile-canvas .ongoing-entry .profile-copy--body br {
    display: none;
  }

  .profile-canvas .ongoing-entry .profile-copy--body .ongoing-copy-break {
    display: block;
  }

  .profile-canvas .ongoing-entry .ongoing-role {
    display: inline;
    margin: 0;
  }

  .profile-canvas #ongoing-1 .ongoing-collage--pair {
    order: 2;
    display: block;
    position: relative;
    align-self: center;
    width: calc((72% - 56px) / 3);
    max-width: none;
    height: auto;
    margin: 0 auto;
    aspect-ratio: 3 / 2;
    transform: none;
  }

  .profile-canvas #ongoing-1.ongoing-entry--mosaic-split-end .ongoing-collage--pair {
    transform: none;
  }

  .profile-canvas #ongoing-1 .ongoing-collage__item--front {
    display: none;
  }

  .profile-canvas #ongoing-1 .ongoing-collage__item--back {
    position: static;
    width: 100%;
    height: 100%;
    margin: 0;
  }

  .profile-canvas #ongoing-1 .ongoing-collage__item--back img {
    width: 100%;
    height: 100%;
    object-fit: cover;
  }

  .profile-canvas #ongoing-1 .ongoing-mosaic__withheld-label {
    font-size: 18px;
    line-height: 1.5;
  }

  .profile-canvas :is(#ongoing-2, #ongoing-3) .ongoing-mosaic {
    order: 2;
    display: flex;
    align-self: center;
    width: 72%;
    max-width: none;
    margin: 0 auto;
    gap: 28px;
    overflow-x: auto;
    overscroll-behavior-x: contain;
    touch-action: pan-x pinch-zoom;
    scroll-snap-type: x proximity;
    scrollbar-width: none;
  }

  .profile-canvas :is(#ongoing-2, #ongoing-3) .ongoing-mosaic::-webkit-scrollbar {
    display: none;
  }

  .profile-canvas :is(#ongoing-2, #ongoing-3) .ongoing-mosaic__item {
    flex: 0 0 calc((100% - 56px) / 3);
    width: calc((100% - 56px) / 3);
    min-width: 0;
    margin: 0;
    scroll-snap-align: start;
  }

  .profile-canvas :is(#ongoing-2, #ongoing-3) .ongoing-mosaic__item a {
    display: block;
    width: 100%;
  }

  .profile-canvas :is(#ongoing-2, #ongoing-3) .ongoing-mosaic__item img,
  .profile-canvas :is(#ongoing-2, #ongoing-3) .ongoing-mosaic__item--mid img {
    display: block;
    width: 100%;
    height: auto;
    max-width: none;
    aspect-ratio: 4 / 3;
    object-fit: contain;
    background: #fff;
  }

  .profile-canvas #process.process-section {
    margin-top: 160px;
  }
}
