/* JD narrative and centered portfolio layout — 2026-10-03. */
.solve{min-height:100svh;padding:88px 0 30px;display:flex;align-items:center;justify-content:center}
.solve-content{width:100%;max-width:1280px}
.solve:focus{outline:none}
.nav-burger{background:var(--bg);border:1px solid var(--line);border-radius:999px}
.solve-heading{text-align:center}
.solve-heading h2{font-size:clamp(26px,2.1vw,32px)}
.fig{width:min(1000px,calc((100svh - 225px)*1.6667),100%);aspect-ratio:1000/600;margin:18px auto 0}
.disc{top:64%;width:29%;padding:2.5%}
.n-carbon{top:23%}.n-ai{left:21%;top:64%}.n-del{left:79%;top:64%}
.s-carbon{top:32%}.s-ai{top:80%;left:23%}.s-del{top:80%;left:77%}
.axis-summary{background:var(--dark)}
.p-c1{left:42%;top:11%}.p-c2{left:58%;top:11%}
.p-a1{left:9%;top:44%}.p-a3{left:9%;top:81%}
.p-d1{left:91%;top:40%}.p-d2{left:94%;top:58%}.p-d3{left:91%;top:76%}.p-d4{left:87%;top:91%}
.anode{width:80px;height:80px;font-size:15px}
.pdot{width:64px;height:64px}.p-a1{width:82px;height:82px}
.disc .dname{font-size:clamp(18px,1.6vw,24px)}
.collection-page{padding-top:0;min-height:100svh}
.collection-stage{min-height:100svh;padding:105px 0 38px;display:flex;flex-direction:column;justify-content:center;gap:26px}
.collection-intro{width:100%;padding-bottom:0;text-align:center}
.collection-intro .lead{margin:14px auto 0;max-width:52em}
.collection-grid{width:100%;max-width:1280px;margin:0 auto}
.carbon-grid{grid-template-columns:repeat(3,minmax(0,1fr));align-items:stretch}
.carbon-grid .project-card{grid-template-columns:1fr;grid-template-rows:176px 1fr;gap:14px;padding:20px}
.carbon-grid .card-cover{height:176px;max-height:none;order:0;min-height:0}
.carbon-grid .card-cover img{height:100%;max-height:none;aspect-ratio:auto;object-fit:cover;object-position:top center}
.carbon-grid .card-copy h2{font-size:21px}
.carbon-grid .card-description{font-size:13px}
.carbon-grid .card-copy{gap:10px}
.card-description{line-height:1.75}
.card-role{line-height:1.75}
.grid-2 .project-card{min-height:350px}
.collection-supplement{padding-top:0;padding-bottom:32px}
.project-index-wrap{padding-top:30px;border-top:1px solid var(--line)}
.project-index-wrap h3{margin-top:0!important}
.index-status{font-size:11px;color:var(--ink-3);margin-top:12px;line-height:1.6}
.index-description{font-size:12px;color:var(--ink-2);line-height:1.8;margin-top:6px}
.case-story .m1{padding-bottom:48px}
.story-intro{max-width:740px;font-size:17px;line-height:1.9;color:var(--ink-2);margin:22px 0}
.story-role{font-size:13px;line-height:1.8;max-width:740px;margin-bottom:15px;color:var(--ink-3)}
.story-image{max-width:850px;margin-top:30px;border-radius:24px}
.story-image img{max-height:460px;object-fit:contain;background:var(--bg-alt)}
.story-metrics{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:30px;margin-top:35px;max-width:850px}
.story-metrics.monaco-metrics{grid-template-columns:repeat(3,minmax(0,1fr))}
.story-metrics .v{font-size:clamp(36px,4vw,62px)}
.story-metrics .l{font-size:12px;line-height:1.8}
.story-grid{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:28px;margin-top:28px}
.story-block{border-top:1px solid var(--line);padding-top:18px}
.story-block h3{font-size:18px;font-weight:500;line-height:1.5}
.story-block p{font-size:15px;line-height:1.95;color:var(--ink-2);margin-top:12px}
.story-boundary{font-size:15px;line-height:1.95;max-width:740px;margin-top:24px}
.case-story .mod h2{font-size:clamp(26px,2.5vw,36px);max-width:850px;line-height:1.4}
.case-story .mod{scroll-margin-top:96px}
.case-rail a{font-size:11px}
.collection-wires path{stroke:var(--line);opacity:.7}
@media(min-width:901px) and (max-height:820px){
 .carbon-grid .project-card{grid-template-rows:140px 1fr;padding:16px;gap:12px}
 .carbon-grid .card-cover{height:140px}
 .carbon-grid .card-copy{gap:8px}
 .carbon-grid .card-copy h2{font-size:19px}
 .collection-stage{padding-top:92px;padding-bottom:28px;gap:22px}
}
@media(min-width:901px) and (max-height:700px){
 .solve{padding-top:80px;padding-bottom:18px}
 .fig{width:min(900px,calc((100svh - 195px)*1.6667),100%)}
 .solve-heading .kick{margin-bottom:5px}
 .anode{width:68px;height:68px;font-size:13px}
 .pdot{width:55px;height:55px}.pdot .t{font-size:11px}.p-a1{width:74px;height:74px}
 .disc .dname{font-size:18px}.disc .dsub{font-size:10px}.disc .pill{font-size:9px}
 .axis-summary{font-size:10px;width:130px}
 .carbon-grid .project-card{grid-template-rows:120px 1fr;padding:16px;gap:12px}
 .carbon-grid .card-cover{height:120px}
 .carbon-grid .card-copy{gap:7px}
 .carbon-grid .card-description{font-size:12px;line-height:1.6}
 .carbon-grid .card-role{font-size:10px;line-height:1.6}
 .collection-stage{gap:20px;padding-top:85px;padding-bottom:24px}
}
@media(max-width:1100px){
 .collection-grid{gap:18px}
 .carbon-grid .project-card{padding:16px}
 .carbon-grid .card-copy h2{font-size:19px}
 .carbon-grid .card-description{font-size:12px}
 .story-grid{grid-template-columns:1fr;gap:22px}
}
@media(max-width:900px), (max-height:560px){
 .solve{padding:86px 0 30px;min-height:100svh;display:flex}
 .fig{height:208px;width:100%;max-width:600px;aspect-ratio:auto;margin-top:14px}
 .fig .lines,.fig .pdot,.axis-summary{display:none}
 .disc{width:190px;height:190px;top:52%;padding:15px;gap:8px}
 .disc .dname{font-size:20px}.disc .dsub{font-size:11px}.disc .pill{font-size:10px}
 .n-carbon{top:12%;left:12%;width:64px;height:64px}
 .n-ai{top:53%;left:12%;width:64px;height:64px}
 .n-del{top:53%;left:88%;width:70px;height:70px}
 .fig-list{display:grid!important;grid-template-columns:repeat(3,minmax(0,1fr));gap:18px;max-width:760px;margin:24px auto 0}
 .fig-list>div{border-top:1px solid var(--line-on-dark);padding-top:12px}
 .fig-list h4{font-size:12px;letter-spacing:.08em;margin-bottom:6px}
 .fig-list p{font-size:12px;line-height:1.9}
 .fig-list .axis-list-summary{font-size:11px;line-height:1.8;margin-bottom:6px}
 .collection-stage{padding-top:100px;gap:24px}
 .collection-grid{grid-template-columns:repeat(2,minmax(0,1fr));align-items:stretch}
 .carbon-grid .project-card:last-child,.grid-3 .project-card:last-child{grid-column:1/-1;width:calc((100% - 18px)/2);justify-self:center}
 .carbon-grid .card-cover{height:180px}
 .card-copy h2,.carbon-grid .card-copy h2{font-size:21px}
 .card-description,.carbon-grid .card-description{font-size:13px}
}
@media(max-width:520px){
 .solve{padding:82px 0 28px}
 .solve-heading .kick{font-size:10px;margin-bottom:6px}
 .solve-heading h2{font-size:25px}
 .fig{height:190px;margin-top:14px}
 .disc{width:155px;height:155px;top:51%;padding:12px;gap:5px}
 .disc .dname{font-size:17px}.disc .dsub{font-size:9px}.disc .pill{font-size:8.5px}
 .anode,.n-carbon,.n-ai{width:52px;height:52px;font-size:11px}
 .n-carbon{left:11%;top:17%}.n-ai{left:11%;top:62%}
 .n-del{left:89%;top:62%;width:60px;height:60px;font-size:10px}
 .fig-list{grid-template-columns:1fr;gap:12px;margin-top:16px}
 .fig-list>div{display:grid;grid-template-columns:65px 1fr;column-gap:10px;padding-top:10px}
 .fig-list h4{grid-column:1;grid-row:1/3;align-self:center;font-size:11px;margin:0}
 .fig-list p{grid-column:2;font-size:12px;line-height:1.7}
 .fig-list .axis-list-summary{font-size:10px;margin-bottom:4px}
 .collection-stage{padding:92px 0 32px;gap:22px;min-height:100svh}
 .collection-grid{grid-template-columns:1fr;gap:22px}
 .carbon-grid .project-card:last-child,.grid-3 .project-card:last-child{grid-column:auto;width:100%}
 .carbon-grid .project-card{padding:18px}
 .card-description,.carbon-grid .card-description{font-size:14px}
 .collection-intro .lead{font-size:13px;max-width:25em}
 .story-intro{font-size:16px}
 .story-grid{grid-template-columns:1fr}
 .story-image{border-radius:18px}
 .story-metrics,.story-metrics.monaco-metrics{grid-template-columns:1fr;gap:22px}
 .story-block h3{font-size:18px}
 .story-block p,.story-boundary{font-size:15px}
 .case-story .mod{scroll-margin-top:148px}
}
