/* hero */
.hero{padding:clamp(3rem,7vw,6rem) 0 0;}
.hero-grid{display:grid;grid-template-columns:minmax(0,1fr) minmax(0,1.15fr);gap:clamp(1.5rem,4vw,4rem);align-items:center;}
#v2Canvas{display:block;width:100%;aspect-ratio:16/11.5;}
@media (max-width:900px){.hero-visual{max-width:40rem;margin:0 auto;width:100%;}}
.hero h1{font-size:clamp(2.3rem,3.9vw,3.45rem);line-height:.98;letter-spacing:-0.04em;font-weight:600;}
.hero h1 em{font-style:normal;color:var(--blue);}
.hero .dek{font-size:1.14rem;color:var(--muted);max-width:34rem;margin-top:1.75rem;line-height:1.6;}
.hero .ctas{display:flex;flex-wrap:wrap;gap:1rem 1.5rem;align-items:center;margin-top:2.25rem;}
.hero .small{display:flex;justify-content:space-between;gap:1rem;flex-wrap:wrap;margin-top:2.75rem;font-size:.88rem;color:var(--muted);letter-spacing:.02em;}
.hero .small a{color:var(--muted);text-decoration:none;}
.hero .small a:hover{color:var(--ink);}
.tg-at{color:var(--orange);}
.ph{margin:0;background:var(--ph);position:relative;overflow:hidden;display:flex;align-items:flex-end;}
.ph span{font-size:.78rem;color:var(--ph-text);padding:.9rem 1rem;letter-spacing:.02em;}
.ph img{position:absolute;inset:0;width:100%;height:100%;object-fit:cover;}
.facts{display:grid;grid-template-columns:repeat(4,1fr);margin-top:clamp(3rem,6vw,5rem);border-top:1px solid var(--ink);}
.facts div{padding:1.4rem 1.5rem 0 0;}
.facts div + div{padding-left:1.5rem;border-left:1px solid var(--rule);}
.facts dt{font-family:var(--serif);font-weight:600;font-size:1.25rem;letter-spacing:-0.02em;color:var(--ink);line-height:1.2;}
.facts dd{margin:.45rem 0 0;color:var(--muted);font-size:.93rem;line-height:1.45;}
@media (max-width:900px){.hero-grid{grid-template-columns:1fr;} .facts{grid-template-columns:1fr 1fr;row-gap:1.5rem;} .facts div:nth-child(3){border-left:none;padding-left:0;}}
@media (max-width:480px){.facts{grid-template-columns:1fr;} .facts div + div{border-left:none;padding-left:0;}}


/* photos */
.photo{margin:0;}
.photo .ph{margin:0;}
.photo .credit{margin-top:.5rem;font-size:.72rem;color:var(--muted);visibility:hidden;}
.photo.loaded .credit{visibility:visible;}
.photo .credit a{color:inherit;}
.photo.loaded .ph span{display:none;}
.story .photo{margin-bottom:1.5rem;}
.ic-photo .ph span{font-size:.72rem;padding:.6rem .7rem;}
.photo-credits{font-size:.78rem;color:var(--block-ink-muted);margin-top:1rem;}

/* sections */
.sec{padding:clamp(4.5rem,9vw,8rem) 0;}
.sec.alt{background:var(--surface);}
.shead{display:grid;grid-template-columns:minmax(0,1.2fr) minmax(0,.8fr);gap:3rem;align-items:center;margin-bottom:clamp(2.5rem,5vw,4rem);}
.shead h2{font-size:clamp(2.1rem,4.4vw,3.6rem);letter-spacing:-0.035em;max-width:48rem;text-wrap:balance;}
.shead p{color:var(--muted);font-size:1.05rem;max-width:30rem;border-left:1px solid var(--rule-strong);padding-left:1.75rem;}
.ai .shead p{border-left-color:rgba(255,255,255,.28);}
@media (max-width:860px){.shead{grid-template-columns:1fr;gap:1rem;} .shead p{border-left:none;padding-left:0;}}

/* statement */
.stmt-grid{display:grid;grid-template-columns:minmax(0,1.1fr) minmax(0,.9fr);gap:clamp(2.5rem,5vw,5rem);align-items:center;}
.stmt{font-family:var(--serif);font-weight:500;font-size:clamp(1.8rem,3.2vw,2.9rem);line-height:1.12;color:var(--ink);letter-spacing:-0.035em;margin-top:1.25rem;text-wrap:balance;}
.stmt span{color:var(--muted);}
.stmt-fig{margin:0;border-top:1px solid var(--ink);padding-top:1.5rem;}
.stmt-chart{display:block;width:100%;height:auto;}
.stmt-chart .stmt-zone{fill:color-mix(in srgb,var(--orange) 10%,transparent);}
.stmt-chart text{fill:var(--muted) !important;font-family:var(--sans) !important;}
.stmt-chart .stmt-l1{fill:var(--ink) !important;}
.stmt-chart path[stroke="#DCE1E8"]{stroke:var(--rule-strong);}
.stmt-chart .stmt-build{stroke:var(--muted);} .stmt-chart .stmt-down{stroke:var(--rule-strong);} .stmt-chart .stmt-up{stroke:var(--blue);}
.stmt-chart .stmt-dots{fill:var(--blue);} .stmt-chart .stmt-pt{fill:var(--bg);stroke:var(--ink);}
.stmt-chart text[fill="#C86A00"]{fill:var(--orange) !important;}
@media (max-width:900px){.stmt-grid{grid-template-columns:1fr;}}

/* proof */
.proof-grid{display:grid;grid-template-columns:minmax(0,1.15fr) minmax(0,.85fr);gap:clamp(2rem,4vw,4rem);}
.story > .ph{margin-bottom:1.5rem;}
.story .kicker{font-size:.85rem;font-weight:600;color:var(--blue);}
.story h3{font-size:clamp(1.4rem,2.2vw,1.8rem);letter-spacing:-0.025em;margin-top:.5rem;text-wrap:balance;}
.story p.txt{color:var(--muted);margin-top:1rem;font-size:1.02rem;max-width:36rem;}
.story dl{display:grid;grid-template-columns:repeat(3,1fr);gap:1rem;margin:1.75rem 0 1.5rem;border-top:1px solid var(--rule);padding-top:1.1rem;}
.story dt{font-family:var(--serif);font-weight:600;font-size:1.1rem;letter-spacing:-0.015em;color:var(--ink);}
.story dd{margin:.2rem 0 0;color:var(--muted);font-size:.88rem;}
.story.num .big{font-family:var(--serif);font-weight:600;font-size:clamp(6rem,12vw,10rem);line-height:.85;color:var(--blue);letter-spacing:-0.04em;}
.story.num .big small{font-size:.28em;color:var(--ink);letter-spacing:0;margin-left:.4rem;}
.story.num{border-left:1px solid var(--rule);padding-left:clamp(2rem,4vw,4rem);}
@media (max-width:900px){.proof-grid{grid-template-columns:1fr;} .story.num{border-left:none;padding-left:0;border-top:1px solid var(--rule);padding-top:2.5rem;}}

/* practices */
.pr{list-style:none;margin:0;padding:0;border-top:1px solid var(--ink);}
.pr-row{border-bottom:1px solid var(--rule);}
.pr-row a{display:grid;grid-template-columns:3rem minmax(0,1fr) minmax(0,1.15fr) 2.5rem;gap:1.5rem;align-items:start;padding:1.9rem 0;text-decoration:none;color:inherit;}
.pr-num{font-family:var(--serif);color:var(--muted);font-size:1.05rem;padding-top:.35rem;}
.pr-name{display:block;font-family:var(--serif);font-size:clamp(1.55rem,2.4vw,2.1rem);color:var(--ink);line-height:1.12;transition:color .2s ease;}
.pr-short{display:block;color:var(--muted);font-size:.93rem;margin-top:.35rem;}
.pr-desc{color:var(--text);font-size:.98rem;line-height:1.55;padding-top:.3rem;}
.pr-tags{display:block;color:var(--muted);font-size:.85rem;margin-top:.6rem;}
.pr-go{padding-top:.5rem;justify-self:end;}
.pr-go svg{width:1.4rem;height:1.4rem;fill:none;stroke:var(--ink);stroke-width:1.5;transition:transform .25s ease,stroke .2s ease;}
.pr-row a:hover .pr-name{color:var(--blue);} .pr-row a:hover .pr-go svg{transform:translateX(.35rem);stroke:var(--blue);}
@media (max-width:860px){.pr-row a{grid-template-columns:2.25rem 1fr 1.75rem;} .pr-desc{grid-column:2 / 4;}}


/* practices: list + preview panel (previous layout, new colors, sharp corners) */
.svc{display:grid;grid-template-columns:minmax(0,1fr) minmax(0,1fr);gap:3.5rem;align-items:stretch;}
.svc-list{border-top:1px solid var(--ink);}
.svc-row{position:relative;display:grid;grid-template-columns:2.75rem 1fr 2.5rem;gap:1.1rem;align-items:center;width:100%;padding:2.1rem .25rem;border:none;border-bottom:1px solid var(--rule);background:none;font:inherit;color:var(--muted);text-align:left;text-decoration:none;cursor:pointer;}
.svc-row::before{content:"";position:absolute;left:0;bottom:-1px;height:2px;width:0;background:var(--blue);transition:width .45s cubic-bezier(.2,.7,.1,1);}
.svc-row.is-active,.svc-row:hover{color:var(--ink);}
.svc-row.is-active::before{width:100%;}
.svc-glyph{width:2.75rem;height:2.75rem;border:1px solid var(--rule-strong);display:grid;place-items:center;color:var(--ink);}
.svc-glyph svg{width:1.35rem;height:1.35rem;}
.svc-row.is-active .svc-glyph{background:var(--icon);border-color:var(--icon);color:#fff;}
.svc-name{font-family:var(--serif);font-weight:600;font-size:clamp(1.3rem,2.2vw,1.75rem);letter-spacing:-0.025em;line-height:1.15;display:block;}
.svc-short{display:block;font-size:.95rem;color:var(--muted);margin-top:.25rem;}
.svc-go{position:relative;width:2.5rem;height:2.5rem;display:grid;place-items:center;}
.svc-go::before{content:"";position:absolute;inset:0;border:1px solid var(--rule-strong);transition:transform .3s ease,background .2s ease,border-color .2s ease;}
.svc-go svg{position:relative;}
.svc-go svg{width:1rem;height:1rem;}
.svc-row.is-active .svc-go{color:#fff;}
.svc-row.is-active .svc-go::before{background:var(--blue);border-color:var(--blue);}
.svc-row:focus-visible{outline:2px solid var(--blue);outline-offset:2px;}
.svc-panel{position:relative;contain:size;background:var(--surface);color:var(--ink);display:flex;flex-direction:column;padding:1.75rem 2rem 2rem;border:1px solid var(--rule);}
.svc-panes{display:grid;flex:1;}
.svc-pane{grid-area:1/1;display:flex;flex-direction:column;min-height:0;visibility:hidden;opacity:0;transition:opacity .3s ease,visibility 0s linear .3s;}
.svc-pane.is-on{visibility:visible;opacity:1;transition:opacity .3s ease;}
.svc-art{position:relative;flex:1 1 0;min-height:4.5rem;margin:0 0 1.25rem;background:var(--ph);overflow:hidden;}
.svc-art img{position:absolute;inset:0;width:100%;height:100%;object-fit:cover;}
.svc-art svg{width:100%;height:100%;display:block;}
.svc-pane h3{color:var(--ink);font-size:1.55rem;letter-spacing:-0.025em;}
.svc-pane p{color:var(--muted);margin-top:.6rem;font-size:.97rem;line-height:1.6;}
.svc-chips{list-style:none;padding:0;margin:1rem 0 1.25rem;display:flex;flex-wrap:wrap;gap:.45rem;}
.svc-chips li{font-size:.84rem;font-weight:500;padding:.35rem .7rem;border:1px solid var(--rule-strong);color:var(--ink);background:var(--bg);}
.svc-pane .btn{margin-top:auto;align-self:flex-start;background:var(--btn);border-color:var(--btn);color:var(--btn-text);}
.svc-pane .btn:hover{background:#fff;border-color:#fff;color:var(--deep);}
:root[data-theme="dark"] .svc-panel{background:var(--surface);}
@media (prefers-color-scheme: dark){ :root:not([data-theme="light"]) .svc-panel{background:var(--surface);} }
@media (max-width:900px){.svc{grid-template-columns:1fr;} .svc-panel{display:none;}}

/* founders */
.fd-grid{display:grid;grid-template-columns:minmax(0,1fr) minmax(0,1fr);gap:clamp(2.5rem,5vw,5rem);align-items:stretch;}
.fd-right{display:flex;flex-direction:column;}
.fd-right .photo{flex:1 1 0;min-height:11rem;display:flex;flex-direction:column;}
.fd-right .photo .ph{flex:1 1 0;aspect-ratio:auto !important;min-height:11rem;}
.fd-right .gantt-box{margin-top:1.75rem !important;}
@media (max-width:900px){.fd-right .photo,.fd-right .photo .ph{flex:none;} .fd-right .photo .ph{aspect-ratio:3/2 !important;}}
.fd h2{font-size:clamp(2rem,3.4vw,2.9rem);letter-spacing:-0.035em;text-wrap:balance;}
.fd .lead{color:var(--muted);margin-top:1.25rem;font-size:1.05rem;max-width:34rem;}
.promise{list-style:none;margin:2rem 0;padding:0;border-top:1px solid var(--rule);}
.promise li{padding:1rem 0;border-bottom:1px solid var(--rule);color:var(--muted);font-size:.98rem;}
.promise strong{color:var(--ink);font-weight:600;}
.gantt-box{border-top:1px solid var(--ink);padding-top:1.5rem;}
.gantt-box h3{font-size:1.5rem;letter-spacing:-0.02em;}
.gantt-box .sub{color:var(--muted);margin-top:.3rem;}
.g{margin-top:1.75rem;display:flex;flex-direction:column;gap:1.1rem;}
.g-row{display:grid;grid-template-columns:5.5rem 1fr 7rem;gap:1rem;align-items:center;font-size:.93rem;}
.g-row b{font-weight:600;color:var(--ink);}
.g-row i{font-style:normal;color:var(--muted);text-align:right;font-size:.85rem;}
.g-t{height:.55rem;background:var(--surface-2);position:relative;}
.g-t span{position:absolute;top:0;bottom:0;left:calc(var(--s)/18*100%);width:calc(var(--w)/18*100%);background:var(--icon);}
.g-t span.l{background:var(--orange);} .g-t span.gr{background:repeating-linear-gradient(90deg,var(--blue) 0 5px,transparent 5px 9px);}
@media (max-width:900px){.fd-grid{grid-template-columns:1fr;}}

/* AI section on an ink block */
.ai{background:var(--deep);color:var(--block-ink-text);}
.ai .shead h2{color:var(--block-ink-text);} .ai .shead p{color:var(--block-ink-muted);}
.ai-stage-wrap{display:grid;grid-template-columns:minmax(0,.78fr) minmax(0,1.5fr);gap:2.5rem;}
.ai-tabs{display:flex;flex-direction:column;border-top:1px solid var(--block-ink-rule);}
.ai-tab{position:relative;flex:1;display:grid;grid-template-columns:2.5rem 1fr;gap:1rem;align-items:center;padding:1.1rem .5rem 1.1rem 0;background:none;border:none;border-bottom:1px solid var(--block-ink-rule);color:var(--block-ink-muted);text-align:left;font:inherit;cursor:pointer;}
.ai-num{font-family:var(--serif);font-weight:600;font-size:1.1rem;}
.ai-txt strong{display:block;font-family:var(--serif);font-weight:600;font-size:1.12rem;letter-spacing:-0.015em;color:inherit;}
.ai-txt em{display:block;font-style:normal;font-size:.88rem;opacity:.8;}
.ai-tab[aria-selected="true"]{color:var(--block-ink-text);}
.ai-tab[aria-selected="true"] .ai-num{color:var(--orange);}
.ai-prog{position:absolute;left:0;right:0;bottom:-1px;height:2px;background:var(--orange);transform:scaleX(0);transform-origin:left;}
.ai-tab[aria-selected="true"] .ai-prog{transform:scaleX(1);}
.ai-tabs.playing .ai-tab[aria-selected="true"] .ai-prog{animation:aif 5s linear forwards;}
@keyframes aif{from{transform:scaleX(0);}to{transform:scaleX(1);}}
.ai-stage{border:1px solid var(--block-ink-rule);}
.ai-dg{display:block;width:100%;height:auto;padding:1.25rem 1.25rem .5rem;}
.ai-dg text{font-family:var(--sans);font-size:13px;fill:#F2F1EE;}
.ai-dg .sub{font-size:11px;fill:#A9A7A2;}
.ai-dg .box{fill:rgba(242,241,238,.04);stroke:rgba(242,241,238,.3);stroke-width:1.2;}
.ai-dg .lnk{fill:none;stroke:rgba(242,241,238,.28);stroke-width:1.4;}
.ai-dg .orch{fill:rgba(90,169,236,.06);stroke:#5AA9EC;stroke-dasharray:5 6;}
.ai-dg .dot{fill:#FF9A1F;}
.ai-dg .mcp{fill:#1B75BC;stroke:#5AA9EC;} .ai-dg .a2a{fill:rgba(90,169,236,.35);stroke:#5AA9EC;}
.ai-dg .mcp-t{font-size:10px;font-weight:600;fill:#fff;}
.ai-dg .gov rect{fill:rgba(90,169,236,.06);stroke:rgba(90,169,236,.45);stroke-dasharray:4 5;} .ai-dg .gov text{font-size:12px;fill:#A9A7A2;}
.ai-dg .lv{opacity:0;transition:opacity .5s ease;} .ai-dg .lv.on{opacity:1;}
.ai-dg .lv .dot{visibility:hidden;} .ai-dg .lv.is-new .dot{visibility:visible;}
.ai-dg .lv.is-new .box{stroke:#FF9A1F;fill:rgba(255,154,31,.08);}
.ai-dg .lv.is-new .lnk{stroke:#FF9A1F;stroke-dasharray:5 5;}
.ai-caption{display:grid;grid-template-columns:1.2fr 1fr;gap:1.75rem;padding:1.5rem 1.75rem 1.75rem;border-top:1px solid var(--block-ink-rule);}
.ai-caption h3{color:var(--block-ink-text);font-size:1.35rem;letter-spacing:-0.02em;}
.ai-caption p{color:var(--block-ink-muted);font-size:.97rem;margin-top:.4rem;}
.ai-guard{padding-left:1.5rem;border-left:1px solid var(--block-ink-rule);}
.ai-guard strong{font-size:.9rem;color:var(--orange);}
@media (max-width:900px){.ai-stage-wrap{grid-template-columns:1fr;} .ai-tabs{flex-direction:row;overflow-x:auto;} .ai-tab{flex:0 0 auto;padding:.6rem 1rem;} .ai-txt em{display:none;} .ai-caption{grid-template-columns:1fr;} .ai-guard{border-left:none;padding-left:0;}}

/* commitments */
.four{display:grid;grid-template-columns:repeat(4,1fr);border-top:1px solid var(--ink);}
.four div{padding:1.5rem 1.5rem 0 0;}
.four div + div{padding-left:1.5rem;border-left:1px solid var(--rule);}
.four strong{font-family:var(--serif);font-weight:600;font-size:1.15rem;letter-spacing:-0.015em;color:var(--ink);}
.four p{color:var(--muted);font-size:.95rem;margin-top:.5rem;}
@media (max-width:900px){.four{grid-template-columns:1fr 1fr;row-gap:2rem;} .four div:nth-child(3){border-left:none;padding-left:0;}}

/* engagement */
.two{display:grid;grid-template-columns:1fr 1fr;gap:0;border:1px solid var(--rule-strong);}
.two article{padding:clamp(1.75rem,3vw,2.75rem);display:flex;flex-direction:column;gap:.8rem;}
.two article + article{border-left:1px solid var(--rule-strong);}
.two .for{font-size:.85rem;font-weight:600;color:var(--blue);}
.two h3{font-size:clamp(1.7rem,2.6vw,2.2rem);}
.two p{color:var(--muted);}
.two dl{margin:.5rem 0 1.25rem;} .two dl div{padding:.75rem 0;border-top:1px solid var(--rule);display:flex;justify-content:space-between;gap:1rem;}
.two dt{color:var(--muted);font-size:.9rem;} .two dd{margin:0;font-weight:600;color:var(--ink);text-align:right;}
.two .btn{align-self:flex-start;margin-top:auto;}
@media (max-width:760px){.two{grid-template-columns:1fr;} .two article + article{border-left:none;border-top:1px solid var(--rule-strong);}}


/* engagement: two boxes, one featured */
.eng{display:grid;grid-template-columns:1fr 1fr;gap:1.25rem;}
.model{display:flex;flex-direction:column;gap:.8rem;padding:clamp(1.75rem,3vw,2.5rem);background:var(--bg);border:1px solid var(--rule-strong);}
.model .for{font-size:.88rem;font-weight:600;color:var(--blue);}
.model h3{font-size:1.6rem;letter-spacing:-0.025em;}
.model > p:not(.for){color:var(--muted);font-size:.98rem;}
.model dl{margin:.5rem 0 1.25rem;}
.model dl div{padding:.8rem 0;border-top:1px solid var(--rule);}
.model dt{font-size:.82rem;color:var(--muted);}
.model dd{margin:.15rem 0 0;font-weight:600;color:var(--ink);}
.model .btn{margin-top:auto;align-self:flex-start;}
.model.feature{background:var(--deep);border-color:var(--deep);color:#F2F1EE;}
.model.feature h3,.model.feature dd{color:#F2F1EE;}
.model.feature > p:not(.for),.model.feature dt{color:#A9A7A2;}
.model.feature .for{color:#8CC4F2;}
.model.feature dl div{border-top-color:rgba(242,241,238,.16);}
.btn.blue{background:var(--deep-btn);border-color:var(--deep-btn);color:var(--deep-btn-text);}
.btn.blue:hover{background:transparent;border-color:#fff;color:#fff;}
:root[data-theme="dark"] .model.feature{border-color:var(--rule);}
@media (prefers-color-scheme: dark){ :root:not([data-theme="light"]) .model.feature{border-color:var(--rule);} }
.trust{list-style:none;margin:1.25rem 0 0;padding:1.25rem 1.5rem;display:grid;grid-template-columns:repeat(4,1fr);gap:1rem;background:var(--bg);border:1px solid var(--rule-strong);}
.trust li{display:flex;align-items:center;gap:.65rem;font-size:.94rem;font-weight:500;color:var(--ink);}
.trust li::before{display:none;}
.trust svg{width:1.4rem;height:1.4rem;flex:none;fill:none;stroke:var(--blue);stroke-width:1.7;stroke-linecap:round;stroke-linejoin:round;}
@media (max-width:980px){.eng{grid-template-columns:1fr;} .trust{grid-template-columns:1fr 1fr;}}
@media (max-width:520px){.trust{grid-template-columns:1fr;}}

/* clients */
.clients{padding:3.5rem 0;border-top:1px solid var(--rule);border-bottom:1px solid var(--rule);}
.clients .w{display:grid;grid-template-columns:12rem 1fr;gap:2rem;align-items:center;}
.clients h2{font-family:var(--sans);font-size:.95rem;font-weight:600;color:var(--muted);letter-spacing:0;}
.lg{list-style:none;margin:0;padding:0;display:grid;grid-template-columns:repeat(5,1fr);gap:1.75rem 2.5rem;align-items:center;}
.lg li{display:flex;justify-content:center;}
.lg img{width:auto;max-width:100%;filter:grayscale(1) brightness(0);opacity:.55;transition:opacity .2s ease,filter .2s ease;}
.lg li:hover img{filter:none;opacity:1;}
:root[data-theme="dark"] .lg img{filter:grayscale(1) brightness(0) invert(1);opacity:.6;}
@media (prefers-color-scheme: dark){ :root:not([data-theme="light"]) .lg img{filter:grayscale(1) brightness(0) invert(1);opacity:.6;} }
@media (max-width:860px){.clients .w{grid-template-columns:1fr;} .lg{grid-template-columns:repeat(3,1fr);}}

/* insights index */
.idx{list-style:none;margin:0;padding:0;border-top:1px solid var(--ink);}
.idx a{display:grid;grid-template-columns:14rem minmax(0,1fr) 8rem;gap:.35rem 2rem;padding:1.75rem 0;border-bottom:1px solid var(--rule);text-decoration:none;color:inherit;}
.in-cat{font-size:.85rem;font-weight:600;color:var(--blue);grid-row:span 2;padding-top:.4rem;}
.in-title{font-family:var(--serif);font-size:clamp(1.45rem,2.3vw,2rem);color:var(--ink);line-height:1.15;transition:color .2s ease;}
.in-dek{color:var(--muted);font-size:.97rem;grid-column:2;}
.in-read{grid-column:3;grid-row:1;text-align:right;color:var(--muted);font-size:.88rem;padding-top:.45rem;}
.idx a:hover .in-title{color:var(--blue);}
@media (max-width:760px){.idx a{grid-template-columns:1fr;} .in-cat,.in-dek,.in-read{grid-column:1;grid-row:auto;text-align:left;}}


/* insights: previous layout with photos */
.ics{border-top:1px solid var(--ink);}
.ic{display:grid;grid-template-columns:13.75rem minmax(0,1fr) 8.75rem;gap:2rem;align-items:start;padding:1.75rem 0;border-bottom:1px solid var(--rule);text-decoration:none;color:inherit;}
.ic-ph{aspect-ratio:16/10;}
.ic-ph span{font-size:.72rem;padding:.6rem .7rem;}
.ic-body{display:flex;flex-direction:column;gap:.5rem;min-width:0;}
.ic .in-cat{padding:0;}
.ic .in-title{font-family:var(--serif);font-weight:600;font-size:clamp(1.25rem,2vw,1.6rem);letter-spacing:-0.02em;line-height:1.2;color:var(--ink);transition:color .2s ease;}
.ic .in-dek{color:var(--muted);font-size:.98rem;}
.ic .in-read{text-align:right;color:var(--muted);font-size:.88rem;padding-top:.25rem;}
.ic:hover .in-title{color:var(--blue);}
@media (max-width:860px){.ic{grid-template-columns:1fr;gap:.9rem;} .ic .in-read{text-align:left;}}

/* contact block */
.ct{background:var(--block-blue);color:#fff;padding:clamp(4.5rem,9vw,7.5rem) 0;}
.ct-grid{display:grid;grid-template-columns:minmax(0,1.3fr) minmax(0,.7fr);gap:clamp(2.5rem,5vw,5rem);align-items:end;}
.ct h2{color:#fff;font-size:clamp(2.4rem,5.4vw,4.6rem);line-height:1;letter-spacing:-0.04em;text-wrap:balance;}
.ct .lead{color:rgba(255,255,255,.82);font-size:1.1rem;max-width:36rem;margin-top:1.5rem;}
.ct .ctas{display:flex;flex-wrap:wrap;gap:1rem;margin-top:2.25rem;}
.ct .btn{background:#fff;color:#0E3F66;border-color:#fff;} .ct .btn:hover{background:transparent;color:#fff;}
.ct .btn.line{background:transparent;color:#fff;border-color:rgba(255,255,255,.55);} .ct .btn.line:hover{background:#fff;color:#0E3F66;}
.ct ul{list-style:none;margin:0;padding:0;border-top:1px solid rgba(255,255,255,.3);}
.ct li{padding:.8rem 0;border-bottom:1px solid rgba(255,255,255,.3);color:rgba(255,255,255,.88);font-size:.97rem;}
@media (max-width:900px){.ct-grid{grid-template-columns:1fr;}}

main#main-view section[id]{scroll-margin-top:5.5rem;}
/* AI section: original layout on white */
.ai{background:var(--surface);color:var(--text);}
.ai .shead h2{color:var(--ink);} .ai .shead p{color:var(--muted);border-left-color:var(--rule-strong);}
.ai-tabs{border-top-color:var(--rule);}
.ai-tab{border-bottom-color:var(--rule);color:var(--muted);}
.ai-tab:hover{color:var(--ink);}
.ai-txt em{opacity:1;color:var(--muted);}
.ai-tab[aria-selected="true"]{color:var(--ink);}
.ai-stage{border-color:var(--rule);background:var(--bg);}
.ai-dg text{fill:var(--ink);}
.ai-dg .sub{fill:var(--muted);}
.ai-dg .box{fill:var(--surface);stroke:var(--rule-strong);}
.ai-dg .lnk{stroke:#A9B6C6;}
.ai-dg .orch{fill:rgba(27,117,188,.05);stroke:#1B75BC;}
.ai-dg .dot{fill:#E8730C;}
.ai-dg .mcp{fill:#1B75BC;stroke:#1B75BC;} .ai-dg .a2a{fill:#4A90CF;stroke:#1B75BC;}
.ai-dg .gov rect{fill:rgba(27,117,188,.04);stroke:rgba(27,117,188,.4);} .ai-dg .gov text{fill:var(--muted);}
.ai-dg .lv.is-new .box{stroke:#E8730C;fill:rgba(232,115,12,.08);}
.ai-dg .lv.is-new .lnk{stroke:#E8730C;}
.ai-caption{border-top-color:var(--rule);background:var(--surface);}
.ai-caption h3{color:var(--ink);}
.ai-caption p{color:var(--text);}
.ai-guard{border-left-color:var(--rule-strong);}
.ai-guard p{color:var(--muted);}

/* Founders section: dark block */
#founders{background:var(--deep);color:#fff;}
#founders h2,#founders .gantt-box h3,#founders .promise strong,#founders .g-row b{color:#fff;}
#founders .lead,#founders .promise li,#founders .gantt-box .sub,#founders .g-row i{color:rgba(255,255,255,.78);}
#founders .promise{border-top-color:rgba(255,255,255,.22);} #founders .promise li{border-bottom-color:rgba(255,255,255,.22);}
#founders .gantt-box{border-top-color:rgba(255,255,255,.55);}
#founders .g-t{background:rgba(255,255,255,.14);}
#founders .g-t span{background:#fff;}
#founders .g-t span.l{background:#FFB25C;}
#founders .g-t span.gr{background:repeating-linear-gradient(90deg,#8CC4F2 0 5px,transparent 5px 9px);}
#founders .btn{background:var(--deep-btn);border-color:var(--deep-btn);color:var(--deep-btn-text);}
#founders .btn:hover{background:transparent;border-color:#fff;color:#fff;}
/* Contact band: Mist blue with burnt orange buttons */
.ct{background:var(--surface);color:var(--text);border-top:1px solid var(--rule);}
.ct h2{color:var(--ink);} .ct .lead{color:var(--muted);}
.ct .btn{background:var(--btn);color:var(--btn-text);border-color:var(--btn);} .ct .btn:hover{background:var(--btn-hover);border-color:var(--btn-hover);color:#fff;}
.ct .btn.line{background:transparent;color:var(--ink);border-color:var(--rule-strong);} .ct .btn.line:hover{background:var(--btn);border-color:var(--btn);color:#fff;}
.ct ul{border-top-color:var(--rule-strong);} .ct li{border-bottom-color:var(--rule-strong);color:var(--text);}
.ai-guard strong,.ai-tab[aria-selected="true"] .ai-num{color:var(--accent-text);}

/* ===== Home v3: manifesto sections ===== */
.hero .dek strong{color:var(--ink);font-weight:600;display:block;margin-bottom:.35rem;}
/* How we engineer: dark burnt orange band */
.philo{background:var(--deep);color:#fff;padding:clamp(4.5rem,9vw,7.5rem) 0;}
.philo-grid{display:grid;grid-template-columns:minmax(0,1.1fr) minmax(0,.9fr);gap:clamp(2.5rem,5vw,5rem);align-items:center;}
.philo .label{font-size:.85rem;font-weight:600;letter-spacing:.06em;text-transform:uppercase;color:#fff;opacity:.85;}
.philo h2{color:#fff;font-size:clamp(2.4rem,5vw,4.2rem);line-height:1.02;letter-spacing:-0.04em;margin-top:.9rem;text-wrap:balance;}
.philo h2 span{display:block;color:#FFE2C6;}
.philo .lead{color:var(--block-ink-muted);font-size:1.08rem;margin-top:1.5rem;max-width:38rem;}
.philo-steps{list-style:none;margin:0;padding:0;counter-reset:ph;border-top:1px solid rgba(255,255,255,.28);}
.philo-steps li{counter-increment:ph;display:grid;grid-template-columns:2.5rem 1fr;column-gap:1rem;padding:1.15rem 0;border-bottom:1px solid rgba(255,255,255,.28);}
.philo-steps li::before{content:"0" counter(ph);grid-row:span 2;font-family:var(--serif);font-weight:600;font-size:1rem;color:#fff;opacity:.7;padding-top:.15rem;}
.philo-steps strong{color:#fff;font-size:1.08rem;font-weight:600;}
.philo-steps span{color:var(--block-ink-muted);font-size:.95rem;margin-top:.2rem;}
@media (max-width:900px){.philo-grid{grid-template-columns:1fr;}}
/* Markets */
.mk-list{list-style:none;margin:.4rem 0 1.4rem;padding:0;border-top:1px solid var(--rule);}
.mk-list li{position:relative;padding:.7rem 0 .7rem 1.4rem;border-bottom:1px solid var(--rule);font-size:.96rem;color:var(--text);}
.mk-list li::before{content:"";position:absolute;left:0;top:1.15rem;width:.5rem;height:.5rem;border-radius:50%;background:var(--btn);}
.model.feature .mk-list{border-top-color:rgba(255,255,255,.25);} .model.feature .mk-list li{border-bottom-color:rgba(255,255,255,.25);}
.model.feature .mk-list li::before{background:#fff;}
.mk-cta{margin-top:auto;display:flex;flex-wrap:wrap;align-items:center;gap:1.25rem;}
.mk-cta .btn{margin-top:0 !important;}
.model.feature .mk-cta .tlink{color:#fff;border-bottom-color:rgba(255,255,255,.7);}
/* Products strip */
.prods{margin-top:clamp(2.5rem,5vw,4rem);border-top:1px solid var(--ink);padding-top:1.5rem;}
.prods-h{font-size:.85rem;font-weight:600;letter-spacing:.06em;text-transform:uppercase;color:var(--muted);}
.prods-grid{display:grid;grid-template-columns:repeat(3,1fr);gap:1rem;margin-top:1.1rem;}
.prod{display:flex;flex-direction:column;gap:.4rem;padding:1.25rem 1.35rem;border:1px solid var(--rule-strong);background:var(--bg);text-decoration:none;transition:border-color .2s ease,transform .2s ease;}
.prod:hover{border-color:var(--btn);transform:translateY(-2px);}
.prod strong{font-family:var(--serif);font-size:1.25rem;font-weight:600;color:var(--ink);letter-spacing:-0.02em;}
.prod span{font-size:.93rem;color:var(--muted);}
/* Entry offers */
.offers{display:grid;grid-template-columns:repeat(3,1fr);gap:1.25rem;}
.offers .model h3{font-size:1.35rem;}
.offers .model .btn{margin-top:auto;align-self:flex-start;}
@media (max-width:980px){.prods-grid,.offers{grid-template-columns:1fr;}}
.nw{white-space:nowrap;}
/* Three plays as full-image cards */
.plays{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:1.25rem;}
.play{display:flex;flex-direction:column;background:var(--bg);border:1px solid var(--rule-strong);overflow:hidden;transition:border-color .2s ease,box-shadow .2s ease,transform .2s ease;}
.play:hover{border-color:var(--btn);box-shadow:0 18px 40px -28px rgba(20,30,45,.45);transform:translateY(-3px);}
.play-img{display:block;aspect-ratio:16/9;overflow:hidden;background:var(--ph);}
.play-img img{width:100%;height:100%;object-fit:cover;display:block;transition:transform .5s ease;}
.play:hover .play-img img{transform:scale(1.04);}
.play-body{display:flex;flex-direction:column;gap:.55rem;padding:1.5rem 1.5rem 1.6rem;flex:1;}
.play-n{font-size:.8rem;font-weight:700;letter-spacing:.08em;text-transform:uppercase;color:var(--accent-text);}
.play h3{font-size:1.45rem;letter-spacing:-0.025em;}
.play-short{font-weight:600;color:var(--ink);}
.play-body > p:not(.play-n):not(.play-short){color:var(--muted);font-size:.95rem;}
.play .svc-chips{margin:.35rem 0 .9rem;}
.play .tlink{margin-top:auto;align-self:flex-start;}
@media (max-width:980px){.plays{grid-template-columns:1fr;max-width:40rem;}}
/* "What brings you here?" path selector (replaces the facts strip) */
.paths{margin-top:clamp(3rem,6vw,5rem);border-top:1px solid var(--ink);padding-top:1.25rem;}
.paths-h{font-size:.85rem;font-weight:600;letter-spacing:.06em;text-transform:uppercase;color:var(--muted);}
.paths-grid{display:grid;grid-template-columns:repeat(4,minmax(0,1fr));gap:.75rem;margin-top:1rem;}
.pth{position:relative;display:flex;flex-direction:column;gap:.45rem;min-height:8.5rem;padding:1.1rem 1.2rem 2.6rem;background:var(--surface);border:1px solid var(--rule);text-decoration:none;transition:background .2s ease,border-color .2s ease,transform .2s ease;}
.pth-k{font-size:.78rem;font-weight:700;letter-spacing:.07em;text-transform:uppercase;color:var(--accent-text);}
.pth-t{font-family:var(--serif);font-weight:600;font-size:1.08rem;line-height:1.3;letter-spacing:-0.015em;color:var(--ink);}
.pth-go{position:absolute;left:1.2rem;bottom:1rem;width:1.1rem;height:1.1rem;fill:none;stroke:var(--accent-text);stroke-width:1.7;stroke-linecap:round;stroke-linejoin:round;transition:transform .25s ease;}
.pth:hover{background:var(--bg);border-color:var(--btn);transform:translateY(-2px);}
.pth:hover .pth-go{transform:translateX(.3rem);}
@media (max-width:900px){.paths-grid{grid-template-columns:1fr 1fr;}}
@media (max-width:480px){.paths-grid{grid-template-columns:1fr;} .pth{min-height:0;}}
/* five path tiles */
.paths-grid{grid-template-columns:repeat(auto-fit,minmax(12.5rem,1fr));}
/* proof: 7-year partnership now leads, founder story second */
.proof-grid{grid-template-columns:minmax(0,.9fr) minmax(0,1.1fr);}
.proof-grid > .story.num{border-left:none;padding-left:0;}
.proof-grid > .story.num + .story{border-left:1px solid var(--rule);padding-left:clamp(2rem,4vw,4rem);}
@media (max-width:900px){.proof-grid{grid-template-columns:1fr;} .proof-grid > .story.num{border-top:none;padding-top:0;} .proof-grid > .story.num + .story{border-left:none;padding-left:0;border-top:1px solid var(--rule);padding-top:2.5rem;}}
