@font-face{font-family:"Geist Halo";src:url("../design-system/Geist-Variable.woff2") format("woff2-variations");font-weight:100 900;font-display:swap}

/* Strategy Studio v3. The document is the primary object; controls behave like instruments around it. */
.strategy-page{
  --studio-bg:#eeefef;
  --studio-surface:#fafaf9;
  --studio-paper:#fdfdfc;
  --studio-ink:#171719;
  --studio-muted:#67676b;
  --studio-faint:#929296;
  --studio-line:rgba(23,23,25,.085);
  --studio-violet:#3827c7;
  --studio-violet-soft:#ebe9ff;
  --studio-green:#237451;
  --studio-radius:18px;
  --studio-control-radius:11px;
  --studio-ease:cubic-bezier(.22,1,.36,1);
  color:var(--studio-ink);
  background:var(--studio-bg);
  font-family:"Geist Halo",system-ui,sans-serif;
  letter-spacing:-.018em;
}

.strategy-page>.topbar{
  width:min(calc(100% - 32px),1540px);
  min-height:68px;
  margin:12px auto 0;
  padding:8px 10px 8px 18px;
  grid-template-columns:auto minmax(170px,.72fr) auto auto auto auto;
  gap:10px;
  background:rgba(250,250,249,.92);
  border:0;
  border-radius:18px;
  box-shadow:inset 0 0 0 1px rgba(255,255,255,.72),0 8px 28px rgba(28,28,31,.055);
  backdrop-filter:blur(20px);
}
.strategy-page>.topbar .brand{padding-right:15px;border-right:1px solid var(--studio-line)}
.strategy-page>.topbar .brand img{width:86px}
.document-breadcrumb{gap:11px}
.document-breadcrumb__icon{width:34px;height:34px;color:#fff;background:var(--studio-ink);border-radius:10px;box-shadow:none;font-size:12px;font-weight:760}
.document-breadcrumb b{font-size:13px;font-weight:680;letter-spacing:-.015em}
.document-breadcrumb small{margin-top:2px;color:var(--studio-faint);font-size:10px}
.topbar-tabs{padding:4px;background:#e9e9e7;border-radius:13px}
.topbar-tabs a{min-height:38px;padding:0 12px;border-radius:9px;color:var(--studio-muted);font-size:11px;font-weight:620}
.topbar-tabs a svg{width:14px;height:14px}
.topbar-tabs a.is-active{color:var(--studio-ink);background:#fff;box-shadow:0 1px 2px rgba(23,23,25,.08),0 5px 14px rgba(23,23,25,.04)}
.strategy-page .account{max-width:130px;overflow:hidden;text-overflow:ellipsis;color:var(--studio-muted);font-size:10px}
.strategy-page .signout,.strategy-page .new-button{min-height:42px;border:0;border-radius:11px;font-size:11px}
.strategy-page .signout{background:#ededeb}
.strategy-page .new-button{min-width:128px;padding:0 8px 0 14px;display:inline-flex;align-items:center;justify-content:space-between;flex:0 0 auto;gap:10px;color:#fff;background:var(--studio-ink);line-height:1;white-space:nowrap}
.strategy-page .new-button span{width:27px;height:27px;display:grid;place-items:center;color:var(--studio-ink);background:#fff;border-radius:8px}

.strategy-page>main{width:min(calc(100% - 40px),1460px);max-width:none;padding:34px 0 100px}
.studio-heading{min-height:250px;padding:30px 8px 44px;grid-template-columns:minmax(0,1.25fr) minmax(360px,.75fr);align-items:end;gap:72px}
.studio-heading .eyebrow{margin-bottom:14px;color:var(--studio-violet);font-size:10px;letter-spacing:.1em}
.studio-heading h1{max-width:850px;margin:0;font-size:clamp(54px,5.8vw,84px);font-weight:610;line-height:.9;letter-spacing:-.065em;text-wrap:balance}
.studio-heading__intro{max-width:44ch;margin:24px 0 0;color:var(--studio-muted);font-size:17px;line-height:1.45}
.studio-heading__support>p{max-width:48ch;color:var(--studio-muted);font-size:14px;line-height:1.55}
.studio-process{margin-top:24px;gap:0;border-top:1px solid var(--studio-line)}
.studio-process li{min-height:48px;padding:0 17px 0 0;gap:8px;color:var(--studio-muted);background:transparent;border-radius:0;box-shadow:none;font-size:11px}
.studio-process li+li{padding-left:17px;border-left:1px solid var(--studio-line)}
.studio-process span{width:22px;height:22px;color:var(--studio-violet);background:var(--studio-violet-soft);border-radius:7px;font-size:9px}

.project-library{padding:20px;background:#e3e4e3;border:0;border-radius:var(--studio-radius);box-shadow:inset 0 1px 0 rgba(255,255,255,.75)}
.project-library>header{margin:0 0 15px;padding:0 2px}
.project-library .eyebrow{display:none}
.project-library h2{margin:0;font-size:18px;font-weight:680;letter-spacing:-.035em}
.project-library [data-project-count]{color:var(--studio-muted);font-size:11px}
.project-library [data-new-project-inline]{min-height:38px;padding:0 13px;color:#fff;background:var(--studio-ink);border:0;border-radius:10px;box-shadow:none;font-size:11px;line-height:1;white-space:nowrap}
.project-list{margin:0;padding:0;display:grid;grid-auto-flow:initial;grid-template-columns:repeat(3,minmax(0,1fr));gap:9px;overflow:visible}
.project-card{min-width:0;min-height:188px;padding:18px;display:flex;flex-direction:column;background:var(--studio-paper);border:0;border-radius:15px;box-shadow:0 1px 2px rgba(23,23,25,.05),0 10px 26px rgba(23,23,25,.035);transition:transform 180ms var(--studio-ease),box-shadow 180ms var(--studio-ease)}
.project-card:hover{transform:translateY(-3px);box-shadow:0 2px 3px rgba(23,23,25,.06),0 16px 34px rgba(23,23,25,.07)}
.project-card>header>span{width:30px;height:30px;color:#fff;background:var(--studio-violet);border-radius:9px;box-shadow:none;font-size:10px}
.project-card>header small{max-width:24ch;color:var(--studio-faint);font-size:10px;white-space:nowrap;overflow:hidden;text-overflow:ellipsis}
.project-card h3{margin:22px 0 0;font-size:21px;font-weight:640;line-height:1.08;letter-spacing:-.04em}
.project-card__meta{margin-top:10px;color:var(--studio-faint);font-size:10px}
.project-card footer{margin-top:auto;padding-top:18px;gap:7px;border:0}
.project-card footer button{min-width:0;min-height:38px;padding:0 12px;display:inline-flex;align-items:center;justify-content:space-between;flex:1 1 0;border:0;border-radius:10px;box-shadow:inset 0 0 0 1px var(--studio-line);font-size:11px;line-height:1;white-space:nowrap}
.project-card footer button.is-primary{color:#fff;background:var(--studio-ink);box-shadow:none}
.project-card footer button:hover{color:var(--studio-violet);background:var(--studio-violet-soft)}
.project-card footer button.is-primary:hover{color:#fff;background:var(--studio-violet)}

.intake-layout{margin-top:12px;grid-template-columns:minmax(0,1fr) 350px;gap:12px;align-items:start}
.strategy-intake{padding:0;background:var(--studio-surface);border:0;border-radius:var(--studio-radius);box-shadow:0 1px 2px rgba(23,23,25,.04),0 14px 38px rgba(23,23,25,.035);overflow:hidden}
.strategy-intake>header,.output-picker>header{min-height:92px;margin:0;padding:22px 26px;display:flex;align-items:center;border-bottom:1px solid var(--studio-line)}
.strategy-intake h2,.output-picker h2{font-size:23px;font-weight:640;letter-spacing:-.04em}
.strategy-intake .eyebrow,.output-picker .eyebrow{margin-bottom:5px;color:var(--studio-faint);font-size:9px;letter-spacing:.09em}
.step-number{width:36px;height:36px;color:var(--studio-violet);background:var(--studio-violet-soft);border:0;border-radius:10px;font-size:10px}
.source-status,.output-picker>header>span:last-child{margin-left:auto;padding:8px 10px;color:var(--studio-muted);background:#ededeb;border-radius:9px;font-size:10px}
.source-status.is-ready{color:var(--studio-green);background:#e4f0e9}
.intake-fields{margin:0;padding:26px;gap:20px}
.client-field{max-width:480px}
.strategy-intake label>span{margin-bottom:8px;color:var(--studio-ink);font-size:12px;font-weight:630}
.strategy-intake input,.strategy-intake textarea{padding:15px 16px;background:#eeefed;border:0;border-radius:var(--studio-control-radius);box-shadow:inset 0 1px 2px rgba(23,23,25,.04);font-size:14px}
.strategy-intake input{min-height:50px}
.context-field textarea{min-height:280px;background:#f4f4f2;font-size:16px;line-height:1.65;resize:vertical}
.context-field small{margin-top:9px;color:var(--studio-faint);font-size:11px}
.strategy-intake input:focus,.strategy-intake textarea:focus{box-shadow:inset 0 0 0 1px rgba(56,39,199,.55),0 0 0 3px rgba(56,39,199,.08)}
.source-drop{min-height:88px;padding:15px 16px;background:transparent;border:1px dashed rgba(23,23,25,.17);border-radius:var(--studio-control-radius);box-shadow:none}
.source-drop:hover{background:var(--studio-violet-soft);border-color:rgba(56,39,199,.28);box-shadow:none}
.source-drop__icon{width:38px;height:38px;color:var(--studio-violet);background:var(--studio-violet-soft);border-radius:10px}
.source-drop b{font-size:13px}.source-drop small{font-size:10px}.source-drop__action{min-height:36px;border-radius:9px;font-size:10px}
.file-list span{border-radius:9px}

.output-picker{margin:0;padding:0;border-top:8px solid var(--studio-bg)}
.scope-presets{margin:0;padding:20px 26px 10px;grid-template-columns:repeat(2,minmax(0,1fr));gap:8px}
.scope-preset{min-height:92px;padding:15px;background:#f1f1ef;border:0;border-radius:var(--studio-control-radius);box-shadow:none}
.scope-preset:hover{background:#ecebe9;box-shadow:none;transform:translateY(-1px)}
.scope-preset.is-active{color:var(--studio-ink);background:var(--studio-violet-soft);box-shadow:inset 0 0 0 1px rgba(56,39,199,.13)}
.scope-preset span{font-size:13px}.scope-preset small{font-size:10px}.scope-preset i{width:26px;height:26px;border-radius:8px}
.selected-scope{margin:8px 26px 0;gap:6px}
.selected-scope span{min-height:33px;padding:0 7px 0 10px;color:#3025a6;background:var(--studio-violet-soft);border-radius:9px;font-size:10px}
.scope-customize{margin:16px 26px 26px;border:1px solid var(--studio-line);border-radius:var(--studio-control-radius);box-shadow:none}
.scope-customize summary{min-height:58px;padding:0 15px}.scope-customize summary span{font-size:12px}.scope-customize summary small{font-size:10px}

.studio-rail{top:94px}
.generate-panel{padding:24px;color:#fff;background:#1d1d20;border:0;border-radius:var(--studio-radius);box-shadow:0 14px 36px rgba(23,23,25,.12)}
.generate-panel__status>span{width:7px;height:7px;background:#747479;box-shadow:none}
.generate-panel.is-ready .generate-panel__status>span{background:#77d3a4;box-shadow:0 0 0 4px rgba(119,211,164,.1)}
.generate-panel .eyebrow{color:#96969c;font-size:9px}
.generate-panel h2{max-width:290px;margin:28px 0 0;font-size:31px;font-weight:590;line-height:1;letter-spacing:-.05em}
.blueprint-metrics{margin-top:26px;gap:0;border-block:1px solid rgba(255,255,255,.1)}
.blueprint-metrics>div{padding:17px 0;background:transparent;border-radius:0;box-shadow:none}
.blueprint-metrics>div+div{padding-left:17px;border-left:1px solid rgba(255,255,255,.1)}
.blueprint-metrics strong{font-size:30px;font-weight:560}
.blueprint-metrics span{color:#96969c;font-size:10px}
.blueprint-list{margin-top:18px}.blueprint-list span{font-size:11px}.blueprint-list i{color:var(--studio-violet);background:#fff}
.generate-panel>p:not(.eyebrow){margin:22px 0;color:#aaaab0;font-size:11px;line-height:1.55}
.generate-panel .generate-button{min-height:50px;color:#fff;background:var(--studio-violet);border-radius:var(--studio-control-radius);box-shadow:none;font-size:12px;line-height:1;white-space:nowrap}
.generate-panel .generate-button:hover{color:var(--studio-ink);background:#fff;box-shadow:none}

/* The editor view removes the landing-page posture and behaves like a focused writing application. */
.document-view{margin-top:-22px}
.document-toolbar{position:sticky;z-index:8;top:92px;min-height:62px;padding:8px 0;background:rgba(238,239,239,.91);border:0;box-shadow:0 1px 0 var(--studio-line);backdrop-filter:blur(18px)}
.document-toolbar>div:first-child,.document-toolbar__actions{padding:3px;background:#e3e4e3;border-radius:12px;box-shadow:none}
.document-toolbar button{min-height:38px;padding:0 12px;border:0;border-radius:9px;color:var(--studio-muted);font-size:10px;font-weight:650;line-height:1;white-space:nowrap}
.document-toolbar button:hover{color:var(--studio-ink);background:#fff}
.document-toolbar button.primary{color:#fff;background:var(--studio-violet)}
.document-toolbar button.primary:hover{color:#fff;background:#2f20ae}
.document-status{margin:0 7px;color:var(--studio-muted);font-size:10px}
.document-status.is-saved{color:var(--studio-green);background:transparent}
.document-workspace{width:min(100%,1460px);padding-top:18px;grid-template-columns:minmax(650px,1fr) 420px;gap:12px;align-items:start}
.document-canvas{min-height:1100px;padding:84px clamp(58px,7vw,110px);background:var(--studio-paper);border:0;border-radius:var(--studio-radius);box-shadow:0 1px 2px rgba(23,23,25,.04),0 18px 48px rgba(23,23,25,.045)}
.document-canvas:before{content:"Editable strategy";position:absolute;top:24px;right:26px;color:var(--studio-faint);font-size:9px;font-weight:700;letter-spacing:.08em;text-transform:uppercase}
.doc-kicker{max-width:66ch;margin-bottom:20px;color:var(--studio-violet);font-size:10px;letter-spacing:.08em}
.document-canvas h1{max-width:15ch;margin:0;font-size:clamp(52px,5vw,76px);font-weight:610;line-height:.91;letter-spacing:-.065em;text-wrap:balance}
.doc-rule{margin:42px 0;border-color:var(--studio-line)}
.doc-summary{max-width:65ch;margin-bottom:76px;color:#29292c;font-size:21px;line-height:1.58;letter-spacing:-.025em}
.doc-section{max-width:72ch;margin-bottom:72px;padding:0}
.doc-section__number{display:none}
.document-canvas h2{margin:0 0 18px;font-size:34px;font-weight:610;line-height:1.05;letter-spacing:-.045em}
.doc-body{color:#343438;font-size:17px;line-height:1.75}
.doc-bullet-label{margin:28px 0 10px;color:var(--studio-violet);font-size:10px;letter-spacing:.09em}
.doc-bullets{margin:0;padding:18px 20px 18px 39px;background:#f2f2f0;border:0;border-radius:var(--studio-control-radius);font-size:15px;line-height:1.65}
.doc-bullets li+li{margin-top:9px}.doc-bullets li::marker{color:var(--studio-violet)}
.document-canvas [contenteditable="true"]{border-radius:6px;transition:background-color 150ms,box-shadow 150ms}
.document-canvas [contenteditable="true"]:hover{background:#f3f3f1}
.document-canvas [contenteditable="true"]:focus{background:#f0efff;box-shadow:0 0 0 5px #f0efff;outline:0}
.doc-footer{margin-top:100px;padding-top:20px;border-top:1px solid var(--studio-line);color:var(--studio-faint);font-size:9px}

.document-aside{position:sticky;top:172px;max-height:calc(100dvh - 188px);background:var(--studio-surface);border:0;border-radius:var(--studio-radius);box-shadow:0 1px 2px rgba(23,23,25,.04),0 14px 38px rgba(23,23,25,.045);overflow:hidden}
.aside-tabs{padding:6px;background:#e8e8e6;border:0;border-radius:0}
.aside-tabs button{min-height:40px;border:0;border-radius:9px;color:var(--studio-muted);font-size:10px;font-weight:670;line-height:1;white-space:nowrap}
.aside-tabs button.is-active{color:var(--studio-ink);background:#fff;box-shadow:0 1px 2px rgba(23,23,25,.06)}
.guidance-panel,.chat-panel,.history-panel{max-height:calc(100dvh - 238px);padding:22px;scrollbar-color:rgba(23,23,25,.16) transparent}
.guidance-intro{margin:0 0 14px;padding:0 0 20px;background:transparent;border-bottom:1px solid var(--studio-line);border-radius:0}
.guidance-intro>span{display:block;margin-bottom:12px;color:var(--studio-violet);font-size:9px;font-weight:730;letter-spacing:.08em;text-transform:uppercase}
.guidance-intro b{font-size:20px;font-weight:620;letter-spacing:-.04em}
.guidance-intro p{max-width:34ch;margin:8px 0 0;color:var(--studio-muted);font-size:12px;line-height:1.5}
.confidence-card{padding:18px;background:#eeeeec;border:0;border-radius:var(--studio-control-radius)}
.confidence-card span{color:var(--studio-muted);font-size:9px;letter-spacing:.07em}
.confidence-card strong{margin-top:11px;color:var(--studio-ink);font-size:27px;font-weight:590;text-transform:capitalize}
.confidence-card small{margin-top:8px;color:var(--studio-muted);font-size:11px;line-height:1.5}
.guidance-block{margin-top:28px}.guidance-block>header{gap:10px}.guidance-block>header>span{width:27px;height:27px;color:var(--studio-violet);background:var(--studio-violet-soft);border-radius:8px;font-size:11px}
.guidance-block h3{font-size:14px;font-weight:650}.guidance-block>header small{max-width:33ch;margin-top:3px;color:var(--studio-faint);font-size:10px;line-height:1.4}
.guidance-item{margin-top:10px;padding:15px;background:#f0f0ee;border:0;border-radius:var(--studio-control-radius)}
.guidance-item:hover{background:#ecebe9;border:0}
.guidance-item b{font-size:13px;line-height:1.45}.guidance-item p{margin:7px 0 0;color:var(--studio-muted);font-size:11px;line-height:1.5}.guidance-item small{margin-top:8px;color:var(--studio-faint);font-size:9px}
.guidance-item button{min-height:38px;margin-top:12px;color:var(--studio-violet);background:#fff;border:0;border-radius:9px;font-size:10px;line-height:1;white-space:nowrap}
.guidance-item button:hover{color:#fff;background:var(--studio-violet)}
.guidance-empty{padding:14px;color:var(--studio-muted);background:#f0f0ee;border-radius:var(--studio-control-radius);font-size:11px;line-height:1.5}
.chat-intro{padding:15px;background:#eeeeec;border-radius:var(--studio-control-radius)}
.chat-message{border-radius:var(--studio-control-radius);font-size:12px;line-height:1.5}
.chat-form{bottom:-22px;margin:0 -22px -22px;padding:12px;background:rgba(250,250,249,.96);grid-template-columns:minmax(0,1fr) 42px}
.chat-form textarea{min-height:70px;padding:12px;background:#eeeeec;border:0;border-radius:var(--studio-control-radius);font-size:12px}
.chat-form button{width:42px;height:42px;background:var(--studio-violet);border-radius:10px}
.history-item{min-height:68px;padding:13px;background:#eeeeec;border:0;border-radius:var(--studio-control-radius)}

.strategy-page button{transition:transform 130ms var(--studio-ease),background-color 160ms,color 160ms,box-shadow 160ms}
.strategy-page button:active{transform:scale(.97)}
.strategy-page button:disabled{cursor:wait;opacity:.58}
.strategy-page button:focus-visible,.strategy-page a:focus-visible,.strategy-page summary:focus-visible,.strategy-page input:focus-visible,.strategy-page textarea:focus-visible,.strategy-page [contenteditable="true"]:focus-visible{outline:3px solid rgba(56,39,199,.25);outline-offset:2px}

@media(max-width:1180px){
  .strategy-page>.topbar{grid-template-columns:auto minmax(150px,1fr) auto auto auto}.strategy-page .account{display:none}
  .studio-heading{grid-template-columns:minmax(0,1fr) 360px;gap:42px}
  .document-workspace{grid-template-columns:minmax(560px,1fr) 360px}
}
@media(max-width:960px){
  .topbar-tabs{display:none}.strategy-page>.topbar{grid-template-columns:auto minmax(140px,1fr) auto auto}
  .studio-heading{min-height:0;grid-template-columns:1fr;gap:28px}.studio-heading h1{max-width:780px}.studio-heading__support>p{max-width:62ch}
  .project-list{grid-template-columns:repeat(2,minmax(0,1fr))}
  .intake-layout,.document-workspace{grid-template-columns:1fr}.studio-rail,.document-aside{position:static;max-height:none}.guidance-panel,.chat-panel,.history-panel{max-height:none}
  .document-toolbar{top:88px}.document-canvas{padding-inline:clamp(40px,8vw,80px)}
}
@media(max-width:680px){
  .strategy-page>.topbar{width:calc(100% - 16px);min-height:60px;margin-top:8px;padding:7px 8px 7px 12px;grid-template-columns:auto 1fr auto}.strategy-page>.topbar .brand{display:none}.strategy-page .signout{display:none}.document-breadcrumb__icon{width:31px;height:31px}.strategy-page .new-button{width:42px;min-width:42px;padding:0;display:grid;place-items:center;font-size:0}.strategy-page .new-button span{font-size:14px}
  .strategy-page>main{width:calc(100% - 16px);padding-top:18px}.studio-heading{padding:24px 8px 34px}.studio-heading h1{font-size:47px}.studio-heading__intro{font-size:15px}.studio-process{overflow:auto}
  .project-library{padding:14px}.project-library>header{align-items:flex-start}.project-library>header>div:last-child{flex-direction:column;align-items:flex-end}.project-list{grid-template-columns:1fr}
  .strategy-intake>header,.output-picker>header{padding:18px}.intake-fields{padding:20px}.context-field textarea{min-height:220px}.scope-presets{padding:18px 20px 8px;grid-template-columns:1fr}.selected-scope{margin-inline:20px}.scope-customize{margin-inline:20px}
  .document-view{margin-top:0}.document-toolbar{top:76px;overflow:auto}.document-toolbar>div{flex:0 0 auto}.document-toolbar__actions button:nth-child(2),.document-toolbar__actions button:nth-child(3){display:none}
  .document-canvas{min-height:800px;padding:64px 25px;border-radius:15px}.document-canvas:before{top:20px;right:20px}.document-canvas h1{font-size:45px}.doc-summary{font-size:18px}.document-canvas h2{font-size:29px}.doc-body{font-size:16px}.doc-section{margin-bottom:58px}
  .document-aside{border-radius:15px}
}
@media(prefers-reduced-motion:reduce){.strategy-page *{scroll-behavior:auto!important;transition-duration:.01ms!important;animation-duration:.01ms!important}}
/* Connected project context */
.project-context-banner{width:min(1380px,calc(100% - 64px));margin:24px auto 0;padding:22px 24px;display:grid;grid-template-columns:minmax(0,1fr) auto auto;align-items:center;gap:34px;background:#f1f0ff;border:1px solid rgba(56,39,199,.14);border-radius:18px}.project-context-banner>div>span{color:#3827c7;font-size:10px;font-weight:750;text-transform:uppercase;letter-spacing:.12em}.project-context-banner h2{margin:6px 0 0;font-size:23px;letter-spacing:-.04em}.project-context-banner p{margin:6px 0 0;color:#68686d;font-size:13px}.project-context-banner dl{margin:0;display:flex;gap:28px}.project-context-banner dl div{display:grid;gap:3px}.project-context-banner dt{font-size:24px;font-weight:680;letter-spacing:-.04em}.project-context-banner dd{margin:0;color:#77777b;font-size:11px}.project-context-banner>a{min-height:40px;padding:0 15px;display:flex;align-items:center;color:#171716;background:#fff;border:1px solid rgba(23,23,22,.1);border-radius:10px;font-size:12px;font-weight:620;text-decoration:none}.project-context-banner>a:hover{color:#fff;background:#3827c7;border-color:#3827c7}@media(max-width:760px){.project-context-banner{width:calc(100% - 32px);grid-template-columns:1fr;gap:18px}.project-context-banner dl{justify-content:space-between}.project-context-banner>a{width:max-content}}
