/* Programme interactions share the established dark, violet Orbit palette. */
.interaction-hint{
  font-size:10px;
  letter-spacing:.13em;
  color:var(--accent);
  margin:0 0 18px}
  .explorer-panel{
    border:1px solid var(--line);
    background:linear-gradient(130deg,#131c29,#0c1118);
    overflow:hidden}
    .communications-card{
      text-align:left;
      cursor:pointer;
      color:var(--ink);
      position:relative;
      transition:border-color .2s,background .2s}
      .communications-card:after{
        content:'↗';
        position:absolute;
        right:18px;
        top:20px;
        color:var(--muted);
        font-size:16px}
        .communications-card[aria-pressed=true]{
          border-color:var(--accent);
          background:#c3b1ff0e}
          .communications-card[aria-pressed=true]:after{
            content:'●';
            color:var(--accent);
            font-size:10px}
            .product-card-title{
              display:block;
              font-size:28px;
              letter-spacing:-.04em;
              margin:0 0 17px;
              font-weight:400;
              line-height:1.12}
              .product-card-description{
                display:block;
                font-size:13px;
                line-height:1.7;
                color:var(--muted)}
                .product-inspector{
                  display:grid;
                  grid-template-columns:1fr 1fr;
                  margin-top:24px;
                  min-height:420px}
                  .product-art{
                    position:relative;
                    display:grid;
                    place-items:center;
                    overflow:hidden;
                    min-height:350px;
                    background:radial-gradient(ellipse,#c3b1ff10,transparent 65%)}
                    .product-art svg{
                      width:90%;
                      max-width:480px;
                      z-index:1;
                      fill:#151f30;
                      stroke:#ded6ef;
                      stroke-width:2;
                      stroke-linecap:round;
                      stroke-linejoin:round}
                      .product-art .signal-lines{
                        stroke:var(--accent);
                        fill:none}
                        .product-orbit{
                          position:absolute;
                          width:290px;
                          height:290px;
                          border:1px solid #c3b1ff18;
                          border-radius:50%;
                          transform:rotate(-20deg) scaleY(.7)}
                          .product-orbit.second{
                            width:390px;
                            height:390px;
                            transform:rotate(25deg) scaleY(.7)}
                            .product-art>span,.deployment-art>span{
                              position:absolute;
                              bottom:25px;
                              font-size:9px;
                              letter-spacing:.13em;
                              color:var(--accent)}
                              .product-detail,.beam-copy,.deployment-copy{
                                padding:38px}
                                .product-detail h3,.beam-copy h3,.deployment-copy h3,.memory-copy h3{
                                  font-size:clamp(30px,3vw,43px);
                                  letter-spacing:-.04em;
                                  line-height:1.08;
                                  margin-bottom:22px}
                                  .product-detail p,.beam-copy p,.deployment-copy p,.memory-copy p{
                                    font-size:14px}
                                    .product-detail dl{
                                      margin:25px 0;
                                      font-size:12px}
                                      .product-detail dl>div{
                                        display:grid;
                                        grid-template-columns:85px 1fr;
                                        gap:15px;
                                        padding:12px 0;
                                        border-top:1px solid var(--line)}
                                        .product-detail dt{
                                          color:var(--muted)}
                                          .product-detail dd{
                                            margin:0;
                                            line-height:1.7}
                                            .route-map{
                                              position:relative;
                                              height:420px;
                                              border:1px solid var(--line);
                                              background:radial-gradient(ellipse at 64% 25%,#c3b1ff13,transparent 60%);
                                              margin:15px 0 24px}
                                              .route-map svg{
                                                position:absolute;
                                                inset:20px 0 0;
                                                width:100%;
                                                height:calc(100% - 40px);
                                                fill:none}
                                                .route-line{
                                                  stroke:#c3b1ff22;
                                                  stroke-width:2;
                                                  stroke-dasharray:5 8}
                                                  .route-active{
                                                    stroke:#c3b1ff;
                                                    stroke-width:1.5;
                                                    opacity:.35;
                                                    transition:opacity .35s}
                                                    .route-caption{
                                                      position:absolute;
                                                      top:22px;
                                                      left:24px;
                                                      font-size:9px;
                                                      letter-spacing:.13em;
                                                      color:var(--muted)}
                                                      .route-node{
                                                        position:absolute;
                                                        width:190px;
                                                        transform:translate(-50%,-50%);
                                                        background:#0b111beb;
                                                        border:1px solid var(--line);
                                                        padding:18px;
                                                        text-align:center;
                                                        color:var(--ink);
                                                        cursor:pointer;
                                                        transition:border-color .25s,box-shadow .25s}
                                                        .route-node[data-link='0']{
                                                          left:12%;
                                                          top:73%}
                                                          .route-node[data-link='1']{
                                                            left:36%;
                                                            top:59%}
                                                            .route-node[data-link='2']{
                                                              left:63%;
                                                              top:30%}
                                                              .route-node[data-link='3']{
                                                                left:87%;
                                                                top:66%}
                                                                .route-node[aria-pressed=true]{
                                                                  border-color:var(--accent);
                                                                  box-shadow:0 0 40px #c3b1ff0c}
                                                                  .route-symbol{
                                                                    display:block;
                                                                    font-size:34px;
                                                                    color:var(--accent);
                                                                    margin-bottom:14px}
                                                                    .route-node small{
                                                                      display:block;
                                                                      font-size:8px;
                                                                      letter-spacing:.07em;
                                                                      color:var(--muted);
                                                                      margin-bottom:8px}
                                                                      .route-node b{
                                                                        font-size:12px;
                                                                        font-weight:400}
                                                                        .beam-explorer{
                                                                          display:grid;
                                                                          grid-template-columns:1.1fr 1fr;
                                                                          margin:20px 0 25px;
                                                                          align-items:center}
                                                                          .beam-art{
                                                                            position:relative;
                                                                            min-width:0;
                                                                            padding:25px 15px 45px}
                                                                            .beam-art svg{
                                                                              width:100%;
                                                                              display:block}
                                                                              .beam-art>span{
                                                                                display:block;
                                                                                text-align:center;
                                                                                font-size:9px;
                                                                                letter-spacing:.13em;
                                                                                color:var(--muted);
                                                                                margin-top:12px}
                                                                                .beam-guide{
                                                                                  fill:none;
                                                                                  stroke:#c3b1ff1a;
                                                                                  stroke-width:1;
                                                                                  stroke-dasharray:5 6}
                                                                                  #beam-centre{
                                                                                    fill:none;
                                                                                    stroke:var(--accent);
                                                                                    stroke-width:1.5;
                                                                                    stroke-dasharray:4 6}
                                                                                    #beam-target{
                                                                                      fill:#0c1118;
                                                                                      stroke:var(--accent);
                                                                                      stroke-width:2}
                                                                                      .array-base{
                                                                                        fill:#263244;
                                                                                        stroke:#d7d1e5;
                                                                                        stroke-width:1.5}
                                                                                        .array-elements{
                                                                                          fill:none;
                                                                                          stroke:#c3b1ff99;
                                                                                          stroke-width:1}
                                                                                          .beam-copy label{
                                                                                            display:flex;
                                                                                            justify-content:space-between;
                                                                                            gap:15px;
                                                                                            font-size:11px;
                                                                                            margin:30px 0 18px}
                                                                                            .beam-copy output{
                                                                                              color:var(--accent)}
                                                                                              #beam-direction{
                                                                                                width:100%;
                                                                                                accent-color:var(--accent);
                                                                                                cursor:pointer;
                                                                                                min-height:28px}
                                                                                                .beam-range-labels{
                                                                                                  display:flex;
                                                                                                  justify-content:space-between;
                                                                                                  font-size:8px;
                                                                                                  letter-spacing:.1em;
                                                                                                  color:var(--muted);
                                                                                                  margin:8px 0 18px}
                                                                                                  .programme-details{
                                                                                                    border-bottom:1px solid var(--line);
                                                                                                    padding:15px 0 25px}
                                                                                                    .programme-details summary{
                                                                                                      list-style:none;
                                                                                                      cursor:pointer;
                                                                                                      color:var(--accent);
                                                                                                      font-size:13px;
                                                                                                      padding:10px 0}
                                                                                                      .programme-details summary::-webkit-details-marker{
                                                                                                        display:none}
                                                                                                        .programme-details summary span{
                                                                                                          float:right}
                                                                                                          .programme-details .controller-flow{
                                                                                                            margin-top:25px}
                                                                                                            .deployment-tabs{
                                                                                                              display:grid;
                                                                                                              grid-template-columns:repeat(3,1fr);
                                                                                                              gap:10px;
                                                                                                              margin:25px 0 15px}
                                                                                                              .deployment-tabs button,.memory-tabs button{
                                                                                                                background:transparent;
                                                                                                                border:1px solid var(--line);
                                                                                                                color:var(--ink);
                                                                                                                padding:18px;
                                                                                                                font-size:12px;
                                                                                                                cursor:pointer;
                                                                                                                text-align:left}
                                                                                                                .deployment-tabs button[aria-pressed=true],.memory-tabs button[aria-pressed=true]{
                                                                                                                  border-color:var(--accent);
                                                                                                                  color:var(--accent);
                                                                                                                  background:#c3b1ff08}
                                                                                                                  .deployment-explorer{
                                                                                                                    display:grid;
                                                                                                                    grid-template-columns:1fr 1fr;
                                                                                                                    align-items:center}
                                                                                                                    .deployment-art{
                                                                                                                      min-height:360px;
                                                                                                                      position:relative;
                                                                                                                      display:grid;
                                                                                                                      place-items:center;
                                                                                                                      overflow:hidden}
                                                                                                                      .deployment-art svg{
                                                                                                                        width:90%;
                                                                                                                        max-width:430px;
                                                                                                                        fill:#131d2b;
                                                                                                                        stroke:#d9d2e9;
                                                                                                                        stroke-width:2;
                                                                                                                        stroke-linecap:round;
                                                                                                                        stroke-linejoin:round;
                                                                                                                        z-index:1}
                                                                                                                        .deployment-ring{
                                                                                                                          position:absolute;
                                                                                                                          width:290px;
                                                                                                                          height:290px;
                                                                                                                          border:1px solid #c3b1ff26;
                                                                                                                          border-radius:50%;
                                                                                                                          box-shadow:0 0 0 40px #c3b1ff03,0 0 0 80px #c3b1ff02}
                                                                                                                          .deployment-tags{
                                                                                                                            display:flex;
                                                                                                                            flex-wrap:wrap;
                                                                                                                            gap:8px;
                                                                                                                            margin:25px 0}
                                                                                                                            .deployment-tags span{
                                                                                                                              border:1px solid #c3b1ff33;
                                                                                                                              color:var(--accent);
                                                                                                                              font-size:10px;
                                                                                                                              padding:8px 12px}
                                                                                                                              .memory-explorer{
                                                                                                                                margin-top:35px}
                                                                                                                                .memory-art{
                                                                                                                                  padding:20px 40px 10px;
                                                                                                                                  background:radial-gradient(ellipse at 65% 50%,#c3b1ff0a,transparent 70%)}
                                                                                                                                  .memory-art svg{
                                                                                                                                    width:100%;
                                                                                                                                    height:260px;
                                                                                                                                    display:block;
                                                                                                                                    overflow:visible}
                                                                                                                                    .memory-art>span{
                                                                                                                                      display:block;
                                                                                                                                      text-align:right;
                                                                                                                                      font-size:8px;
                                                                                                                                      letter-spacing:.12em;
                                                                                                                                      color:var(--muted);
                                                                                                                                      margin-bottom:20px}
                                                                                                                                      .memory-guide{
                                                                                                                                        fill:none;
                                                                                                                                        stroke:#c3b1ff26;
                                                                                                                                        stroke-width:2;
                                                                                                                                        stroke-dasharray:4 9}
                                                                                                                                        .memory-trail{
                                                                                                                                          fill:none;
                                                                                                                                          stroke:var(--accent);
                                                                                                                                          stroke-width:2.5;
                                                                                                                                          transition:stroke-dashoffset .6s ease}
                                                                                                                                          #memory-dots circle{
                                                                                                                                            fill:#111b29;
                                                                                                                                            stroke:#c3b1ff55;
                                                                                                                                            stroke-width:2}
                                                                                                                                            #memory-dots .is-recorded{
                                                                                                                                              fill:var(--accent);
                                                                                                                                              stroke:var(--accent)}
                                                                                                                                              #memory-marker{
                                                                                                                                                transition:transform .6s ease}
                                                                                                                                                #memory-marker circle{
                                                                                                                                                  fill:#111b29;
                                                                                                                                                  stroke:var(--accent);
                                                                                                                                                  stroke-width:1.5}
                                                                                                                                                  #memory-marker path{
                                                                                                                                                    fill:var(--accent)}
                                                                                                                                                    .memory-copy{
                                                                                                                                                      padding:0 38px 35px}
                                                                                                                                                      .memory-tabs{
                                                                                                                                                        display:grid;
                                                                                                                                                        grid-template-columns:repeat(4,1fr);
                                                                                                                                                        gap:10px;
                                                                                                                                                        margin-bottom:32px}
                                                                                                                                                        .memory-copy h3{
                                                                                                                                                          max-width:800px}
                                                                                                                                                          .memory-copy p:not(.eyebrow){
                                                                                                                                                            max-width:750px;
                                                                                                                                                            min-height:48px}
                                                                                                                                                            .memory-actions{
                                                                                                                                                              display:flex;
                                                                                                                                                              justify-content:space-between;
                                                                                                                                                              gap:20px;
                                                                                                                                                              margin-top:25px}
                                                                                                                                                              .memory-actions button:disabled{
                                                                                                                                                                opacity:.3;
                                                                                                                                                                cursor:default}
                                                                                                                                                                @media(max-width:1000px){
                                                                                                                                                                  .route-node{
                                                                                                                                                                    width:160px;
                                                                                                                                                                    padding:14px}
                                                                                                                                                                    .route-node[data-link='0']{
                                                                                                                                                                      left:11%}
                                                                                                                                                                      .route-node[data-link='3']{
                                                                                                                                                                        left:88%}
                                                                                                                                                                        .product-detail,.beam-copy,.deployment-copy{
                                                                                                                                                                          padding:28px}
                                                                                                                                                                          .product-card-title{
                                                                                                                                                                            font-size:25px}
                                                                                                                                                                          }
                                                                                                                                                                          @media(max-width:760px){
                                                                                                                                                                            .product-inspector,.beam-explorer,.deployment-explorer{
                                                                                                                                                                              grid-template-columns:1fr}
                                                                                                                                                                              .product-art{
                                                                                                                                                                                min-height:290px}
                                                                                                                                                                                .product-detail,.beam-copy,.deployment-copy{
                                                                                                                                                                                  padding:25px}
                                                                                                                                                                                  .route-map{
                                                                                                                                                                                    height:auto;
                                                                                                                                                                                    display:grid;
                                                                                                                                                                                    grid-template-columns:1fr 1fr;
                                                                                                                                                                                    gap:15px;
                                                                                                                                                                                    padding:60px 20px 20px}
                                                                                                                                                                                    .route-map svg{
                                                                                                                                                                                      display:none}
                                                                                                                                                                                      .route-node{
                                                                                                                                                                                        position:static;
                                                                                                                                                                                        width:auto;
                                                                                                                                                                                        transform:none}
                                                                                                                                                                                        .route-caption{
                                                                                                                                                                                          font-size:8px;
                                                                                                                                                                                          left:20px}
                                                                                                                                                                                          .route-symbol{
                                                                                                                                                                                            font-size:30px}
                                                                                                                                                                                            .deployment-tabs{
                                                                                                                                                                                              grid-template-columns:1fr}
                                                                                                                                                                                              .deployment-tabs button{
                                                                                                                                                                                                padding:15px}
                                                                                                                                                                                                .deployment-art{
                                                                                                                                                                                                  min-height:280px}
                                                                                                                                                                                                  .memory-art{
                                                                                                                                                                                                    padding:15px}
                                                                                                                                                                                                    .memory-art svg{
                                                                                                                                                                                                      height:190px}
                                                                                                                                                                                                      .memory-copy{
                                                                                                                                                                                                        padding:0 22px 25px}
                                                                                                                                                                                                        .memory-tabs{
                                                                                                                                                                                                          grid-template-columns:1fr 1fr}
                                                                                                                                                                                                          .memory-tabs button{
                                                                                                                                                                                                            padding:14px;
                                                                                                                                                                                                            font-size:11px}
                                                                                                                                                                                                            .memory-copy h3{
                                                                                                                                                                                                              font-size:31px}
                                                                                                                                                                                                              .memory-copy p:not(.eyebrow){
                                                                                                                                                                                                                min-height:80px}
                                                                                                                                                                                                                .memory-actions{
                                                                                                                                                                                                                  font-size:11px}
                                                                                                                                                                                                                }
                                                                                                                                                                                                                @media(prefers-reduced-motion:reduce){
                                                                                                                                                                                                                  .memory-trail,#memory-marker,.route-active,.route-node,.communications-card{
                                                                                                                                                                                                                    transition:none}
                                                                                                                                                                                                                  }
                                                                                                                                                                                                                  /* Keep selectors and their result visible together on wider screens. */
                                                                                                                                                                                                                  .product-workbench{
                                                                                                                                                                                                                    display:grid;
                                                                                                                                                                                                                    grid-template-columns:minmax(240px,.75fr) minmax(0,2fr);
                                                                                                                                                                                                                    gap:18px;
                                                                                                                                                                                                                    align-items:stretch}
                                                                                                                                                                                                                    .product-workbench .communications-grid{
                                                                                                                                                                                                                      grid-template-columns:1fr;
                                                                                                                                                                                                                      gap:8px}
                                                                                                                                                                                                                      .product-workbench .communications-card{
                                                                                                                                                                                                                        padding:18px 30px 16px 20px;
                                                                                                                                                                                                                        min-height:76px}
                                                                                                                                                                                                                        .product-workbench .communications-card .eyebrow{
                                                                                                                                                                                                                          font-size:8px;
                                                                                                                                                                                                                          margin:0 0 9px;
                                                                                                                                                                                                                          display:block}
                                                                                                                                                                                                                          .product-workbench .product-card-title{
                                                                                                                                                                                                                            font-size:21px;
                                                                                                                                                                                                                            margin:0}
                                                                                                                                                                                                                            .product-workbench .communications-card b,.product-workbench .product-card-description{
                                                                                                                                                                                                                              display:none}
                                                                                                                                                                                                                              .product-workbench .product-inspector{
                                                                                                                                                                                                                                margin:0;
                                                                                                                                                                                                                                grid-template-columns:.9fr 1.1fr;
                                                                                                                                                                                                                                min-width:0}
                                                                                                                                                                                                                                .product-workbench .product-detail{
                                                                                                                                                                                                                                  padding:30px 28px}
                                                                                                                                                                                                                                  .product-workbench .product-detail h3{
                                                                                                                                                                                                                                    font-size:35px}
                                                                                                                                                                                                                                    .product-workbench .product-art{
                                                                                                                                                                                                                                      min-width:0}
                                                                                                                                                                                                                                      @media(max-width:1000px){
                                                                                                                                                                                                                                        .product-workbench .product-inspector{
                                                                                                                                                                                                                                          grid-template-columns:1fr}
                                                                                                                                                                                                                                          .product-workbench .product-art{
                                                                                                                                                                                                                                            min-height:240px}
                                                                                                                                                                                                                                            .product-workbench .product-art svg{
                                                                                                                                                                                                                                              max-width:280px}
                                                                                                                                                                                                                                              .product-workbench .product-art>span{
                                                                                                                                                                                                                                                bottom:10px}
                                                                                                                                                                                                                                                .product-workbench .product-detail{
                                                                                                                                                                                                                                                  padding-top:15px}
                                                                                                                                                                                                                                                }
                                                                                                                                                                                                                                                @media(max-width:760px){
                                                                                                                                                                                                                                                  .product-workbench{
                                                                                                                                                                                                                                                    grid-template-columns:1fr}
                                                                                                                                                                                                                                                    .product-workbench .communications-grid{
                                                                                                                                                                                                                                                      grid-template-columns:1fr 1fr}
                                                                                                                                                                                                                                                      .product-workbench .communications-card{
                                                                                                                                                                                                                                                        padding:15px 22px 14px 14px}
                                                                                                                                                                                                                                                        .product-workbench .product-card-title{
                                                                                                                                                                                                                                                          font-size:19px}
                                                                                                                                                                                                                                                          .product-workbench .communications-card:after{
                                                                                                                                                                                                                                                            right:10px;
                                                                                                                                                                                                                                                            top:15px}
                                                                                                                                                                                                                                                            .product-workbench .product-detail h3{
                                                                                                                                                                                                                                                              font-size:32px}
                                                                                                                                                                                                                                                            }
                                                                                                                                                                                                                                                            .beam-copy .fine-print{
                                                                                                                                                                                                                                                              font-size:9px;
                                                                                                                                                                                                                                                              line-height:1.7;
                                                                                                                                                                                                                                                              margin-top:24px}
                                                                                                                                                                                                                                                              .programme-details[open] summary span{
                                                                                                                                                                                                                                                                display:inline-block;
                                                                                                                                                                                                                                                                transform:rotate(45deg)}
