@font-face{font-family:'DM Sans';font-style:normal;font-weight:400;font-display:swap;src:url('../assets/dm-sans-400.ttf') format('truetype')}
@font-face{font-family:'DM Sans';font-style:normal;font-weight:500;font-display:swap;src:url('../assets/dm-sans-500.ttf') format('truetype')}
@font-face{font-family:'DM Sans';font-style:normal;font-weight:600;font-display:swap;src:url('../assets/dm-sans-600.ttf') format('truetype')}
@font-face{font-family:'DM Sans';font-style:normal;font-weight:700;font-display:swap;src:url('../assets/dm-sans-700.ttf') format('truetype')}
:root{--paper:#FCF3EB;--surface:#FFFAF5;--ink:#264A50;--deep-dark:#153439;--sky:#84D7DC;--sky-dark:#2FB2B8;--ai:#FCBC92;--ai-hover:#FAA46A;--need:#E4D5C3;--line:#BCAB96;--gap:#93472F;--type-primary:clamp(18px,1.3vw,26px);--type-body:clamp(16px,1vw,20px);--type-small:clamp(13px,.8vw,16px);font-family:'DM Sans',Arial,sans-serif;color:var(--ink);background:var(--paper);font-synthesis:none}
*{box-sizing:border-box}
body{margin:0}
button{font:inherit;color:inherit;cursor:pointer;-webkit-tap-highlight-color:transparent}
button:disabled{cursor:default}
button:focus-visible{outline:3px solid var(--sky-dark);outline-offset:5px}
.presentation{max-width:2400px;margin:auto;min-height:100svh;padding:32px clamp(28px,4vw,88px) 56px;display:flex;flex-direction:column;gap:32px}
.mast{display:flex;align-items:center;justify-content:space-between;gap:24px;min-height:62px}
.tools{display:flex;gap:8px;margin-left:auto;align-self:flex-start}
.tools button{display:grid;place-items:center;width:36px;height:36px;padding:8px;border:0;background:transparent;opacity:.7}
.tools button:hover{opacity:1;background:var(--need)}
.tools svg{width:20px;height:20px;fill:none;stroke:currentColor;stroke-width:1.5;stroke-linecap:round;stroke-linejoin:round}
.collapse-icon,.is-fullscreen .expand-icon{display:none}.is-fullscreen .collapse-icon{display:block}
.business-nav{display:grid;grid-template-columns:repeat(5,minmax(0,1fr));gap:12px}
.selection-tab{display:flex;align-items:center;justify-content:center;gap:12px;border:1px solid var(--line);background:transparent;padding:16px;min-width:0;font-size:var(--type-primary);font-weight:500;line-height:1.25;transition:background .2s,border-color .2s}
.selection-tab:hover{background:var(--need)}
.selection-tab[aria-pressed=true]{background:var(--sky);border-color:var(--sky);color:var(--deep-dark)}
.business-nav .selection-tab{min-height:68px}
.business-nav button>span{font-size:var(--type-small);font-weight:400}
.visual-stage{display:grid;grid-template-columns:22% minmax(0,1fr);gap:clamp(32px,3vw,64px);flex:1;min-height:0;margin-top:16px}
.business-scene{display:flex;flex-direction:column;justify-content:flex-start;gap:28px;min-width:0}
.scene-image{aspect-ratio:1.45;overflow:hidden;background:var(--need)}
.scene-image img{display:block;width:100%;height:100%;object-fit:cover}
.legend{display:flex;flex-direction:column;gap:16px;font-size:var(--type-small);font-weight:400;line-height:1.45}
.legend span{display:flex;align-items:flex-start;gap:10px}
.legend i{width:12px;height:12px;flex-shrink:0;margin-top:.3em}
.need-key{background:var(--need);border:1px solid var(--line)}.own-key{background:var(--ink)}.ai-key{background:var(--ai)}
.chart-wrap{display:flex;min-width:0;min-height:300px}
.chart{display:grid;grid-template-columns:repeat(6,minmax(0,1fr));grid-template-rows:minmax(180px,1fr) 2.5em 34px;column-gap:24px;row-gap:16px;flex:1;min-width:0;font-size:var(--type-primary)}
.chart-grid{grid-column:1/-1;grid-row:1;border-bottom:1px solid var(--line);background:repeating-linear-gradient(to top,transparent 0,transparent calc(25% - 1px),var(--need) calc(25% - 1px),var(--need) 25%);pointer-events:none}
.column{display:grid;grid-template-rows:subgrid;grid-row:1/4;min-width:0;position:relative}
.track{min-height:0;position:relative}
.need,.own,.boost,.gap-zone{position:absolute;bottom:0;transition:height .7s cubic-bezier(.2,.8,.2,1),bottom .7s cubic-bezier(.2,.8,.2,1)}
.need{width:82%;left:9%;background:var(--need)}
.own,.boost{left:22%;width:56%;background:var(--ink)}.boost{background:var(--ai)}
.gap-zone{left:9%;width:82%;background:repeating-linear-gradient(-45deg,transparent 0 7px,#93472F80 7px 9px),var(--paper);border-left:1px dashed var(--gap);border-right:1px dashed var(--gap)}
.threshold{position:absolute;left:2%;width:96%;border-top:2px solid var(--ink);z-index:3;transition:bottom .7s cubic-bezier(.2,.8,.2,1)}
.threshold-marker{position:absolute;right:0;top:-12px;display:none;place-items:center;width:23px;height:23px;border:1px solid var(--ink);font-size:var(--type-small);font-weight:500;line-height:1}
.column[data-state=gap] .threshold{border-top-style:dashed;border-color:var(--gap)}
.column[data-state=gap] .threshold-marker{display:grid;background:var(--gap);border-color:var(--gap);color:var(--paper)}
.column[data-state=covered] .threshold-marker{display:grid;background:var(--sky)}
.row-label{font-size:var(--type-primary);line-height:1.25;font-weight:500}
.row-status{display:flex;align-items:center;justify-content:center;gap:6px;font-size:var(--type-small);font-weight:500;line-height:1.25;text-align:center;padding:4px}
.column[data-state=gap] .row-status{color:var(--gap);border:1px solid var(--gap)}
.column[data-state=covered] .row-status{background:var(--ink);color:var(--paper)}
.all-covered .column[data-state=covered] .row-status{background:var(--sky);color:var(--deep-dark)}
.founder-dock{display:grid;grid-template-columns:minmax(0,1fr) 260px;align-items:stretch;gap:32px;margin-top:16px}
.founders{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:12px}
.founder{justify-content:flex-start;gap:16px;min-height:88px;padding:14px 20px;text-align:left}
.founder img{width:52px;height:52px;border-radius:50%;object-fit:cover;background:var(--need);flex-shrink:0}
.founder strong{display:block;font-size:var(--type-primary);font-weight:500;line-height:1.25}
.founder small{display:block;font-size:var(--type-small);font-weight:400;line-height:1.45;margin-top:4px}
.ai-button{display:flex;align-items:center;justify-content:space-between;gap:16px;padding:16px 20px;border:1px solid var(--ai);background:var(--ai);font-size:var(--type-primary);font-weight:500;line-height:1.25;text-align:left}
.ai-button:hover:enabled{background:var(--ai-hover);border-color:var(--ai-hover)}
.ai-button:disabled{background:transparent;border-color:var(--line);opacity:.5}
.ai-button[aria-pressed=true]{border-color:var(--ink)}
.toggle{background:var(--paper);border:1px solid var(--ink);width:38px;height:24px;padding:3px;flex-shrink:0}
.toggle i{display:block;width:16px;height:16px;background:var(--ink);transition:transform .25s}
.ai-button[aria-pressed=true] .toggle i{transform:translateX(14px)}
.fit-summary{display:flex;align-items:center;gap:14px;padding:10px 16px;border:1px solid var(--line);background:var(--surface);min-height:62px}
.fit-summary[data-state=empty]{visibility:hidden}
.fit-emblem{display:grid;place-items:center;width:30px;height:30px;font-size:var(--type-primary);font-weight:500;flex-shrink:0}
.fit-copy{display:flex;flex-direction:column;gap:3px}
.fit-copy strong{font-size:var(--type-primary);font-weight:500;line-height:1.25}
.fit-copy>span{font-size:var(--type-small);font-weight:400;line-height:1.45}
.fit-progress{display:flex;gap:5px;margin-left:8px}
.fit-progress i{display:grid;place-items:center;width:17px;height:23px;border:1px solid var(--line);font-style:normal;font-size:var(--type-small);font-weight:500}
.fit-progress .filled{background:var(--ink);color:var(--paper);border-color:var(--ink)}
.fit-progress .missing{background:repeating-linear-gradient(-45deg,transparent 0 4px,#93472F80 4px 5px),var(--paper);border-color:var(--gap)}
.fit-summary[data-state=gap] .fit-emblem{background:var(--gap);color:var(--paper)}
.fit-summary[data-state=complete]{background:var(--ink);border-color:var(--ink);color:var(--paper)}
.fit-summary[data-state=complete] .fit-emblem{background:var(--sky);color:var(--ink);position:relative}
.fit-summary[data-state=complete] .fit-progress .filled{background:var(--sky);border-color:var(--sky);color:var(--ink)}
dialog{border:1px solid var(--line);max-width:760px;width:90%;padding:36px;background:var(--paper);color:var(--ink);font-size:var(--type-body);font-weight:400;line-height:1.5}
dialog::backdrop{background:#153439cc}
.notes-head{display:flex;justify-content:space-between;align-items:center;gap:20px}
.notes-head h2{margin:0;font-size:var(--type-primary);font-weight:500;line-height:1.25}
.notes-head button{background:var(--sky);border:0;padding:10px 18px;font-size:var(--type-small);font-weight:500}
.notes-caption{font-size:var(--type-small)}
@media(min-width:1000px) and (min-height:740px){.presentation{height:100svh;max-height:1400px}}
@media(max-width:1200px){.presentation{padding:24px 28px 40px;gap:28px}.business-nav{gap:8px}.business-nav .selection-tab{font-size:var(--type-body);font-weight:400;padding:12px 8px;gap:8px}.visual-stage{grid-template-columns:22% minmax(0,1fr);gap:30px}.chart{column-gap:12px;grid-template-rows:minmax(180px,1fr) 3.75em 38px}.founder-dock{grid-template-columns:minmax(0,1fr) 200px;gap:20px}.founder{padding:12px;gap:10px}.founder img{width:44px;height:44px}.ai-button{padding:14px}.legend{gap:14px}}
@media(max-width:760px){:root{--type-primary:16px;--type-body:14px;--type-small:11px}.presentation{padding:20px;gap:24px}.mast{gap:12px;min-height:60px}.tools{gap:0}.tools button{width:32px;height:32px;padding:6px}.fit-summary{padding:8px;gap:8px;min-height:60px;flex:1}.fit-emblem{width:24px;height:24px}.fit-progress{display:none}.business-nav{display:flex;overflow:auto;padding-bottom:4px}.business-nav .selection-tab{white-space:nowrap;min-height:48px;padding:12px;font-size:var(--type-primary);font-weight:500}.business-nav button>span{display:none}.visual-stage{grid-template-columns:1fr;gap:32px;margin-top:0}.business-scene{display:grid;grid-template-columns:100px minmax(0,1fr);gap:20px;align-items:start}.scene-image{aspect-ratio:1}.legend{gap:10px}.legend i{width:10px;height:10px}.chart-wrap{height:380px;min-height:380px}.chart{column-gap:8px;row-gap:14px;grid-template-rows:minmax(180px,1fr) 4.35em 46px;font-size:var(--type-small)}.row-label{font-size:var(--type-small);font-weight:500;overflow-wrap:anywhere}.row-status{flex-direction:column;gap:2px;padding:3px 1px}.threshold-marker{width:18px;height:18px;top:-9px}.founder-dock{grid-template-columns:1fr;gap:20px;margin-top:8px}.founders{gap:8px}.founder{flex-direction:column;justify-content:flex-start;text-align:center;gap:8px;padding:12px 6px}.founder img{width:44px;height:44px}.ai-button{min-height:56px;justify-content:center}dialog{padding:24px}}
.celebrate{animation:fit-arrival .7s cubic-bezier(.2,.8,.2,1)}
.celebrate .fit-emblem::after{content:'';position:absolute;inset:-2px;border:2px solid var(--sky);opacity:0;animation:fit-ring 1s ease-out forwards;pointer-events:none}
.celebrate .fit-progress i{animation:fit-tick .5s both;animation-delay:.1s}
.celebrate .fit-progress i:nth-child(2){animation-delay:.18s}.celebrate .fit-progress i:nth-child(3){animation-delay:.26s}.celebrate .fit-progress i:nth-child(4){animation-delay:.34s}.celebrate .fit-progress i:nth-child(5){animation-delay:.42s}
@keyframes fit-arrival{0%{transform:translateY(5px);background:var(--sky);color:var(--ink)}100%{transform:translateY(0);background:var(--ink);color:var(--paper)}}
@keyframes fit-ring{0%{transform:scale(1);opacity:.8}100%{transform:scale(1.8);opacity:0}}
@keyframes fit-tick{0%{transform:translateY(5px);opacity:.3}100%{transform:translateY(0);opacity:1}}
@media(prefers-reduced-motion:reduce){*,*::before,*::after{transition:none!important;animation:none!important}}

.try-link{display:flex;align-items:center;gap:8px;align-self:center;padding:8px 12px;font-size:var(--type-small);font-weight:500;line-height:1.25;color:var(--ink);text-decoration:none;border-bottom:1px solid var(--line);white-space:nowrap}.try-link:hover{background:var(--need)}.try-link:focus-visible{outline:3px solid var(--sky-dark);outline-offset:4px}@media(max-width:760px){.mast{flex-wrap:wrap}.tools{flex-wrap:wrap}.fit-summary{flex-basis:100%}}
