/* Product storytelling and progressive disclosure. All assets stay local. */
[hidden]{display:none!important}
summary{cursor:pointer;list-style:none}
summary::-webkit-details-marker{display:none}
summary:focus-visible{outline:3px solid var(--green);outline-offset:5px}
.hero-grid{grid-template-columns:.93fr 1.12fr;gap:48px;padding-top:78px;padding-bottom:76px}
.hero-copy h1{font-size:clamp(46px,4.7vw,65px)}
.hero-story{border:1px solid #294b37;border-radius:8px;background:#081c12;overflow:hidden;box-shadow:0 25px 100px #00da7020}
.hero-story>img{width:100%;height:auto}
.visual-toolbar{display:flex;align-items:center;justify-content:space-between;gap:15px;padding:12px 17px;background:#0b2015;border-bottom:1px solid #284534}
.visual-toolbar>span{display:flex;align-items:center;gap:9px;font-size:9px;letter-spacing:1.15px;color:#a3c7af;font-weight:700}
.image-expand{border:0;border-radius:3px;padding:7px 8px;background:transparent;color:#d4e5d9;font-size:11px;white-space:nowrap;min-height:36px}
.image-expand span{padding-left:8px;color:var(--green)}
.image-expand:hover,.image-expand:focus-visible{background:#20452e;color:#fff}
.hero-story figcaption{display:flex;align-items:center;gap:9px;padding:15px 18px;font-size:10px;color:#a3bcac;border-top:1px solid #24412f}
.caption-divider{color:#496e57;margin:0 3px}
.hero-explore{display:flex;justify-content:space-between;align-items:center;padding:16px 20px;border-top:1px solid #24412f;font-size:12px;font-weight:700;color:#cfe2d5;transition:background .2s}
.hero-explore>span:last-child{color:var(--green);font-size:19px}
.hero-explore:hover{background:#163a24}
.problem-explorer{display:grid;grid-template-columns:1.45fr 1fr;gap:45px;align-items:start;margin-top:42px}
.archive-figure{border:1px solid #37583f;overflow:hidden;border-radius:6px;background:#07180e}
.archive-figure img{width:100%;height:auto}
.archive-figure figcaption{font-size:11px;color:#b1c8b8;padding:12px 16px;border-top:1px solid #294b34}
.interaction-hint{font-size:11px;letter-spacing:.25px;color:#a9c6b2;margin-bottom:15px}
.interaction-hint span{float:right;color:var(--green)}
.story-detail{border-top:1px solid #375b43}
.story-detail:last-child{border-bottom:1px solid #375b43}
.story-detail summary{display:flex;gap:15px;align-items:center;padding:19px 0;min-height:65px}
.story-detail summary .index{font-size:10px;flex-shrink:0;color:#a6c0ad}
.story-detail h3{font-size:20px;letter-spacing:-.4px;font-weight:700;line-height:1.35}
.disclosure-icon{display:block;width:18px;height:18px;position:relative;flex-shrink:0;margin-left:auto;color:var(--green)}
.disclosure-icon:before,.disclosure-icon:after{content:'';position:absolute;background:currentColor;left:3px;right:3px;top:8px;height:1px}
.disclosure-icon:after{transform:rotate(90deg);transition:transform .2s}
details[open]>summary .disclosure-icon:after{transform:rotate(0deg)}
.detail-body{padding-bottom:20px}
.story-detail .detail-body{padding-left:29px}
.detail-body p{color:#bdd0c3;font-size:14px;line-height:1.8}
.detail-body p+p{margin-top:12px}
.story-detail summary:hover h3,.capability-more summary:hover{color:var(--green)}
.product-explorer{margin:45px auto 0;border:1px solid #365943;background:#091e13;border-radius:8px;overflow:hidden;max-width:1120px;box-shadow:0 20px 100px #0e3c2725}
.product-explorer .visual-toolbar{padding:12px 23px}
.product-map{position:relative;background:#03130c}
.product-map>img{width:100%;height:auto}
.hotspot{position:absolute;width:46px;height:46px;border-radius:50%;border:1px solid #99f4b8;background:#092b1f;box-shadow:0 0 0 7px #30d36b33,0 3px 16px #000a;color:#fff;display:grid;place-items:center;font-weight:800;font-size:13px;transform:translate(-50%,-50%);transition:background .2s,box-shadow .2s;z-index:1}
.hotspot.is-active,.hotspot:hover{color:#06110b;background:var(--green);box-shadow:0 0 0 8px #30d36b33,0 0 28px #30d36b66}
.hotspot-question{left:39%;top:15%}
.hotspot-source{left:52%;top:69%}
.hotspot-evidence{left:92%;top:35%}
.explore-controls{display:grid;grid-template-columns:repeat(3,1fr);border-top:1px solid #31553e;border-bottom:1px solid #31553e}
.explore-control{display:flex;align-items:center;gap:12px;background:#0c2417;color:#b1c8b9;border:0;border-right:1px solid #31553e;padding:19px 22px;text-align:left;position:relative;min-height:72px}
.explore-control:last-child{border-right:0}
.explore-control>span:first-child{font-size:10px;color:#8fc7a3}
.explore-control strong{font-size:13px;line-height:1.4;font-weight:700}
.control-arrow{margin-left:auto;color:var(--green);font-size:18px}
.explore-control:after{content:'';position:absolute;left:0;right:0;bottom:-1px;height:3px;background:transparent}
.explore-control.is-active{background:#193e29;color:#fff}
.explore-control.is-active:after{background:var(--green)}
.explore-control:hover{background:#204630}
.explore-control:focus-visible{outline-offset:-4px}
.explore-panels{padding:29px 32px 27px;min-height:218px;background:linear-gradient(105deg,#112f1d,#0b2116)}
.explore-panel{display:grid;grid-template-columns:1fr 1.3fr;gap:45px;align-items:start}
.panel-label{font-size:9px;font-weight:700;letter-spacing:1.2px;color:var(--soft-green);margin-bottom:12px}
.explore-panel h3{font-size:25px;line-height:1.25;letter-spacing:-.6px;max-width:330px}
.explore-panel>div>p:not(.panel-label){font-size:14px;color:#b7cdbf;line-height:1.75}
.explore-panel .example-question,.explore-panel .panel-takeaway{margin-top:13px!important;color:#e0f0e5!important}
.example-question span{display:block;font-size:9px;color:#8fc3a1;text-transform:uppercase;letter-spacing:1px;margin-bottom:3px}
.panel-takeaway{padding-left:12px;border-left:2px solid var(--green)}
.concept-note{font-size:10px;color:#9db7a6;padding:13px 20px;text-align:center;border-top:1px solid #284b35;background:#081b11}
.capability-grid{align-items:start;border:0;gap:20px}
.capability{border:1px solid #2c4936;border-radius:5px;background:linear-gradient(135deg,#102c1c,#0a1b11);transition:border-color .2s,background .2s}
.capability:hover,.capability:focus-within{border-color:#518d65;background:linear-gradient(135deg,#163923,#0b1e14)}
.capability-more{margin-top:24px;border-top:1px solid #2e4a38}
.capability-more summary{display:flex;align-items:center;gap:20px;font-size:12px;font-weight:700;color:#d2e4d8;padding:16px 0 0;min-height:42px;line-height:1.5}
.capability-more .detail-body{padding:3px 0 0}
.capability-more .detail-body p{font-size:13px;margin-top:13px}
.capability-more .detail-body p+p{color:#8fbc9e}
.image-viewer{padding:0;border:1px solid #426b50;border-radius:8px;background:#071a10;color:#fff;width:min(1500px,94vw);max-width:94vw;max-height:94dvh;box-shadow:0 30px 100px #000b;overflow:auto}
.image-viewer::backdrop{background:#020b07e8;backdrop-filter:blur(8px)}
.viewer-toolbar{display:flex;justify-content:space-between;align-items:center;gap:25px;padding:15px 22px;position:sticky;top:0;background:#0e2819;border-bottom:1px solid #335e41;z-index:1}
.viewer-toolbar h2{font-size:17px;line-height:1.4;letter-spacing:-.2px}
.viewer-close{display:flex;align-items:center;gap:20px;min-height:44px;border:1px solid #548564;border-radius:4px;color:#fff;background:#153a24;padding:7px 15px;font-size:12px}
.viewer-close:hover{background:#285437}
.viewer-close span{font-size:24px;line-height:1}
.viewer-image-wrap{display:flex;justify-content:center;background:#010d07}
.viewer-image-wrap img{max-width:100%;width:auto;max-height:calc(94dvh - 130px);object-fit:contain}
.image-viewer>p{padding:12px 22px;font-size:11px;color:#a5c4ae}
body.viewer-open{overflow:hidden}
@media(min-width:1600px){.hero-grid{padding-top:90px;padding-bottom:90px}.hero-copy h1{font-size:67px}}
@media(max-width:1100px){.hero-grid{gap:32px;grid-template-columns:1fr 1fr;padding-top:60px;padding-bottom:60px}.hero-copy h1{font-size:51px}.hero-story figcaption{font-size:9px;gap:6px;padding:13px}.hero-story .visual-toolbar{padding:9px 12px;gap:6px}.hero-story .visual-toolbar>span{font-size:8px}.problem-explorer{gap:30px;grid-template-columns:1.25fr 1fr}.story-detail h3{font-size:19px}.story-detail .detail-body{padding-left:0}.explore-panel{gap:30px}.explore-control{padding:18px 17px;gap:10px}}
@media(max-width:800px){.hero-grid{grid-template-columns:1fr;gap:36px;padding-top:45px;padding-bottom:40px}.hero-copy h1{font-size:clamp(44px,7vw,62px)}.hero-story{width:100%;max-width:670px}.hero-story .visual-toolbar{padding:12px 17px}.hero-story .visual-toolbar>span{font-size:9px}.hero-story figcaption{font-size:11px;padding:14px 18px;gap:9px}.problem-explorer{grid-template-columns:1fr;gap:26px;margin-top:30px}.story-detail .detail-body{padding-left:29px;max-width:650px}.product-explorer{margin-top:30px}.product-explorer .visual-toolbar{padding:10px 15px}.hotspot{width:40px;height:40px;font-size:11px}.explore-control{padding:16px 12px;gap:8px;min-height:75px}.explore-control strong{font-size:12px}.control-arrow{display:none}.explore-panels{padding:25px;min-height:238px}.explore-panel{gap:25px;grid-template-columns:1fr 1.3fr}.explore-panel h3{font-size:23px}.capability-grid{gap:15px}.capability-more summary{font-size:11px;gap:10px}.viewer-toolbar{padding:10px 14px;gap:15px}.viewer-toolbar h2{font-size:14px}.viewer-close{gap:10px}}
@media(max-width:540px){.hero-copy h1{font-size:45px}.hero-story figcaption{font-size:9px;gap:7px;padding:12px}.hero-story .visual-toolbar,.archive-figure .visual-toolbar{padding:8px 10px}.visual-toolbar>span{font-size:8px;letter-spacing:.7px}.image-expand{min-height:44px;font-size:10px;padding:5px}.image-expand span{padding-left:4px}.hero-explore{padding:12px 15px}.problem-explorer{gap:23px}.archive-figure figcaption{font-size:10px;padding:12px}.story-detail h3{font-size:20px}.product-explorer .visual-toolbar{padding:8px 10px}.product-explorer .visual-toolbar>span{max-width:190px;font-size:8px;line-height:1.5}.product-explorer .visual-toolbar .status-dot{display:none}.hotspot{width:36px;height:36px;box-shadow:0 0 0 4px #30d36b33,0 3px 12px #000b;font-size:10px}.hotspot:before{content:'';position:absolute;inset:-5px;border-radius:50%}.hotspot.is-active,.hotspot:hover{box-shadow:0 0 0 4px #30d36b44,0 0 20px #30d36b44}.explore-controls{grid-template-columns:1fr}.explore-control{min-height:55px;border-right:0;border-bottom:1px solid #284b35;padding:14px 18px;gap:15px}.explore-control:last-child{border-bottom:0}.explore-control strong{font-size:13px}.control-arrow{display:block}.explore-control:after{left:0;top:0;bottom:0;right:auto;width:3px;height:auto}.explore-panel{grid-template-columns:1fr;gap:17px}.explore-panels{padding:25px 22px;min-height:350px}.explore-panel h3{font-size:24px;max-width:300px}.panel-label{margin-bottom:9px}.explore-panel>div>p:not(.panel-label){font-size:14px}.concept-note{font-size:10px;padding:12px 15px}.capability-grid{grid-template-columns:1fr;gap:16px}.capability-more summary{font-size:12px}.viewer-toolbar{align-items:flex-start}.viewer-toolbar h2{font-size:13px}.viewer-close{flex-shrink:0;font-size:11px;gap:9px;padding:6px 10px}.image-viewer{width:96vw;max-width:96vw}.viewer-image-wrap{overflow:auto}.viewer-image-wrap img{max-height:none;width:100%;max-width:none}.image-viewer>p{padding:10px 14px;font-size:10px}}
