.ai-workflows { padding-bottom:64px; }
.ai-builder__header { max-width:940px; padding:48px 0 20px; }
.ai-builder h1 { font-size:clamp(48px,7vw,96px); line-height:.98; }
.ai-builder h2 { font-size:clamp(28px,3vw,40px); line-height:1.1; letter-spacing:-.035em; }
.ai-builder__notice { border-left:4px solid var(--cobalt); background:var(--surface); padding:20px 24px; margin-bottom:16px; }
.ai-builder__grid { display:grid; grid-template-columns:minmax(0,1fr) minmax(0,1fr); gap:clamp(24px,4vw,64px); border-top:1px solid var(--ink); padding-top:32px; }
.ai-builder__grid > * { min-width:0; }
.ai-builder__field { margin-bottom:20px; }
.ai-builder label { display:block; margin-bottom:6px; font:600 12px/1.5 var(--mono); }
.ai-builder textarea,.ai-builder select { display:block; width:100%; min-width:0; max-width:100%; padding:12px; border:1px solid var(--line); border-radius:0; background:var(--white); color:var(--ink); font:14px/1.6 var(--sans); }
.ai-builder textarea { resize:vertical; }
.ai-builder [data-ai-output] { font-family:var(--mono); white-space:pre; overflow:auto; background:var(--surface); }
.ai-builder [aria-invalid=true] { border:2px solid #a72121; }
.ai-builder__error { display:block; color:#a72121; font-size:13px; }
.ai-builder__actions { display:flex; flex-wrap:wrap; gap:10px; margin:18px 0 26px; }
.ai-builder button { border:1px solid var(--ink); padding:10px 16px; background:var(--white); cursor:pointer; font:600 12px/1.5 var(--mono); }
.ai-builder button[type=submit] { background:var(--cobalt); border-color:var(--cobalt); color:var(--white); }
.ai-builder button:disabled { opacity:.45; cursor:not-allowed; }
.ai-builder__guides { display:flex; flex-wrap:wrap; gap:16px 32px; border-top:1px solid var(--ink); padding-top:24px; }
.ai-builder__guides a { text-decoration:underline; text-underline-offset:4px; }
.ai-builder [data-ai-status] { min-height:3.2em; }
@media (max-width:760px) { .ai-builder__grid { grid-template-columns:minmax(0,1fr); } .ai-builder__header { padding-top:32px; } }
@media (prefers-reduced-motion:reduce) { .ai-workflows * { scroll-behavior:auto; } }
/* Editorial field hub; the builder rules below remain scoped. */
.ai-hub__hero { display:grid; grid-template-columns:1.05fr .95fr; gap:48px; align-items:center; padding:65px 0 75px; }
.ai-hub__hero h1 { font:400 clamp(48px,5.3vw,84px)/.98 var(--serif); letter-spacing:-.05em; margin:25px 0; }
.ai-hub__hero h1 em { color:var(--cobalt); }
.ai-hub__hero p { max-width:600px; line-height:1.65; }
.ai-hub__hero figure { margin:0; }
.ai-hub__hero img { width:100%; height:auto; border:1px solid var(--line); }
.ai-hub figcaption { color:var(--muted); font:10px/1.6 var(--mono); padding-top:12px; }
.ai-hub__jump { display:flex; flex-wrap:wrap; gap:12px 24px; margin-top:24px; font:12px/1.5 var(--mono); }
.ai-hub__jump a { text-decoration:underline; text-underline-offset:4px; }
.ai-hub__method { padding:26px 0; border-block:1px solid var(--ink); max-width:900px; line-height:1.65; }
.ai-hub__products { display:grid; grid-template-columns:1fr 1fr; gap:50px; margin:65px 0; }
.ai-hub__products h2 { font-size:36px; }
.ai-hub__products a { display:block; margin:14px 0; color:var(--cobalt); }
.ai-hub__stage { display:grid; grid-template-columns:minmax(180px,.4fr) minmax(0,1fr); gap:50px; border-top:1px solid var(--ink); padding:40px 0 60px; scroll-margin-top:30px; }
.ai-hub__stage h2 { font-size:44px; margin:20px 0; }
.ai-hub__stage header p:not(.label) { line-height:1.6; color:var(--muted); }
.ai-hub__tools { margin:40px 0 90px; }
.ai-hub__tools h2 { font-size:48px; }
.ai-hub__tools>div { display:grid; grid-template-columns:1fr 1fr; gap:36px; }
.ai-hub__tools>div>a { min-width:0; border-top:1px solid var(--ink); padding-top:24px; }
.ai-hub__tools h3 { font-size:30px; }
.ai-hub__tools p { line-height:1.6; }
@media(max-width:760px) {
  .ai-hub__hero,.ai-hub__products,.ai-hub__stage,.ai-hub__tools>div { grid-template-columns:1fr; gap:25px; }
  .ai-hub__hero { padding-top:35px; }
  .ai-hub__hero h1 { font-size:clamp(42px,11vw,64px); }
  .ai-hub__stage { padding-bottom:35px; }
  .ai-hub__stage h2 { font-size:36px; }
}
