/* Version 1 uses the established SHAPE workspace palette. */
.product-theme{--paper:#eee9df;--surface:#faf8f3;--ink:#161817;--muted:#686a63;--line:rgba(22,24,23,.15);--accent:#ff6b5f}
.product-theme ::selection{background:var(--accent);color:var(--ink)}
.product-theme .primary{background:var(--accent);color:var(--ink)}
.product-theme .landing-header,.product-theme .network-section,.product-theme .kit-contribution{background:var(--surface)}
.product-theme .product-tools,.product-theme .final-cta{background:var(--paper)}
.product-theme .innovation-examples{background:var(--surface)}
.product-theme .tool-rows article{border-color:var(--line)}
.product-theme .product-preview{background:var(--surface);box-shadow:none}
.product-theme .preview-body aside{background:var(--paper)}
.product-theme .selected,.product-theme .preview-status,.product-theme .preview-action{color:var(--ink)}
.product-theme .selected{border-left:2px solid var(--accent);padding-left:6px}
.product-theme .preview-document{background:var(--paper)}
.product-theme .preview-action{border-bottom:2px solid var(--accent)}
.product-theme .product-hero{position:relative;isolation:isolate;padding-bottom:90px}
.product-theme .ecosystem-canvas{position:absolute;inset:0;width:100%;height:100%;z-index:-1;pointer-events:none}
.product-theme .hero-copy h1{text-shadow:0 0 20px var(--paper),0 0 6px var(--paper)}
.product-theme .hero-copy>p,.product-theme .hero-copy>.eyebrow,.product-theme .hero-footnote{text-shadow:0 0 8px var(--paper),0 0 3px var(--paper)}
.product-theme .motion-toggle{position:absolute;bottom:23px;left:6vw;background:var(--paper);border:1px solid var(--line);border-radius:3px;color:var(--muted);font-size:10px;padding:8px 11px;display:flex;gap:8px;align-items:center}
.product-theme .motion-toggle::before{content:'';width:5px;height:5px;background:var(--accent);border-radius:50%}
.product-theme .motion-toggle:hover{color:var(--ink);border-color:var(--ink)}
@media(max-width:680px){.product-theme .product-hero{padding-bottom:75px}.product-theme .product-preview{position:relative}.product-theme .hero-copy h1{font-size:46px}}
.product-theme .map-stage{position:relative;background:#fff}.product-theme .map-stage>img{display:block;width:100%}.product-theme .map-pin{position:absolute;transform:translate(-50%,-50%);min-width:44px;min-height:36px;padding:6px 10px;border:1px solid var(--ink);border-radius:20px;background:var(--surface);color:var(--ink);font-size:11px;font-weight:bold;box-shadow:0 2px 8px #0002;transition:background .18s,transform .18s}.product-theme .map-pin:hover{transform:translate(-50%,-50%) scale(1.08)}.product-theme .map-pin[aria-pressed=true]{background:var(--accent);outline:3px solid #fff9}.product-theme .map-profile{margin-top:18px;padding:20px 0 0;border-top:1px solid var(--line);min-height:185px}.product-theme .map-profile .eyebrow{margin-bottom:10px}.product-theme .map-profile h3{font-size:20px;line-height:1.2;margin-bottom:12px}.product-theme .map-profile p{font-size:14px;line-height:1.6;margin-bottom:15px}.product-theme .map-profile a,.product-theme .partner-selector{font-size:12px;text-decoration:underline;text-underline-offset:4px}.product-theme .partner-selector{border:0;background:none;padding:12px 0;color:var(--ink);text-align:left;margin-top:8px}.product-theme .partner-selector[aria-pressed=true]{text-decoration-color:var(--accent);text-decoration-thickness:3px}.product-theme .tool-rows b{overflow-wrap:anywhere}
/* Shared rows align cities, names, descriptions and actions across partners. */
.product-theme .partner-grid{grid-template-rows:repeat(5,auto);row-gap:0}
.product-theme .partner-grid article{display:grid;grid-template-rows:subgrid;grid-row:span 5;row-gap:0;margin-bottom:24px}
.product-theme .partner-grid .partner-city{align-self:start}
.product-theme .partner-grid h3{margin:16px 0}
.product-theme .partner-grid p{margin:0 0 18px}
.product-theme .partner-grid small{margin:0 0 8px}
.product-theme .partner-grid .partner-selector{align-self:start;justify-self:start;margin-top:0}

/* Equal-sized entry points for starting a project and exploring the demo. */
.product-theme .hero-actions > .button.primary,
.product-theme .hero-demo {
  box-sizing:border-box;
  width:12.5rem;
  max-width:100%;
  min-height:3.5rem;
  padding:1rem 1.5rem;
  gap:1rem;
  justify-content:space-between;
  font-size:14px;
  line-height:22px;
  flex-shrink:0;
}
.product-theme .hero-actions > .button.primary { border:1px solid transparent; }

/* Examples and tools share one text column and the same reading edge. */
.product-theme .innovation-examples,
.product-theme .product-tools{grid-template-columns:minmax(0,1fr) minmax(0,1.1fr);gap:9vw}
.product-theme .example-rows,
.product-theme .tool-rows{min-width:0}
.product-theme .tool-rows article{position:relative;grid-template-columns:minmax(0,1fr) 80px;gap:20px}
.product-theme .tool-rows article>span{position:absolute;left:-40px;top:28px}
.product-theme .tool-rows article>div{min-width:0}
.product-theme .example-rows h3,
.product-theme .tool-rows h3{text-wrap:balance}
@media(max-width:680px){
  .product-theme .innovation-examples,
  .product-theme .product-tools{grid-template-columns:minmax(0,1fr);gap:25px}
  .product-theme .tool-rows article{grid-template-columns:minmax(0,1fr) auto;gap:12px}
  .product-theme .tool-rows article>span{position:static}
  .product-theme .tool-rows article>b{grid-column:2;grid-row:1;align-self:start}
  .product-theme .tool-rows article>div{grid-column:1/-1;grid-row:2}
}
