/* Public editorial pages. The page marker keeps request tools and accounts independent. */
body.jf-unified.jf-brand-2026.tr-sui .tr-main.jf-editorial-page {
  --editorial-width: min(1440px, calc(100% - clamp(40px, 8vw, 128px)));
  --editorial-gap: clamp(24px, 4vw, 64px);
  --service-width: var(--editorial-width);
  --page-width: var(--editorial-width);
  --learn-width: var(--editorial-width);
  --service-gap: var(--editorial-gap);
  --page-gap: var(--editorial-gap);
  --learn-gap: var(--editorial-gap);
  --jf-paper: var(--ui-paper, #f5f2fa);
  --jf-ink: var(--ui-ink, #1c1429);
  --jf-night: var(--ui-night, #08031a);
  --jf-purple: var(--ui-purple, #6840bb);
  --jf-lavender: var(--ui-lavender, #c4b5fd);
  --jf-muted: var(--ui-muted, #655a74);
  --jf-line: var(--ui-line, #d8cfe6);
  --page-ink: var(--ui-ink, #1c1429);
  --page-paper: var(--ui-paper, #f5f2fa);
  --page-muted: var(--ui-muted, #655a74);
  --page-dark: var(--ui-night, #08031a);
  --page-line: var(--ui-line, #d8cfe6);
  --page-violet: var(--ui-purple, #6840bb);
  --page-lavender: var(--ui-lavender, #c4b5fd);
  --tr-r-lg: 12px;
  color: var(--ui-ink);
  background: var(--ui-paper);
  font-family: inherit;
  font-size: 16px;
  line-height: 1.95;
}

body.jf-unified.jf-brand-2026.tr-sui .jf-editorial-page :is(.tr-container, .sx-shell, .ej-inner-cta.sj-container) {
  width: var(--editorial-width);
  inline-size: var(--editorial-width);
  max-width: 1440px;
  max-inline-size: 1440px;
  padding-inline: 0;
  margin-inline: auto;
}
body.jf-unified.jf-brand-2026.tr-sui .jf-editorial-page :is(h1, h2, h3, .tr-tile__title, .tr-index__title) {
  font-family: inherit;
  letter-spacing: normal;
  text-wrap: pretty;
  overflow-wrap: break-word;
}
body.jf-unified.jf-brand-2026.tr-sui .jf-editorial-page :is(.tr-phero, .tr-block, .tr-showcase, .jw-work, .jw-case, .jd-portfolio, .tr-field > label) { font-family: inherit; }
body.jf-unified.jf-brand-2026.tr-sui .jf-editorial-page :is(h2, .tr-block__head h2) { font-size: clamp(27px, 2.65vw, 40px); line-height: 1.6; font-weight: 700; }
body.jf-unified.jf-brand-2026.tr-sui .jf-editorial-page :is(h3, .tr-tile__title, .tr-index__title) { font-size: clamp(21px, 1.8vw, 26px); line-height: 1.65; font-weight: 700; }
body.jf-unified.jf-brand-2026.tr-sui .jf-editorial-page :is(.t-small, .tr-prose, .jf-about-team-copy) { font-size: 16px; line-height: 2; }
body.jf-unified.jf-brand-2026.tr-sui .jf-editorial-page :is(.t-label, .t-mono, .tr-tag, .tr-step__n, .tr-index__num, .tr-faq__num) { font-size: 12px; line-height: 1.8; letter-spacing: normal; opacity: 1; }
body.jf-unified.jf-brand-2026.tr-sui .jf-editorial-page :is(.t-dim, .tr-tile__desc, .tr-index__desc) { color: var(--ui-muted); opacity: 1; }
body.jf-unified.jf-brand-2026.tr-sui .jf-editorial-page :is(a, button, input, select, textarea):focus-visible { outline: 3px solid var(--ui-purple); outline-offset: 5px; }

/* A consistent opening: navigation context, a clear headline, then useful content. */
body.jf-unified.jf-brand-2026.tr-sui .tr-main.jf-editorial-page .tr-phero {
  position: relative;
  min-block-size: 0;
  padding-block: clamp(124px, 11vw, 162px) clamp(48px, 6vw, 84px);
  color: var(--ui-paper);
  background: radial-gradient(ellipse at 85% 0, #6840bb26, transparent 62%), var(--ui-night);
  border: 0;
  border-block-end: 1px solid #c4b5fd45;
  overflow: hidden;
}
body.jf-unified.jf-brand-2026.tr-sui .jf-editorial-page .tr-phero::after { display: none; }
body.jf-unified.jf-brand-2026.tr-sui .jf-editorial-page .tr-phero__canvas { display: none; }
body.jf-unified.jf-brand-2026.tr-sui .jf-editorial-page .tr-phero__inner { position: relative; z-index: 1; }
body.jf-unified.jf-brand-2026.tr-sui .jf-editorial-page .tr-crumbs { display: flex; flex-wrap: wrap; gap: 8px 14px; margin: 0 0 34px; padding: 0; font-size: 12px; color: var(--ui-dim); opacity: 1; }
body.jf-unified.jf-brand-2026.tr-sui .jf-editorial-page .tr-crumbs a { color: var(--ui-dim); }
body.jf-unified.jf-brand-2026.tr-sui .jf-editorial-page .tr-crumbs a:hover { color: var(--ui-paper); text-decoration: underline; text-underline-offset: 5px; }
body.jf-unified.jf-brand-2026.tr-sui .jf-editorial-page .tr-phero__eyebrow { display: block; color: var(--ui-lavender); font-size: 12px; margin: 0 0 16px; opacity: 1; }
body.jf-unified.jf-brand-2026.tr-sui .tr-main.jf-editorial-page .tr-phero h1 { margin: 0; max-inline-size: 26ch; font-size: clamp(32px, 4vw, 56px); font-weight: 700; line-height: 1.5; color: var(--ui-paper); letter-spacing: normal; text-wrap: balance; }
body.jf-unified.jf-brand-2026.tr-sui .jf-editorial-page .tr-phero h1 :is(span, em) { color: var(--ui-lavender); -webkit-text-fill-color: currentColor; background: none; font-style: normal; }
body.jf-unified.jf-brand-2026.tr-sui .jf-editorial-page .tr-phero__lead { max-inline-size: 62ch; margin-block: 22px 0; font-size: 16px; line-height: 2; color: var(--ui-dim); }
body.jf-unified.jf-brand-2026.tr-sui .jf-editorial-page .tr-phero :is(.jf-service-intro__details, .jf-about-text-link, .jf-learn-text-link) { color: var(--ui-lavender); font-size: 14px; }
body.jf-unified.jf-brand-2026.tr-sui .jf-editorial-page .tr-phero :is(a, button):focus-visible { outline-color: var(--ui-lavender); }
body.jf-unified.jf-brand-2026.tr-sui .jf-editorial-page :is(.jf-service-intro, .jf-about-intro, .jf-learn-intro) { gap: var(--editorial-gap); }
body.jf-unified.jf-brand-2026.tr-sui .jf-editorial-page :is(.jf-service-intro__copy, .jf-about-intro__copy) { max-width: 720px; }
body.jf-unified.jf-brand-2026.tr-sui .jf-editorial-page :is(.jf-service-intro__photo, .jf-about-photo) { border: 1px solid #c4b5fd66; border-radius: 12px; overflow: hidden; box-shadow: none; }
body.jf-unified.jf-brand-2026.tr-sui .jf-editorial-page :is(.jf-service-intro__photo, .jf-about-photo) img { display: block; border-radius: 0; width: 100%; height: 100%; object-fit: cover; }
body.jf-unified.jf-brand-2026.tr-sui .jf-editorial-page .jf-service-intro__actions { gap: 16px 24px; margin-top: 30px; }

/* Paper sections and light cards retain contrast inside either section tone. */
body.jf-unified.jf-brand-2026.tr-sui .tr-main.jf-editorial-page :is(.tr-block, .jw-work, .jw-case, .jd-portfolio) { padding-block: clamp(48px, 6vw, 88px); color: var(--ui-ink); background: var(--ui-paper); }
body.jf-unified.jf-brand-2026.tr-sui .jf-editorial-page .tr-block + .tr-block { border-block-start: 1px solid var(--ui-line); }
body.jf-unified.jf-brand-2026.tr-sui .jf-editorial-page .tr-block--tint { background: var(--ui-paper); }
body.jf-unified.jf-brand-2026.tr-sui .tr-main.jf-editorial-page .tr-block--dark { background: var(--ui-ink); color: var(--ui-paper); }
body.jf-unified.jf-brand-2026.tr-sui .jf-editorial-page .tr-block--dark :is(.tr-block__head h2, .tr-block__head p, .tr-block__head .t-label) { color: var(--ui-paper); }
body.jf-unified.jf-brand-2026.tr-sui .jf-editorial-page .tr-block__head { display: block; margin-block-end: 32px; max-width: 880px; }
body.jf-unified.jf-brand-2026.tr-sui .jf-editorial-page .tr-block__head .t-label { display: block; color: var(--ui-purple); margin-block-end: 12px; font-size: 12px; }
body.jf-unified.jf-brand-2026.tr-sui .jf-editorial-page .tr-block__head h2 { margin: 0; }
body.jf-unified.jf-brand-2026.tr-sui .jf-editorial-page .tr-block__head p { font-size: 16px; line-height: 2; margin-block: 16px 0; color: var(--ui-muted); }
body.jf-unified.jf-brand-2026.tr-sui .jf-editorial-page :is(.tr-cards, .jf-about-cards, .jf-learn-grid) { gap: 24px; }
body.jf-unified.jf-brand-2026.tr-sui .jf-editorial-page :is(.tr-tile, .jf-about-card, .jf-learn-card, .jw-work-card) { min-width: 0; background: #fff; color: var(--ui-ink); border: 1px solid var(--ui-line); border-radius: 12px; box-shadow: none; overflow: hidden; transition: border-color .2s ease, box-shadow .2s ease; }
body.jf-unified.jf-brand-2026.tr-sui .jf-editorial-page :is(a.tr-tile, .jf-about-card, .jf-learn-card):hover { background: #fff; border-color: var(--ui-purple); box-shadow: 0 10px 28px #1c14290a; }
body.jf-unified.jf-brand-2026.tr-sui .jf-editorial-page :is(.tr-tile, .jf-about-card, .jf-learn-card, .jw-work-card) :is(h2, h3, .tr-tile__title) { color: var(--ui-ink); }
body.jf-unified.jf-brand-2026.tr-sui .jf-editorial-page :is(.tr-tile__title, .jf-sector-card .tr-tile__title) { font-size: clamp(21px, 1.8vw, 26px) !important; line-height: 1.65; }
body.jf-unified.jf-brand-2026.tr-sui .jf-editorial-page :is(.tr-tile__desc, .tr-index__desc, .jf-about-card p, .jf-learn-card p) { color: var(--ui-muted); font-size: 14px; line-height: 1.95; opacity: 1; }
body.jf-unified.jf-brand-2026.tr-sui .jf-editorial-page :is(.jf-service-card-copy, .jf-sector-card__copy, .jf-about-card__copy, .jf-learn-card__copy, .jw-work-body) { padding: clamp(22px, 2.3vw, 32px); gap: 14px; }
body.jf-unified.jf-brand-2026.tr-sui .jf-editorial-page :is(.jf-service-photo, .jf-about-card__photo, .jf-sector-photo, .jf-learn-card__media) { border-color: var(--ui-line); }
body.jf-unified.jf-brand-2026.tr-sui .jf-editorial-page :is(.jf-about-card__link, .jf-sector-card__link, .jf-learn-read, .jw-work-case-link, .jw-work-visit, .jd-sample-link) { color: var(--ui-purple); font-size: 14px; line-height: 1.8; min-height: 44px; }

/* Service catalog: an indexed visual directory with room for the customer need. */
body.jf-unified.jf-brand-2026.tr-sui .jf-editorial-page.jf-service-page--catalog .tr-index { display: grid; grid-template-columns: repeat(2, minmax(0, 1fr)); gap: 20px; border: 0; }
body.jf-unified.jf-brand-2026.tr-sui .jf-editorial-page.jf-service-page--catalog .tr-index__row { display: grid; grid-template-columns: 32px minmax(0, 1fr) 24px; align-items: start; gap: 18px; padding: 24px; background: #fff; border: 1px solid var(--ui-line); border-radius: 12px; }
body.jf-unified.jf-brand-2026.tr-sui .jf-editorial-page.jf-service-page--catalog .tr-index__row[data-service-photo-row] { grid-template-columns: 128px minmax(0, 1fr) 24px; }
body.jf-unified.jf-brand-2026.tr-sui .jf-editorial-page.jf-service-page--catalog .tr-index__row:hover { padding: 24px; background: #fff; border-color: var(--ui-purple); box-shadow: none; }
body.jf-unified.jf-brand-2026.tr-sui .jf-editorial-page.jf-service-page--catalog .tr-index__num { display: none; }
body.jf-unified.jf-brand-2026.tr-sui .jf-editorial-page.jf-service-page--catalog .tr-index__row .jf-service-photo { width: 128px; aspect-ratio: 1; border-radius: 8px; }
body.jf-unified.jf-brand-2026.tr-sui .jf-editorial-page.jf-service-page--catalog .tr-index__title { font-size: 21px !important; line-height: 1.7; }
body.jf-unified.jf-brand-2026.tr-sui .jf-editorial-page.jf-service-page--catalog .tr-index__desc { display: block; font-size: 14px; line-height: 1.95; margin-top: 12px; }
body.jf-unified.jf-brand-2026.tr-sui .jf-editorial-page .tr-index__go { color: var(--ui-purple); opacity: 1; translate: none; }
body.jf-unified.jf-brand-2026.tr-sui .jf-editorial-page .jf-service-row-copy { min-width: 0; }

/* Service and sector detail: clearly separated context, delivery and questions. */
body.jf-unified.jf-brand-2026.tr-sui .jf-editorial-page .jf-service-context { padding-top: clamp(40px, 5vw, 64px); }
body.jf-unified.jf-brand-2026.tr-sui .jf-editorial-page .jf-service-context__panel { padding: clamp(24px, 3vw, 44px); border: 1px solid var(--ui-line); border-radius: 12px; background: #fff; gap: var(--editorial-gap); }
body.jf-unified.jf-brand-2026.tr-sui .jf-editorial-page .jf-service-context__panel .t-label { font-size: 12px; color: var(--ui-purple); }
body.jf-unified.jf-brand-2026.tr-sui .jf-editorial-page .jf-service-context__panel h2 { font-size: clamp(27px, 2.4vw, 34px); color: var(--ui-ink); line-height: 1.7; }
body.jf-unified.jf-brand-2026.tr-sui .jf-editorial-page .jf-service-context__panel p { color: var(--ui-muted); font-size: 16px; line-height: 2; }
body.jf-unified.jf-brand-2026.tr-sui .jf-editorial-page :is(.jf-service-features .tr-index__row, .tr-step, .jf-service-delivery) { padding: 26px; border: 1px solid var(--ui-line); border-radius: 12px; background: #fff; color: var(--ui-ink); box-shadow: none; }
body.jf-unified.jf-brand-2026.tr-sui .jf-editorial-page .jf-service-features .tr-index__title { font-size: 21px !important; line-height: 1.75; color: var(--ui-ink); }
body.jf-unified.jf-brand-2026.tr-sui .jf-editorial-page :is(.tr-step__t, .jf-service-step-detail .tr-step__t) { font-size: 21px; line-height: 1.7; color: var(--ui-ink); }
body.jf-unified.jf-brand-2026.tr-sui .jf-editorial-page :is(.jf-service-feature-detail p, .jf-service-step-detail p, .jf-service-delivery p, .jf-service-feature-detail ul, .tr-step .t-small) { color: var(--ui-muted); font-size: 14px !important; line-height: 1.95; }
body.jf-unified.jf-brand-2026.tr-sui .jf-editorial-page :is(.tr-step__n, .jf-service-features .tr-index__num) { color: var(--ui-purple); background: var(--ui-paper); border-radius: 6px; }
body.jf-unified.jf-brand-2026.tr-sui .jf-editorial-page .tr-tag { background: #fff; border: 1px solid var(--ui-line); border-radius: 6px; color: var(--ui-ink); font-size: 14px; padding: 9px 14px; }
body.jf-unified.jf-brand-2026.tr-sui .jf-editorial-page .tr-faq { background: #fff; color: var(--ui-ink); padding-inline: 28px; border: 1px solid var(--ui-line); border-radius: 12px; }
body.jf-unified.jf-brand-2026.tr-sui .jf-editorial-page .tr-faq__item { border-color: var(--ui-line); }
body.jf-unified.jf-brand-2026.tr-sui .jf-editorial-page .tr-faq__q { padding-block: 24px; color: var(--ui-ink); }
body.jf-unified.jf-brand-2026.tr-sui .jf-editorial-page .tr-faq__label { font-size: 16px; line-height: 1.9; font-weight: 700; }
body.jf-unified.jf-brand-2026.tr-sui .jf-editorial-page .tr-faq__a p { font-size: 16px; line-height: 2; color: var(--ui-muted); }
body.jf-unified.jf-brand-2026.tr-sui .jf-editorial-page :is(.pc-table-wrap, .pc-card, .pc-help, .sx-tool-shell) { border-radius: 12px; border-color: var(--ui-line); box-shadow: none; }
body.jf-unified.jf-brand-2026.tr-sui .jf-editorial-page :is(.pc-table, .pc-card dd, .pc-note, .pc-help p) { color: var(--ui-muted); font-size: 14px; line-height: 1.95; }
body.jf-unified.jf-brand-2026.tr-sui .jf-editorial-page :is(.pc-table .pc-axis, .pc-table tbody th, .pc-table tfoot th, .pc-card dt) { color: var(--ui-muted); font-size: 12px; }
body.jf-unified.jf-brand-2026.tr-sui .jf-editorial-page :is(.pc-table thead strong, .pc-card > header h3, .pc-help h3) { font-size: 21px; line-height: 1.7; }
body.jf-unified.jf-brand-2026.tr-sui .jf-editorial-page :is(.pc-table thead th, .pc-card > header, .pc-help) { color: var(--ui-ink); background: var(--ui-paper); }
body.jf-unified.jf-brand-2026.tr-sui .jf-editorial-page :is(.pc-table thead th:nth-child(3), .pc-card:nth-child(3n+2) > header) { color: #fff; background: var(--ui-purple); }
body.jf-unified.jf-brand-2026.tr-sui .jf-editorial-page :is(.pc-table thead th:nth-child(4), .pc-card:nth-child(3n) > header) { color: var(--ui-paper); background: var(--ui-ink); }
body.jf-unified.jf-brand-2026.tr-sui .jf-editorial-page .pc-action { color: var(--ui-purple) !important; background: var(--ui-paper); border-color: var(--ui-line); font-size: 14px; }
body.jf-unified.jf-brand-2026.tr-sui .jf-editorial-page .pc-action:hover { border-color: var(--ui-purple); }
body.jf-unified.jf-brand-2026.tr-sui .jf-editorial-page .pc-help > a,
body.jf-unified.jf-brand-2026.tr-sui .jf-editorial-page .pc-help .pc-action { color: #fff !important; background: var(--ui-purple); border-color: var(--ui-purple); }
body.jf-unified.jf-brand-2026.tr-sui .jf-editorial-page .sx-tool-section { background: var(--ui-paper); padding-block: 64px; }
body.jf-unified.jf-brand-2026.tr-sui .jf-editorial-page .sx-tool-shell { gap: var(--editorial-gap); padding: clamp(24px, 3vw, 44px); }
body.jf-unified.jf-brand-2026.tr-sui .jf-editorial-page .jf-sector-metrics { gap: 20px; }
body.jf-unified.jf-brand-2026.tr-sui .jf-editorial-page .tr-metric { background: #fff; border: 1px solid var(--ui-line); border-radius: 12px; padding: 28px; }
body.jf-unified.jf-brand-2026.tr-sui .jf-editorial-page .tr-metric__v { color: var(--ui-purple); font-size: 36px; line-height: 1.4; }
body.jf-unified.jf-brand-2026.tr-sui .jf-editorial-page .tr-metric__l { color: var(--ui-muted); font-size: 14px; }
body.jf-unified.jf-brand-2026.tr-sui .jf-editorial-page .jf-sector-catalog { grid-template-columns: repeat(3, minmax(0, 1fr)); }

/* Studio story and knowledge library. */
body.jf-unified.jf-brand-2026.tr-sui .jf-editorial-page .jf-about-statement { background: var(--ui-paper); padding-block: clamp(48px, 6vw, 88px); }
body.jf-unified.jf-brand-2026.tr-sui .jf-editorial-page .jf-about-statement__panel { background: transparent; padding-block: 0; border: 0; border-radius: 0; box-shadow: none; gap: var(--editorial-gap); }
body.jf-unified.jf-brand-2026.tr-sui .jf-editorial-page .jf-about-statement .t-label { color: var(--ui-purple); font-size: 12px; }
body.jf-unified.jf-brand-2026.tr-sui .jf-editorial-page .jf-about-statement h2 { color: var(--ui-ink); font-size: clamp(27px, 2.6vw, 40px); font-weight: 700; line-height: 1.7; }
body.jf-unified.jf-brand-2026.tr-sui .jf-editorial-page .jf-about-team-copy { color: var(--ui-muted); max-width: 76ch; margin-block-start: 24px; }
body.jf-unified.jf-brand-2026.tr-sui .jf-editorial-page .jf-about-card h3 { font-size: clamp(21px, 1.8vw, 26px); line-height: 1.7; }
body.jf-unified.jf-brand-2026.tr-sui .jf-editorial-page .jf-learn-library { padding-top: clamp(48px, 6vw, 88px); }
body.jf-unified.jf-brand-2026.tr-sui .jf-editorial-page .jf-learn-library__head h2 { font-size: clamp(27px, 2.65vw, 40px); color: var(--ui-ink); }
body.jf-unified.jf-brand-2026.tr-sui .jf-editorial-page .jf-learn-filters { padding: 8px 0 20px; gap: 10px; border: 0; border-bottom: 1px solid var(--ui-line); border-radius: 0; background: transparent; margin-block-end: 32px; }
body.jf-unified.jf-brand-2026.tr-sui .jf-editorial-page .jf-learn-filters a { min-height: 44px; padding: 8px 18px; border: 1px solid var(--ui-line); border-radius: 6px; background: #fff; color: var(--ui-muted); font-size: 14px; }
body.jf-unified.jf-brand-2026.tr-sui .jf-editorial-page .jf-learn-filters a.is-active { background: var(--ui-purple); border-color: var(--ui-purple); color: #fff; }
body.jf-unified.jf-brand-2026.tr-sui .jf-editorial-page .jf-learn-featured { border: 1px solid var(--ui-line); border-radius: 12px; background: var(--ui-ink); color: var(--ui-paper); margin-bottom: 32px; box-shadow: none; }
body.jf-unified.jf-brand-2026.tr-sui .jf-editorial-page .jf-learn-featured__copy { padding: clamp(24px, 3.5vw, 48px); }
body.jf-unified.jf-brand-2026.tr-sui .jf-editorial-page .jf-learn-featured h2 { font-size: clamp(27px, 2.4vw, 36px); line-height: 1.65; color: var(--ui-paper); }
body.jf-unified.jf-brand-2026.tr-sui .jf-editorial-page .jf-learn-featured p { color: var(--ui-dim); font-size: 16px; line-height: 2; }
body.jf-unified.jf-brand-2026.tr-sui .jf-editorial-page .jf-learn-featured :is(.jf-learn-meta, .jf-learn-category, .jf-learn-read) { color: var(--ui-lavender); }
body.jf-unified.jf-brand-2026.tr-sui .jf-editorial-page .jf-learn-featured__badge { color: var(--ui-paper); background: #6840bb55; border-color: #c4b5fd66; border-radius: 4px; font-size: 12px; }
body.jf-unified.jf-brand-2026.tr-sui .jf-editorial-page :is(.jf-learn-meta, .jf-learn-time, .jf-learn-count, .jf-about-card__number) { font-size: 12px; color: var(--ui-muted); }
body.jf-unified.jf-brand-2026.tr-sui .jf-editorial-page .jf-learn-card h3 { font-size: clamp(21px, 1.8vw, 26px); line-height: 1.7; }
body.jf-unified.jf-brand-2026.tr-sui .jf-editorial-page .jf-learn-card__foot { border-top: 1px solid var(--ui-line); padding-top: 16px; }

/* Work and public screenshot portfolio: the project image remains the focus. */
body.jf-unified.jf-brand-2026.tr-sui .jf-editorial-page .jw-work-head { gap: 24px; margin-block-end: 32px; align-items: end; }
body.jf-unified.jf-brand-2026.tr-sui .jf-editorial-page .jw-work-head h2 { font-size: clamp(27px, 2.65vw, 40px); color: var(--ui-ink); }
body.jf-unified.jf-brand-2026.tr-sui .jf-editorial-page .jw-work-head p { color: var(--ui-muted); font-size: 16px; }
body.jf-unified.jf-brand-2026.tr-sui .jf-editorial-page .jw-work-tools { padding: 24px; margin-block-end: 32px; border: 1px solid var(--ui-line); border-radius: 12px; background: #fff; }
body.jf-unified.jf-brand-2026.tr-sui .jf-editorial-page .jw-work-tools :is(label > span, .jw-work-count, .jw-work-reset) { font-size: 12px; color: var(--ui-muted); }
body.jf-unified.jf-brand-2026.tr-sui .jf-editorial-page .jw-work-tools :is(input, select) { border: 1px solid var(--ui-line); border-radius: 6px; background: var(--ui-paper); color: var(--ui-ink); font-size: 16px; min-height: 48px; }
body.jf-unified.jf-brand-2026.tr-sui .jf-editorial-page .jw-work-grid { grid-template-columns: repeat(2, minmax(0, 1fr)); gap: 28px; }
body.jf-unified.jf-brand-2026.tr-sui .jf-editorial-page .jw-work-media { border-color: var(--ui-line); background: #e8e1f1; }
body.jf-unified.jf-brand-2026.tr-sui .jf-editorial-page .jw-work-media-label { color: var(--ui-muted); font-size: 12px; }
body.jf-unified.jf-brand-2026.tr-sui .jf-editorial-page .jw-work-body h3 { font-size: clamp(21px, 1.8vw, 26px); line-height: 1.7; margin-block: 14px 10px; }
body.jf-unified.jf-brand-2026.tr-sui .jf-editorial-page .jw-work-excerpt { font-size: 14px; line-height: 1.95; color: var(--ui-muted); }
body.jf-unified.jf-brand-2026.tr-sui .jf-editorial-page :is(.jw-work-category, .jw-work-sector) { font-size: 12px; line-height: 1.8; color: var(--ui-purple); background: var(--ui-paper); border-radius: 4px; padding: 5px 10px; }
body.jf-unified.jf-brand-2026.tr-sui .jf-editorial-page .jw-work-actions { border-top-color: var(--ui-line); margin-top: auto; padding-top: 16px; }
body.jf-unified.jf-brand-2026.tr-sui .jf-editorial-page :is(.jw-case-overview, .jw-case-visuals, .jw-case-delivery) { padding: clamp(24px, 3vw, 40px); background: #fff; border: 1px solid var(--ui-line); border-radius: 12px; margin-block-end: 32px; }
body.jf-unified.jf-brand-2026.tr-sui .jf-editorial-page :is(.jw-case-story p, .jw-case-delivery p, .jd-case-copy p) { font-size: 16px; line-height: 2; color: var(--ui-muted); }
body.jf-unified.jf-brand-2026.tr-sui .jf-editorial-page :is(.jw-case-kicker, .jw-case-facts dt, .jd-case-label) { color: var(--ui-purple); font-size: 12px; }
body.jf-unified.jf-brand-2026.tr-sui .jf-editorial-page :is(.jw-case-facts dd, .jw-case-delivery li, .jd-case-copy li) { font-size: 14px; color: var(--ui-ink); }
body.jf-unified.jf-brand-2026.tr-sui .jf-editorial-page :is(.jw-case-visit, .jw-case-cta, .jd-case-cta a.jd-primary-link) { font-size: 14px; color: #fff; background: var(--ui-purple); border-radius: 6px; }
body.jf-unified.jf-brand-2026.tr-sui .jf-editorial-page :is(.jw-case-visit, .jw-case-cta, .jd-case-cta a.jd-primary-link):hover { background: #523193; }
body.jf-unified.jf-brand-2026.tr-sui .jf-editorial-page :is(.jw-case-section-head > p, .jw-case-screens figcaption, .jd-case-figure figcaption, .jd-image-dialog > p) { font-size: 14px; color: var(--ui-muted); line-height: 1.9; }
body.jf-unified.jf-brand-2026.tr-sui .jf-editorial-page :is(.jw-case-browser-bar span, .jd-browser-bar b) { font-family: inherit; font-size: 12px; color: var(--ui-muted); letter-spacing: normal; }
body.jf-unified.jf-brand-2026.tr-sui .jf-editorial-page .jd-case-figure figcaption span { color: var(--ui-muted); }
body.jf-unified.jf-brand-2026.tr-sui .jf-editorial-page .jw-case-story { gap: 24px; margin-block: 40px; }
body.jf-unified.jf-brand-2026.tr-sui .jf-editorial-page .jw-case-story > section { padding-block-start: 24px; border-block-start: 2px solid var(--ui-purple); }
body.jf-unified.jf-brand-2026.tr-sui .jf-editorial-page :is(.jw-case-browser, .jd-case-figure) { border: 1px solid var(--ui-line); border-radius: 10px; box-shadow: none; }
body.jf-unified.jf-brand-2026.tr-sui .jf-editorial-page :is(.jw-case-browser-bar, .jd-browser-bar) { background: var(--ui-paper); color: var(--ui-muted); border-color: var(--ui-line); }
body.jf-unified.jf-brand-2026.tr-sui .jf-editorial-page :is(.jd-case-nav a, .jd-zoom-button) { color: var(--ui-ink); background: #fff; border-color: var(--ui-line); border-radius: 6px; font-size: 14px; }
body.jf-unified.jf-brand-2026.tr-sui .jf-editorial-page .jd-case { padding-block-end: 48px; margin-bottom: 48px; border-block-end: 1px solid var(--ui-line); }
body.jf-unified.jf-brand-2026.tr-sui .jf-editorial-page .jd-case-copy { gap: var(--editorial-gap); margin-bottom: 28px; }
body.jf-unified.jf-brand-2026.tr-sui .jf-editorial-page .jd-case-copy h2 { color: var(--ui-ink); font-size: clamp(27px, 2.65vw, 40px); line-height: 1.6; }

/* Long-form reading and direct contact keep a comfortable measure. */
body.jf-unified.jf-brand-2026.tr-sui .jf-editorial-page :is(.tr-prose, .tr-prose p, .tr-prose li) { font-size: 16px; line-height: 2.05; color: var(--ui-ink); }
body.jf-unified.jf-brand-2026.tr-sui .jf-editorial-page .tr-prose { max-width: 80ch; margin-inline: auto; padding: clamp(24px, 4vw, 56px); border: 1px solid var(--ui-line); border-radius: 12px; background: #fff; }
body.jf-unified.jf-brand-2026.tr-sui .jf-editorial-page .tr-prose :is(h2, h3) { color: var(--ui-ink); margin-block: 1.8em .7em; }
body.jf-unified.jf-brand-2026.tr-sui .jf-editorial-page .tr-prose > :first-child { margin-block-start: 0; }
body.jf-unified.jf-brand-2026.tr-sui .jf-editorial-page .tr-prose a { color: var(--ui-purple); text-decoration: underline; text-underline-offset: 4px; }
body.jf-unified.jf-brand-2026.tr-sui .jf-editorial-page.jf-article-page .tr-block--tint > .tr-container > :is(figure, .t-mono) { max-width: 960px; margin-inline: auto; }
body.jf-unified.jf-brand-2026.tr-sui .jf-editorial-page.jf-contact-page .tr-grid { display: grid; grid-template-columns: minmax(0, 1.65fr) minmax(240px, .75fr); gap: var(--editorial-gap); align-items: start; }
body.jf-unified.jf-brand-2026.tr-sui .jf-editorial-page.jf-contact-page .tr-grid > * { grid-column: auto; min-width: 0; }
body.jf-unified.jf-brand-2026.tr-sui .jf-editorial-page.jf-contact-page .tr-form { padding: clamp(24px, 3vw, 40px); border: 1px solid var(--ui-line); border-radius: 12px; background: #fff; }
body.jf-unified.jf-brand-2026.tr-sui .jf-editorial-page.jf-contact-page .tr-field label { color: var(--ui-ink); font-size: 14px; line-height: 1.8; }
body.jf-unified.jf-brand-2026.tr-sui .jf-editorial-page.jf-contact-page .tr-input { font-size: 16px; color: var(--ui-ink); background: var(--ui-paper); border: 1px solid var(--ui-line); border-radius: 6px; padding: 13px 16px; min-height: 50px; box-shadow: none; }
body.jf-unified.jf-brand-2026.tr-sui .jf-editorial-page.jf-contact-page .tr-input::placeholder { color: var(--ui-muted); opacity: 1; }
body.jf-unified.jf-brand-2026.tr-sui .jf-editorial-page.jf-contact-page .tr-grid > aside { background: var(--ui-ink); color: var(--ui-paper); padding: 32px; border: 1px solid #c4b5fd55; border-radius: 12px; margin-top: 0; overflow-wrap: anywhere; }
body.jf-unified.jf-brand-2026.tr-sui .jf-editorial-page.jf-contact-page aside :is(.t-label, .t-small) { color: var(--ui-dim); }
body.jf-unified.jf-brand-2026.tr-sui .jf-editorial-page.jf-contact-page aside a { color: var(--ui-paper); font-size: 14px; line-height: 2; }

/* Closing invitations share the same quiet, high-contrast treatment. */
body.jf-unified.jf-brand-2026.tr-sui .jf-editorial-page :is(.ej-inner-cta.sj-container, .jw-case-next, .jd-case-cta) { padding: clamp(28px, 4vw, 56px); margin-block: 48px 64px; gap: 28px; border: 1px solid #c4b5fd55; border-radius: 12px; background: var(--ui-ink); color: var(--ui-paper); box-shadow: none; }
body.jf-unified.jf-brand-2026.tr-sui .jf-editorial-page :is(.ej-inner-cta, .jw-case-next, .jd-case-cta) :is(h2, h3) { color: var(--ui-paper); font-size: clamp(27px, 2.65vw, 40px); line-height: 1.6; }
body.jf-unified.jf-brand-2026.tr-sui .jf-editorial-page :is(.ej-inner-cta, .jw-case-next, .jd-case-cta) :is(p, .jw-case-kicker) { color: var(--ui-dim); font-size: 16px; }
body.jf-unified.jf-brand-2026.tr-sui .jf-editorial-page :is(.ej-inner-cta, .jw-case-next, .jd-case-cta) :is(.jf-service-intro__details, .jw-case-back) { color: var(--ui-lavender); font-size: 14px; }
body.jf-unified.jf-brand-2026.tr-sui .jf-editorial-page .jd-case-cta a { color: var(--ui-lavender); font-size: 14px; }

@media (max-width: 1199px) {
  body.jf-unified.jf-brand-2026.tr-sui .jf-editorial-page.jf-service-page--catalog .tr-index { grid-template-columns: minmax(0, 1fr); }
  body.jf-unified.jf-brand-2026.tr-sui .jf-editorial-page :is(.jf-sector-catalog, .jf-sector-recommendations, .jf-about-cards, .jf-learn-grid) { grid-template-columns: repeat(2, minmax(0, 1fr)); }
}
@media (max-width: 899px) {
  body.jf-unified.jf-brand-2026.tr-sui .tr-main.jf-editorial-page { --editorial-width: calc(100% - 40px); --editorial-gap: 28px; }
  body.jf-unified.jf-brand-2026.tr-sui .jf-editorial-page :is(.jf-service-intro--with-photo, .jf-about-intro, .jf-learn-intro, .jf-service-faq-layout, .jf-service-context__panel, .jd-case-copy) { grid-template-columns: minmax(0, 1fr); }
  body.jf-unified.jf-brand-2026.tr-sui .jf-editorial-page .jf-service-context__panel > div + div { border-inline-start: 0; border-top: 1px solid var(--ui-line); padding: 24px 0 0; }
  body.jf-unified.jf-brand-2026.tr-sui .jf-editorial-page.jf-contact-page .tr-grid { grid-template-columns: minmax(0, 1fr); }
  body.jf-unified.jf-brand-2026.tr-sui .jf-editorial-page :is(.jw-work-head, .jw-case-next, .jd-case-cta, .ej-inner-cta) { flex-wrap: wrap; }
}
@media (max-width: 760px) {
  /* Reset the photography row's explicit grid areas before stacking the card. */
  body.jf-unified.jf-brand-2026.tr-sui .jf-editorial-page.jf-service-page--catalog .tr-index__row,
  body.jf-unified.jf-brand-2026.tr-sui .jf-editorial-page.jf-service-page--catalog .tr-index__row[data-service-photo-row],
  body.jf-unified.jf-brand-2026.tr-sui .jf-editorial-page.jf-service-page--catalog .tr-index__row:hover { grid-template-columns: minmax(0, 1fr); min-width: 0; padding: 20px; gap: 18px; }
  body.jf-unified.jf-brand-2026.tr-sui .jf-editorial-page.jf-service-page--catalog .tr-index__row > * { grid-area: auto; min-width: 0; }
  body.jf-unified.jf-brand-2026.tr-sui .jf-editorial-page.jf-service-page--catalog .tr-index__row .jf-service-photo { width: 100%; aspect-ratio: 16 / 9; border-radius: 6px; }
  body.jf-unified.jf-brand-2026.tr-sui .jf-editorial-page.jf-service-page--catalog .tr-index__row .jf-service-row-copy { display: block; width: 100%; }
  body.jf-unified.jf-brand-2026.tr-sui .jf-editorial-page.jf-service-page--catalog .tr-index__row :is(.tr-index__title, .tr-index__desc) { display: block; grid-area: auto; min-width: 0; }
  body.jf-unified.jf-brand-2026.tr-sui .jf-editorial-page.jf-service-page--catalog .tr-index__go { display: block; justify-self: end; }
}
@media (max-width: 600px) {
  body.jf-unified.jf-brand-2026.tr-sui .tr-main.jf-editorial-page { --editorial-width: calc(100% - 32px); --editorial-gap: 24px; }
  body.jf-unified.jf-brand-2026.tr-sui .tr-main.jf-editorial-page .tr-phero { padding-block: 112px 44px; }
  body.jf-unified.jf-brand-2026.tr-sui .jf-editorial-page .tr-crumbs { margin-bottom: 24px; font-size: 12px; }
  body.jf-unified.jf-brand-2026.tr-sui .tr-main.jf-editorial-page .tr-phero h1 { font-size: 32px; line-height: 1.55; }
  body.jf-unified.jf-brand-2026.tr-sui .tr-main.jf-editorial-page :is(.tr-block, .jw-work, .jw-case, .jd-portfolio, .jf-about-statement) { padding-block: 44px; }
  body.jf-unified.jf-brand-2026.tr-sui .jf-editorial-page :is(.tr-cards, .jf-sector-catalog, .jf-sector-recommendations, .jf-about-cards, .jf-learn-grid, .jw-work-grid, .jf-service-features, .tr-steps) { grid-template-columns: minmax(0, 1fr); gap: 20px; }
  body.jf-unified.jf-brand-2026.tr-sui .jf-editorial-page :is(.jf-service-intro__photo, .jf-about-photo) { max-height: none; }
  body.jf-unified.jf-brand-2026.tr-sui .jf-editorial-page .tr-faq { padding-inline: 18px; }
  body.jf-unified.jf-brand-2026.tr-sui .jf-editorial-page .tr-faq__label { font-size: 16px; }
  body.jf-unified.jf-brand-2026.tr-sui .jf-editorial-page .jf-about-statement__panel { padding-block: 0; }
  body.jf-unified.jf-brand-2026.tr-sui .jf-editorial-page .jf-learn-filters a { font-size: 14px; padding-inline: 14px; }
  body.jf-unified.jf-brand-2026.tr-sui .jf-editorial-page .jf-learn-featured h2 { font-size: 27px; }
  body.jf-unified.jf-brand-2026.tr-sui .jf-editorial-page .jw-work-tools { padding: 20px; }
  body.jf-unified.jf-brand-2026.tr-sui .jf-editorial-page.jf-contact-page .tr-form__pair { grid-template-columns: minmax(0, 1fr); }
  body.jf-unified.jf-brand-2026.tr-sui .jf-editorial-page :is(.ej-inner-cta.sj-container, .jw-case-next, .jd-case-cta) { padding: 24px; margin-block: 32px 44px; }
}
@media (prefers-reduced-motion: reduce) {
  body.jf-unified.jf-brand-2026.tr-sui .jf-editorial-page :is(.tr-tile, .tr-index__row, .jf-about-card, .jf-learn-card, .jf-learn-featured, .jf-learn-filters a) { transition: none; }
}
