body:is([data-page="web"],[data-page="software"],[data-page="consultoria"],[data-page="automatizacion"]) { background: var(--sbi-ink); }
body:is([data-page="ejemplo-web"],[data-page="ejemplo-software"],[data-page="ejemplo-consultoria"]) { background: var(--sbi-white); }
.web-exploration-link { margin-top: 64px; padding-top: 30px; border-top: 1px dashed var(--ai-rule); display: flex; align-items: center; justify-content: space-between; gap: 24px; }
.web-exploration-link p { color: var(--sbi-white); mix-blend-mode: difference; font-size: clamp(16px, 1.35vw, 23px); line-height: 1.4; margin: 0; }
.web-example-return { padding: 0 var(--site-gutter) 65px; }
.service-figure-stage[data-renderer="webgl"] .ai-computation-fallback { visibility: hidden; }
.service-figure-stage[data-renderer="fallback"] canvas { visibility: hidden; }
/* CNSLT_ is the widest service word: 3.217em after tracking and optical
   alignment. The figure starts at 44% minus the gutter and is 56% wide:
   44% + 10% of 56% = 49.6%. All four titles share this measured size. */
.ai-editorial-service:not([data-service="automatizacion"]) .ai-hero { container-type: inline-size; }
.ai-editorial-service:not([data-service="automatizacion"]) .ai-hero-word { bottom: 144px; font-size: min(620px, 64svh, calc((49.6cqw - 2 * var(--site-gutter)) / 3.217)); }
.service-editorial .ai-hero-word > span { transform: translateX(-.035em); }
.service-editorial[data-service="web"] .ai-hero-word > span { transform: translateX(-.012em); }
.service-editorial[data-service="software"] .ai-hero-word > span { transform: translateX(-.01em); }
.service-editorial[data-service="automatizacion"] .ai-hero-word { font-size: clamp(100px, 12.2vw, 210px); }
.service-editorial .ai-proof > #ejemplo { scroll-margin-top: 45px; }
.service-editorial .atelier-toolbar { justify-content: space-between; }
.service-editorial .world-picker { border-color: var(--sbi-gray-4); border-radius: 3px; overflow: clip; }
.service-editorial .world-stage { background: var(--sbi-gray-2); border-radius: 3px; }
.service-editorial .world-copy a svg { width: 16px; height: 16px; fill: none; stroke: currentColor; stroke-width: 1.5; }
.service-editorial .workspace-app { background: var(--sbi-white); color: var(--sbi-ink); border-color: var(--sbi-gray-4); border-radius: 3px; overflow: clip; }
.service-editorial .workspace-sidebar { background: var(--sbi-gray-2); border-color: var(--sbi-gray-4); }
.service-editorial .workspace-sidebar > p, .service-editorial .workspace-subtitle { color: var(--sbi-gray-6); }
.service-editorial .workspace-topbar, .service-editorial .workspace-agenda, .service-editorial .workspace-agenda p, .service-editorial .workspace-table :is(th, td) { border-color: var(--sbi-gray-4); }
.service-editorial .workspace-request, .service-editorial .workspace-project-detail { background: var(--sbi-gray-1); border-radius: 3px; }
.service-editorial .workspace-status { color: var(--sbi-gray-6); }
.consulting-example { padding: clamp(22px, 4vw, 65px); background: var(--sbi-gray-2); color: var(--sbi-ink); border-radius: 3px; }
.consulting-fields { display: grid; grid-template-columns: 1fr 1fr; gap: 30px; margin-bottom: 35px; }
.consulting-fields label { display: flex; flex-direction: column; gap: 15px; font-size: 16px; }
.consulting-fields select { width: 100%; min-height: 48px; padding: 12px 14px; border: 1px solid var(--sbi-gray-5); border-radius: 3px; background: var(--sbi-white); color: var(--sbi-ink); font: inherit; color-scheme: light; }
.consulting-result { margin-top: 40px; border-top: 1px dashed var(--sbi-gray-4); padding-top: 35px; }
.consulting-result > p { max-width: 65ch; font-size: 17px; line-height: 1.45; }
.consulting-result h3 { font-size: clamp(30px, 3.3vw, 55px); max-width: 24ch; line-height: 1.1; margin-bottom: 40px; }
.consulting-result dl { display: grid; grid-template-columns: repeat(3, 1fr); gap: 30px; margin: 0; }
.consulting-result dt { font: 600 11px/1.5 ui-monospace, monospace; text-transform: uppercase; margin-bottom: 18px; }
.consulting-result dd { font-size: 17px; line-height: 1.45; margin: 0; }
.service-editorial .automation-controls select { border-color: var(--sbi-gray-5); border-radius: 3px; background: var(--sbi-white); color: var(--sbi-ink); }
.service-editorial .automation-flow li { border-color: var(--sbi-gray-4); border-radius: 3px; }
.service-editorial .automation-flow li[data-state="done"] { background: var(--sbi-gray-2); color: var(--sbi-ink); }
.service-editorial .automation-flow li[data-state="review"] { background: var(--sbi-gray-2); color: var(--sbi-ink); }
@media (hover: hover) and (pointer: fine) {
}
@media (max-width: 900px) and (min-width: 701px) {
  .service-editorial .ai-hero-meta { font-size: 16px; }
}
/* The tablet figure is 58% wide: 42% + 10% of 58% = 47.8%.
   Mobile places the title below the figure, where CNSLT_ fits the full gutter. */
@media (max-width: 900px) {
  .ai-editorial-service:not([data-service="automatizacion"]) .ai-hero-word { font-size: min(64svh, calc((47.8cqw - 2 * var(--site-gutter)) / 3.217)); }
}
@media (max-width: 700px) {
  .ai-editorial-service:not([data-service="automatizacion"]) .ai-hero-word { bottom: 100px; font-size: min(200px, calc((100cqw - 2 * var(--site-gutter)) / 3.217)); }
  .web-exploration-link { margin-top: 40px; flex-direction: column; align-items: stretch; gap: 20px; }
  .service-editorial[data-service="automatizacion"] .ai-hero-word { font-size: 22.8vw; bottom: 127px; }
  .service-editorial .atelier-toolbar { flex-wrap: wrap; gap: 20px; }
  .service-editorial .world-picker { order: 0; flex-basis: auto; width: 100%; }
  .service-editorial .world-picker button { flex: 1; }
  .service-editorial .viewport-switch { margin-left: auto; }
  .consulting-fields, .consulting-result dl { grid-template-columns: 1fr; gap: 28px; }
  .consulting-example { padding: 22px 18px; }
  .consulting-result { margin-top: 30px; padding-top: 28px; }
  .consulting-result dd { font-size: 16px; }
}
