@import url("https://fonts.googleapis.com/css2?family=IBM+Plex+Sans:wght@400;500;600;700&family=IBM+Plex+Mono:wght@400;500;600&display=swap");.ddi{--ddi-bg:#eef1f2;--ddi-surface:#fff;--ddi-surface-2:#f4f6f7;--ddi-line:#d7dee0;--ddi-ink:#131c1f;--ddi-muted:#57676c;--ddi-muted-2:#7d8c8f;--ddi-accent:#1c5f6b;--ddi-accent-ink:#fff;--ddi-accent-wash:#e2eef0;--ddi-good:#2e7d53;--ddi-good-wash:#e3f1e8;--ddi-warn:#a5691f;--ddi-warn-wash:#f8ecd9;--ddi-radius:10px;--ddi-font-body:"IBM Plex Sans",system-ui,-apple-system,"Segoe UI",sans-serif;--ddi-font-mono:"IBM Plex Mono",ui-monospace,"SF Mono",Menlo,monospace;background:var(--ddi-bg);border-top:3px solid var(--ddi-accent);color:var(--ddi-ink);display:block;font-family:var(--ddi-font-body);font-size:15px;line-height:1.55}.ddi *,.ddi :after,.ddi :before{box-sizing:border-box}.ddi [hidden]{display:none!important}.ddi a{color:var(--ddi-accent)}.ddi-hero{border-bottom:1px solid var(--ddi-line);overflow:hidden;padding:28px 24px 44px;position:relative}.ddi-hero:before{background-image:linear-gradient(color-mix(in srgb,var(--ddi-accent) 8%,transparent) 1px,transparent 1px),linear-gradient(90deg,color-mix(in srgb,var(--ddi-accent) 8%,transparent) 1px,transparent 1px);background-size:28px 28px;content:"";inset:0;-webkit-mask-image:linear-gradient(180deg,#000 55%,transparent);mask-image:linear-gradient(180deg,#000 55%,transparent);position:absolute;z-index:0}.ddi-hero-inner{margin:0 auto;max-width:880px;padding-top:52px;position:relative;z-index:1}.ddi-brand-logo{height:36px;left:24px;position:absolute;top:28px;width:auto;z-index:2}.ddi-hero-rule{align-items:center;display:flex;gap:8px;margin-bottom:12px}.ddi-hero-mark{animation:ddi-status-pulse 2.4s ease-in-out infinite;background:var(--ddi-accent);border-radius:50%;box-shadow:0 0 0 3px color-mix(in srgb,var(--ddi-accent) 18%,transparent);display:inline-block;height:7px;width:7px}@keyframes ddi-status-pulse{0%,to{opacity:1}50%{opacity:.45}}@media (prefers-reduced-motion:reduce){.ddi-hero-mark{animation:none}}.ddi-eyebrow{color:var(--ddi-accent);font-family:var(--ddi-font-mono);font-size:.72rem;letter-spacing:.08em;text-transform:uppercase}.ddi-title{font-size:clamp(1.75rem,3vw,2.35rem);font-weight:700;letter-spacing:-.01em;margin:0 0 12px;text-wrap:balance}.ddi-lede{font-size:1.02rem;margin:0}.ddi-access-notice,.ddi-lede{color:var(--ddi-muted);max-width:62ch}.ddi-access-notice{font-family:var(--ddi-font-mono);font-size:.8rem;letter-spacing:.01em;margin:10px 0 0}.ddi-stats{display:grid;gap:10px;grid-template-columns:repeat(auto-fit,minmax(150px,1fr));margin-top:30px;max-width:640px}.ddi-stat{background:var(--ddi-surface);border:1px solid var(--ddi-line);border-radius:var(--ddi-radius);padding:12px 14px}.ddi-stat-value{color:var(--ddi-accent);font-family:var(--ddi-font-mono);font-size:1.5rem;font-variant-numeric:tabular-nums;font-weight:600}.ddi-stat-label{color:var(--ddi-muted-2);font-size:.72rem;letter-spacing:.04em;margin-top:2px;text-transform:uppercase}.ddi-hero-drone{cursor:default;height:320px;pointer-events:none;position:absolute;right:-10px;top:50%;transform:translateY(-52%);width:320px;z-index:1}.ddi-drone-path{fill:none;stroke:var(--ddi-line);stroke-dasharray:3 7;stroke-linecap:round;stroke-width:1.5}.ddi-drone-flight{animation:ddi-fly 22s linear infinite;offset-path:path("M110,200 C110,133 158,100 210,100 C272,100 310,140 310,200 C310,260 272,300 210,300 C158,300 110,267 110,200 Z");offset-rotate:0deg}@keyframes ddi-fly{0%{offset-distance:0}to{offset-distance:100%}}#ddi-drone-tilt{transition:transform .4s cubic-bezier(.2,.7,.3,1)}.ddi-drone-groundshadow{fill:var(--ddi-ink);opacity:.07}.ddi-drone-arm{fill:url(#ddiArmGrad)}.ddi-drone-leg{stroke:var(--ddi-muted-2);stroke-linecap:round;stroke-width:2}.ddi-drone-antenna{stroke:var(--ddi-muted-2);stroke-linecap:round;stroke-width:1.5}.ddi-drone-gps{fill:var(--ddi-surface);stroke:var(--ddi-muted-2);stroke-width:1}.ddi-drone-body-outline{fill:none;stroke:var(--ddi-ink);stroke-linejoin:round;stroke-width:1.5}.ddi-drone-gimbal-boom{stroke:var(--ddi-muted-2);stroke-width:2}.ddi-drone-gimbal-ring{fill:none}.ddi-drone-cam,.ddi-drone-gimbal-ring{stroke:var(--ddi-ink);stroke-width:1.5}.ddi-drone-cam{fill:var(--ddi-surface)}.ddi-drone-lens{stroke:var(--ddi-ink);stroke-width:1}.ddi-drone-lens-glint{fill:var(--ddi-surface);opacity:.9}.ddi-drone-motor-base{fill:url(#ddiArmGrad)}.ddi-drone-motor-cap{fill:var(--ddi-surface);opacity:.5}.ddi-motor-shade{fill:var(--ddi-ink);opacity:.14;stroke:none}.ddi-drone-foot{fill:var(--ddi-ink);opacity:.35}.ddi-drone-motor-fin{opacity:.6;stroke:var(--ddi-surface);stroke-width:1}.ddi-drone-led-status{animation:ddi-led-blink 2.4s ease-in-out infinite;fill:var(--ddi-accent)}.ddi-drone-led-front{animation:ddi-led-blink 1.8s ease-in-out infinite;fill:var(--ddi-good)}.ddi-drone-led-rear{animation:ddi-led-blink 1.8s ease-in-out .9s infinite;fill:var(--ddi-warn)}@keyframes ddi-led-blink{0%,82%,to{opacity:1}88%{opacity:.15}}.ddi-drone-propblur{fill:url(#ddiPropBlur)}.ddi-drone-blade{fill:var(--ddi-ink);opacity:.6}.ddi-prop{animation:ddi-prop-spin .5s linear infinite}@keyframes ddi-prop-spin{0%{transform:rotate(0deg)}to{transform:rotate(1turn)}}@media (prefers-reduced-motion:reduce){.ddi-drone-led-front,.ddi-drone-led-rear,.ddi-drone-led-status,.ddi-prop{animation:none}.ddi-drone-flight{animation:none;offset-distance:0}#ddi-drone-tilt{transition:none}}@media (max-width:820px){.ddi-hero-drone{display:none}}.ddi-body{margin:0 auto;max-width:1180px;padding:32px 24px 64px}.ddi-ask{background:var(--ddi-surface);border:1px solid var(--ddi-line);border-radius:14px;margin-bottom:28px;padding:26px 28px}.ddi-ask-eyebrow{color:var(--ddi-muted-2);font-family:var(--ddi-font-mono);font-size:.7rem;letter-spacing:.06em;text-transform:uppercase}.ddi-ask-title{font-size:1.25rem;font-weight:600;margin:4px 0 6px}.ddi-ask-lede{color:var(--ddi-muted);margin:0 0 16px;max-width:60ch}.ddi-ask-form{display:flex;gap:8px}.ddi-ask-input{background:var(--ddi-surface-2);border:1px solid var(--ddi-line);border-radius:8px;color:var(--ddi-ink);flex:1;font-family:var(--ddi-font-body);font-size:.95rem;padding:12px 14px}.ddi-ask-input:focus-visible{outline:2px solid var(--ddi-accent);outline-offset:1px}.ddi-ask-submit{background:var(--ddi-accent);border:none;border-radius:8px;color:var(--ddi-accent-ink);cursor:pointer;font-size:.9rem;font-weight:600;padding:0 22px}.ddi-ask-submit:disabled{cursor:progress;opacity:.6}.ddi-ask-note{color:var(--ddi-muted-2);font-size:.78rem;margin:8px 0 0}.ddi-ask-disclaimer{color:var(--ddi-muted-2);font-size:.74rem;margin:10px 0 0}.ddi-disclaimer-footer{border-top:1px solid var(--ddi-line);color:var(--ddi-muted-2);font-size:.76rem;line-height:1.5;margin-top:32px;max-width:80ch;padding-top:16px}.cf-turnstile{margin-top:8px}.ddi-ask-suggestions{display:flex;flex-wrap:wrap;gap:8px;margin-top:14px}.ddi-chip-btn{background:var(--ddi-surface-2);border:1px solid var(--ddi-line);border-radius:999px;color:var(--ddi-muted);cursor:pointer;font-family:var(--ddi-font-body);font-size:.82rem;padding:7px 14px}.ddi-chip-btn:hover{border-color:var(--ddi-accent);color:var(--ddi-accent)}.ddi-ask-answer{border-top:1px solid var(--ddi-line);margin-top:18px;padding-top:16px}.ddi-ask-answer-label{color:var(--ddi-accent);font-family:var(--ddi-font-mono);font-size:.7rem;letter-spacing:.05em;margin-bottom:10px;text-transform:uppercase}.ddi-ask-loading{display:flex;gap:5px;padding:4px 0}.ddi-ask-dot{animation:ddi-ask-bounce 1.1s ease-in-out infinite;background:var(--ddi-accent);border-radius:50%;height:7px;opacity:.35;width:7px}.ddi-ask-dot:nth-child(2){animation-delay:.15s}.ddi-ask-dot:nth-child(3){animation-delay:.3s}@keyframes ddi-ask-bounce{0%,60%,to{opacity:.35;transform:translateY(0)}30%{opacity:1;transform:translateY(-3px)}}@media (prefers-reduced-motion:reduce){.ddi-ask-dot{animation:none;opacity:.7}}.ddi-ask-answer-body{font-size:.92rem;line-height:1.6}.ddi-ask-answer-body p{margin:0 0 10px}.ddi-ask-answer-body p:last-child{margin-bottom:0}.ddi-ask-answer-body ul{list-style:none;margin:0 0 10px;padding-left:0}.ddi-ask-answer-body ul:last-child{margin-bottom:0}.ddi-ask-answer-body li{margin-bottom:6px;padding-left:16px;position:relative}.ddi-ask-answer-body li:before{color:var(--ddi-accent);content:"\2013";left:0;position:absolute}.ddi-ask-answer-body li:last-child{margin-bottom:0}.ddi-controls{display:flex;flex-wrap:nowrap;gap:8px;margin-bottom:14px}.ddi-search{flex:1 1 200px;min-width:140px;position:relative}.ddi-search-icon{color:var(--ddi-muted-2);left:12px;position:absolute;top:50%;transform:translateY(-50%)}.ddi-input,.ddi-select{background:var(--ddi-surface);border:1px solid var(--ddi-line);border-radius:8px;color:var(--ddi-ink);font-family:var(--ddi-font-body);font-size:.88rem}.ddi-input{padding:10px 12px 10px 34px;width:100%}.ddi-select{flex:1 1 130px;min-width:0;padding:10px 8px}.ddi-input:focus-visible,.ddi-select:focus-visible{outline:2px solid var(--ddi-accent);outline-offset:1px}.ddi-toggle-btn{background:var(--ddi-surface);border:1px solid var(--ddi-line);border-radius:8px;color:var(--ddi-muted);cursor:pointer;flex:0 0 auto;font-family:var(--ddi-font-body);font-size:.85rem;padding:0 14px;white-space:nowrap}.ddi-toggle-btn.active{background:var(--ddi-accent-wash);border-color:var(--ddi-accent);color:var(--ddi-accent)}.ddi-clear{background:var(--ddi-surface);border:1px solid var(--ddi-line);border-radius:8px;color:var(--ddi-muted);cursor:pointer;font-size:.85rem;padding:0 14px}.ddi-resultbar{align-items:center;color:var(--ddi-muted-2);display:flex;font-size:.82rem;gap:12px;justify-content:space-between;margin-bottom:12px}.ddi-viewswitch{background:var(--ddi-surface);border:1px solid var(--ddi-line);border-radius:999px;box-shadow:0 1px 2px rgba(0,0,0,.05);display:inline-flex;gap:2px;padding:4px}.ddi-view-btn{background:none;border:none;border-radius:999px;color:var(--ddi-muted);cursor:pointer;font-family:var(--ddi-font-body);font-size:.85rem;font-weight:600;padding:9px 20px;transition:background-color .15s ease,color .15s ease}.ddi-view-btn:not(.active):hover{background:var(--ddi-accent-wash);color:var(--ddi-accent)}.ddi-view-btn.active{background:var(--ddi-accent);box-shadow:0 1px 3px color-mix(in srgb,var(--ddi-accent) 40%,transparent);color:var(--ddi-accent-ink)}.ddi-map-wrap{margin-top:4px}.ddi-map{background:var(--ddi-surface-2);border:1px solid var(--ddi-line);border-radius:var(--ddi-radius);height:560px;overflow:hidden}.ddi-map-note{color:var(--ddi-muted-2);font-size:.78rem;margin:8px 0 0}.ddi-map .leaflet-popup-content-wrapper{border-radius:10px;font-family:var(--ddi-font-body)}.ddi-map-popup-name{font-size:.9rem;font-weight:600;margin:0 0 3px}.ddi-map-popup-loc{color:var(--ddi-muted-2);font-size:.76rem;margin-bottom:6px}.ddi-map-popup-tags{display:flex;flex-wrap:wrap;gap:4px;margin-bottom:6px}.ddi-map-popup-link{background:none;border:none;color:var(--ddi-accent);cursor:pointer;font-family:var(--ddi-font-body);font-size:.78rem;font-weight:600;padding:0}.ddi-map-marker{background:var(--ddi-accent);border:2px solid var(--ddi-surface);border-radius:50%;box-shadow:0 0 0 1px var(--ddi-accent),0 1px 3px rgba(0,0,0,.25);display:inline-block;height:16px;width:16px}.ddi-map-marker.has-cert{background:var(--ddi-good);box-shadow:0 0 0 1px var(--ddi-good),0 1px 3px rgba(0,0,0,.25)}.ddi-map .marker-cluster{background:color-mix(in srgb,var(--ddi-accent) 22%,transparent)}.ddi-map .marker-cluster div{background:var(--ddi-accent);color:var(--ddi-accent-ink);font-family:var(--ddi-font-mono);font-size:.8rem;font-weight:600}.ddi-map .marker-cluster span{line-height:inherit}.ddi-map-legend{background:var(--ddi-surface);border:1px solid var(--ddi-line);border-radius:8px;box-shadow:0 1px 4px rgba(0,0,0,.1);color:var(--ddi-muted);font-size:.72rem;padding:8px 10px}.ddi-map-legend-row{align-items:center;display:flex;gap:6px;margin-bottom:4px}.ddi-map-legend-row:last-child{margin-bottom:0}.ddi-map-legend-cluster{align-items:center;background:var(--ddi-accent);border-radius:50%;color:var(--ddi-accent-ink);display:inline-flex;font-family:var(--ddi-font-mono);font-size:.6rem;font-weight:600;height:16px;justify-content:center;width:16px}.ddi-grid{display:grid;gap:12px;grid-template-columns:repeat(auto-fill,minmax(280px,1fr))}.ddi-card{background:var(--ddi-surface);border:1px solid var(--ddi-line);border-radius:var(--ddi-radius);color:inherit;cursor:pointer;display:block;font-family:inherit;padding:16px;position:relative;text-align:left;width:100%}.ddi-card:hover{border-color:var(--ddi-accent)}.ddi-card:focus-visible{outline:2px solid var(--ddi-accent);outline-offset:1px}.ddi-card:after,.ddi-card:before{border-color:var(--ddi-line);border-style:solid;border-width:0;content:"";height:8px;position:absolute;width:8px}.ddi-card:before{border-left-width:1.5px;border-top-width:1.5px;left:6px;top:6px}.ddi-card:after{border-bottom-width:1.5px;border-right-width:1.5px;bottom:6px;right:6px}.ddi-card:hover:after,.ddi-card:hover:before{border-color:var(--ddi-accent)}.ddi-card-name{font-size:.98rem;font-weight:600;margin:0 0 2px}.ddi-card-loc{color:var(--ddi-muted-2);font-size:.8rem;margin-bottom:8px}.ddi-card-bio{color:var(--ddi-muted);display:-webkit-box;font-size:.85rem;-webkit-line-clamp:2;margin:0 0 10px;-webkit-box-orient:vertical;overflow:hidden}.ddi-card-tags{display:flex;flex-wrap:wrap;gap:5px;margin-bottom:8px}.ddi-badge{background:var(--ddi-surface-2);border:1px solid var(--ddi-line);border-radius:999px;box-sizing:border-box;color:var(--ddi-muted);display:inline-block;font-size:.68rem;max-width:100%;min-width:0;overflow:hidden;padding:2px 8px;text-overflow:ellipsis;vertical-align:top;white-space:nowrap}.ddi-badge-cert{background:var(--ddi-good-wash);border-color:color-mix(in srgb,var(--ddi-good) 35%,transparent);color:var(--ddi-good)}.ddi-badge-fund{background:var(--ddi-accent-wash);border-color:color-mix(in srgb,var(--ddi-accent) 35%,transparent);color:var(--ddi-accent)}.ddi-card-foot{color:var(--ddi-muted-2);font-family:var(--ddi-font-mono);font-size:.72rem}.ddi-badge-source-research{background:var(--ddi-warn-wash);border-color:color-mix(in srgb,var(--ddi-warn) 35%,transparent);color:var(--ddi-warn)}.ddi-capmap-wrap{margin-top:4px}.ddi-capmap-heading{font-size:1.1rem;font-weight:600;margin:0 0 4px}.ddi-capmap-intro{color:var(--ddi-muted);font-size:.85rem;margin:0 0 18px;max-width:68ch}.ddi-capmap-layout{align-items:stretch;display:flex;flex-wrap:wrap;gap:24px}.ddi-capmap-stage{background:var(--ddi-surface-2);border:1px solid var(--ddi-line);border-radius:var(--ddi-radius);flex:1 1 480px;height:560px;min-width:320px;overflow:hidden;position:relative}.ddi-capmap-canvas{cursor:grab;display:block;height:100%;touch-action:none;width:100%}.ddi-capmap-canvas:active{cursor:grabbing}.ddi-capmap-reset{background:var(--ddi-surface);border:1px solid var(--ddi-line);border-radius:6px;bottom:10px;color:var(--ddi-muted);cursor:pointer;font-family:var(--ddi-font-mono);font-size:.7rem;left:10px;letter-spacing:.03em;padding:5px 9px;position:absolute;text-transform:uppercase}.ddi-capmap-reset:hover{border-color:var(--ddi-muted-2);color:var(--ddi-ink)}.ddi-capmap-hint{background:color-mix(in srgb,var(--ddi-surface) 85%,transparent);bottom:10px;color:var(--ddi-muted-2);font-family:var(--ddi-font-mono);font-size:.68rem;padding:4px 8px;right:10px}.ddi-capmap-hint,.ddi-capmap-tip{border-radius:6px;pointer-events:none;position:absolute}.ddi-capmap-tip{background:var(--ddi-ink);color:var(--ddi-surface);font-size:.72rem;padding:4px 9px;white-space:nowrap;z-index:5}.ddi-capmap-panel{background:var(--ddi-surface);border:1px solid var(--ddi-line);border-radius:var(--ddi-radius);flex:1 1 340px;max-height:560px;min-height:320px;min-width:0;overflow-y:auto;padding:18px 20px}.ddi-capmap-empty{color:var(--ddi-muted-2);font-size:.85rem;padding:40px 10px;text-align:center}.ddi-capmap-panel-head{margin-bottom:12px}.ddi-capmap-panel-title{font-size:1rem;font-weight:700;margin:0 0 2px}.ddi-capmap-panel-sub{color:var(--ddi-muted-2);font-family:var(--ddi-font-mono);font-size:.72rem;margin:0}.ddi-capmap-gap-note{color:var(--ddi-muted);font-size:.85rem;font-style:italic;padding:8px 0}.ddi-capmap-co-list{list-style:none;margin:0;padding:0}.ddi-capmap-co{border-top:1px solid var(--ddi-line);padding:12px 0}.ddi-capmap-co:first-child{border-top:none;padding-top:0}.ddi-capmap-co-head{align-items:baseline;display:flex;flex-wrap:wrap;gap:6px 10px}.ddi-capmap-co-name{background:none;border:none;color:var(--ddi-accent);cursor:pointer;font-family:inherit;font-size:.9rem;font-weight:600;padding:0;text-decoration:underline;text-underline-offset:2px}.ddi-capmap-co-loc{border:1px solid var(--ddi-line);border-radius:3px;color:var(--ddi-muted-2);font-family:var(--ddi-font-mono);font-size:.7rem;padding:0 5px}.ddi-capmap-co-desc{color:var(--ddi-muted);font-size:.8rem;line-height:1.5;margin:4px 0 0}@media (max-width:720px){.ddi-capmap-layout{flex-direction:column}.ddi-capmap-stage{height:420px}}.ddi-empty{padding:48px;text-align:center}.ddi-empty-title{font-weight:600;margin:0 0 4px}.ddi-empty-sub{color:var(--ddi-muted);margin:0}.ddi-pager{align-items:center;display:flex;gap:10px;justify-content:center;margin-top:28px}.ddi-pager-nav{background:var(--ddi-surface);border:1px solid var(--ddi-line);border-radius:8px;color:var(--ddi-ink);cursor:pointer;font-size:.85rem;padding:7px 14px}.ddi-pager-nav:disabled{cursor:default;opacity:.4}.ddi-pager-pages{color:var(--ddi-muted);font-family:var(--ddi-font-mono);font-size:.8rem}.ddi-footnote{border-top:1px solid var(--ddi-line);color:var(--ddi-muted-2);font-size:.78rem;margin-top:40px;max-width:80ch;padding-top:16px}.ddi-modal{align-items:flex-start;display:flex;inset:0;justify-content:center;padding:5vh 16px;position:fixed;z-index:1000}.ddi-modal[hidden]{display:none}.ddi-modal-scrim{background:rgba(19,28,31,.55);inset:0;position:absolute}.ddi-modal-panel{background:var(--ddi-surface);border-radius:14px;max-height:90vh;max-width:620px;overflow-y:auto;padding:28px 28px 24px;position:relative;width:100%}.ddi-modal-close{background:var(--ddi-surface-2);border:1px solid var(--ddi-line);border-radius:8px;color:var(--ddi-muted);cursor:pointer;display:grid;height:32px;place-items:center;position:absolute;right:16px;top:16px;width:32px}.ddi-modal-head{padding-right:40px}.ddi-modal-name{font-size:1.3rem;font-weight:700;margin:0 0 4px;text-wrap:balance}.ddi-modal-loc{color:var(--ddi-muted-2);font-size:.85rem}.ddi-modal-tags{display:flex;flex-wrap:wrap;gap:6px;margin:14px 0}.ddi-modal-section{margin-top:16px}.ddi-modal-label{color:var(--ddi-muted-2);font-family:var(--ddi-font-mono);font-size:.68rem;letter-spacing:.05em;margin-bottom:5px;text-transform:uppercase}.ddi-modal-bio{color:var(--ddi-ink);margin:0}.ddi-modal-chiprow{display:flex;flex-wrap:wrap;gap:5px}.ddi-fund-item{background:var(--ddi-surface-2);border:1px solid var(--ddi-line);border-radius:8px;margin-bottom:6px;padding:8px 10px}.ddi-fund-item .top{display:flex;font-size:.85rem;gap:8px;justify-content:space-between}.ddi-fund-item .amt{color:var(--ddi-accent);font-family:var(--ddi-font-mono);font-weight:600}.ddi-fund-item .dept{color:var(--ddi-muted-2);font-size:.75rem;margin-top:2px}.ddi-product-item{background:var(--ddi-surface-2);border:1px solid var(--ddi-line);border-radius:8px;margin-bottom:6px;padding:8px 10px}.ddi-product-item .name{color:var(--ddi-ink);font-size:.85rem;font-weight:600}.ddi-product-item .category{color:var(--ddi-muted-2);font-size:.72rem;margin-left:6px}.ddi-product-item .desc{color:var(--ddi-muted);font-size:.8rem;margin:3px 0 0}.ddi-product-specs{display:grid;font-size:.75rem;gap:2px 10px;grid-template-columns:auto 1fr;margin-top:6px}.ddi-product-specs dt{color:var(--ddi-muted-2)}.ddi-product-specs dd{color:var(--ddi-ink);margin:0}.ddi-detail-row{border-bottom:1px solid var(--ddi-line);display:flex;font-size:.8rem;gap:6px;padding:3px 0}.ddi-detail-row:last-child{border-bottom:none}.ddi-detail-row .k{color:var(--ddi-muted-2);flex:0 0 auto;min-width:150px}.ddi-detail-row .v{color:var(--ddi-ink)}.ddi-modal-factlist{color:var(--ddi-muted);font-size:.8rem;margin:0;padding-left:18px}.ddi-modal-factlist li{margin-bottom:3px}.ddi-modal-foot{display:flex;flex-wrap:wrap;gap:10px;margin-top:20px}a.ddi-modal-cta{background:var(--ddi-accent);border-radius:8px;color:var(--ddi-accent-ink);font-size:.85rem;font-weight:600;padding:9px 16px;text-decoration:none}a.ddi-modal-cta-secondary{background:var(--ddi-surface-2);border:1px solid var(--ddi-line);color:var(--ddi-ink)}.ddi-modal-contact{border-top:1px solid var(--ddi-line);color:var(--ddi-muted);font-size:.85rem;margin-top:16px;padding-top:14px}.ddi-modal-contact strong{color:var(--ddi-ink)}@media (max-width:640px){.ddi-controls{align-items:stretch;flex-direction:column}.ddi-select,.ddi-toggle-btn{width:100%}}.ddi-intro{align-items:center;background:var(--ddi-bg);display:flex;flex-direction:column;gap:28px;inset:0;justify-content:center;position:fixed;transition:opacity .6s ease,visibility .6s ease;z-index:9999}.ddi-intro.ddi-intro-closing{opacity:0;pointer-events:none;visibility:hidden}.ddi-intro.ddi-intro-done{display:none}.ddi-intro-drone{height:min(58vw,420px);width:min(58vw,420px)}.ddi-build-grid{animation:ddi-grid-in .5s ease-out .05s forwards;fill:none;opacity:0;stroke:var(--ddi-accent);stroke-dasharray:3 5;stroke-width:.75}@keyframes ddi-grid-in{to{opacity:.35}}.ddi-build{opacity:0;transform:scale(1.35);transform-origin:0 0;transition:opacity .35s cubic-bezier(.2,.8,.2,1),transform .35s cubic-bezier(.2,.8,.2,1)}.ddi-build.is-in{opacity:1;transform:scale(1)}.ddi-build-fill{fill-opacity:0;transition:fill-opacity .3s ease-out .05s}.ddi-build.is-in .ddi-build-fill{fill-opacity:1}.ddi-build-outline{stroke:var(--ddi-accent);stroke-width:1.4;transition:stroke-width .3s ease-out .15s}.ddi-build.is-in .ddi-build-outline{stroke-width:0}.ddi-build-draw{stroke-dasharray:24;stroke-dashoffset:24;transition:stroke-dashoffset .3s ease-out}.ddi-build.is-in .ddi-build-draw{stroke-dashoffset:0}.ddi-intro-log{color:var(--ddi-accent);font-family:var(--ddi-font-mono);font-size:.85rem;height:1.4em;letter-spacing:.02em;position:relative;text-align:center}.ddi-intro-log-line{inset:0;margin:0;opacity:0;position:absolute;transition:opacity .2s ease-out}.ddi-intro-log-line.is-in{opacity:1}.ddi-intro-log-final{color:var(--ddi-ink);font-weight:600}.ddi-intro-skip{animation:ddi-skip-in .4s ease-out .6s forwards;background:none;border:1px solid var(--ddi-line);border-radius:8px;bottom:28px;color:var(--ddi-muted);cursor:pointer;font-family:var(--ddi-font-body);font-size:.78rem;opacity:0;padding:7px 14px;position:absolute;right:28px}.ddi-intro-skip:hover{border-color:var(--ddi-accent);color:var(--ddi-accent)}@keyframes ddi-skip-in{to{opacity:1}}.ddi-reveal-pending .ddi-brand-logo,.ddi-reveal-pending .ddi-hero-rule,.ddi-reveal-pending .ddi-lede,.ddi-reveal-pending .ddi-stats,.ddi-reveal-pending .ddi-title{opacity:0;transform:translateY(10px)}.ddi-brand-logo,.ddi-hero-rule,.ddi-lede,.ddi-stats,.ddi-title{transition:opacity .5s ease-out,transform .5s ease-out}.ddi-reveal .ddi-brand-logo{transition-delay:0s}.ddi-reveal .ddi-hero-rule{transition-delay:.08s}.ddi-reveal .ddi-title{transition-delay:.16s}.ddi-reveal .ddi-lede{transition-delay:.24s}.ddi-reveal .ddi-stats{transition-delay:.32s}.ddi-reveal .ddi-brand-logo,.ddi-reveal .ddi-hero-rule,.ddi-reveal .ddi-lede,.ddi-reveal .ddi-stats,.ddi-reveal .ddi-title{opacity:1;transform:translateY(0)}@media (prefers-reduced-motion:reduce){.ddi-intro{display:none}}