:root{
  --net-font-fa:var(--font-fa);
  --net-white:#ffffff;
  --net-brand:#206BEE;
  --net-ink-strong:#07184b;
  --net-ink:#0d2857;
  --net-text:#26374d;
  --net-muted:#5f6f83;
  --net-muted-soft:#68788a;
  --net-line-strong:#cfdeef;
  --net-line:#d6e3f3;
  --net-line-soft:#e2ebf6;
  --net-line-subtle:#edf1f6;
  --net-surface:#ffffff;
  --net-surface-soft:#fbfdff;
  --net-surface-alt:#f5f9fe;
  --net-surface-blue:#f8fbff;
  --net-surface-muted:#f6f8fb;
  --net-blue:#1166d9;
  --net-blue-dark:#0d5aa5;
  --net-blue-ink:#173c72;
  --net-blue-muted:#568ed2;
  --net-blue-line:#bed5f2;
  --net-blue-soft:#e3f0ff;
  --net-green:#2fa45a;
  --net-green-dark:#2f8b4b;
  --net-green-soft:#e7f6de;
  --net-green-line:#b8d9c2;
  --net-orange:#f39a22;
  --net-orange-dark:#e98918;
  --net-orange-line:#f2cda4;
  --net-neutral:#5f6570;
  --net-cta-start:#052957;
  --net-cta-end:#061a39;
  --net-index-start:#0c59b8;
  --net-index-end:#083576;
  --net-arrow-muted:#8eacd1;
  --product-hero-surface-start:#ffffff;
  --product-hero-surface-end:#fcfdff;
  --product-hero-ink:#07184b;
  --product-hero-text:#35486d;
  --product-hero-line:#dbe7f8;
  --product-hero-badge-bg:#e8f1ff;
  --product-hero-badge-text:#206bee;
  --net-radius:18px;
  --net-shell:1240px;
  --net-gutter:36px;
  --net-focus-color:rgba(32,107,238,.28);
  --net-focus:0 0 0 3px var(--net-focus-color);
  --net-index-shadow:rgba(5,55,119,.18);
  --net-product-shadow-dark:rgba(0,0,0,.24);
  --net-product-shadow-light:rgba(18,54,112,.12);
  --net-media-shadow:rgba(22,64,116,.06);
  --net-inverse-line:rgba(255,255,255,.13);
  --net-inverse-line-strong:rgba(255,255,255,.16);
  --product-hero-halo-strong:rgba(32,107,238,.075);
  --product-hero-halo-soft:rgba(32,107,238,.028);
  --product-hero-sheen-a:rgba(255,255,255,.04);
  --product-hero-sheen-b:rgba(32,107,238,.018);
  --product-hero-sheen-c:rgba(255,255,255,.02);
}
body{margin:0;font-family:var(--net-font-fa);background:var(--net-white);color:var(--net-text);font-synthesis:none}
.net-page,.net-page *{box-sizing:border-box}.net-page{overflow:clip;background:var(--net-white)}.net-shell{width:min(calc(100% - 2*var(--net-gutter)),var(--net-shell));margin-inline:auto}
.net-section{position:relative;padding:80px 0}.net-section__surface{border-radius:var(--net-radius);box-shadow:0 10px 32px rgba(8,35,66,.08);background:linear-gradient(180deg,var(--net-surface-soft) 0%,var(--net-surface-alt) 100%);padding:26px 30px;position:relative}
.net-section__head{display:flex;align-items:flex-start;gap:18px;margin-bottom:24px}.net-section__title-wrap{margin-inline-start:auto;min-width:0}.net-section__title{margin:0;overflow-wrap:anywhere;color:var(--net-ink);font-size:28px;line-height:1.55;font-weight:800;letter-spacing:-.2px}.net-section__lead{margin:3px 0 0;color:var(--net-muted);font-size:14px;line-height:1.85}.net-section-index{width:52px;height:52px;border-radius:11px;background:linear-gradient(160deg,var(--net-index-start),var(--net-index-end));color:var(--net-white);display:grid;place-items:center;font:800 23px/1 var(--net-font-fa);direction:ltr;box-shadow:0 7px 18px var(--net-index-shadow);flex:0 0 auto}
/* hero — standardized full-bleed hero (matches AV64/KP11 exactly) */
.net-hero{position:relative;isolation:isolate;width:100%;min-height:500px;display:grid;grid-template-columns:repeat(12,1fr);grid-template-rows:auto 1fr;align-content:stretch;row-gap:0;margin:0;border:0;overflow:hidden;background:linear-gradient(180deg,var(--product-hero-surface-start) 0%,var(--product-hero-surface-end) 100%);color:var(--product-hero-ink);padding-block:12px 28px;padding-inline:max(var(--net-gutter),calc((100% - var(--net-shell)) / 2))}
.net-hero:before{content:"";position:absolute;inset:0;z-index:-1;pointer-events:none;background:repeating-linear-gradient(30deg,transparent 0 46px,rgba(32,107,238,.06) 46px 47px),repeating-linear-gradient(150deg,transparent 0 46px,rgba(32,107,238,.06) 46px 47px),repeating-radial-gradient(ellipse 46% 34% at 36% 54%,transparent 0 70px,rgba(32,107,238,.07) 70px 71px);-webkit-mask-image:radial-gradient(ellipse 75% 95% at 38% 55%,#000 0,rgba(0,0,0,.6) 55%,transparent 100%);mask-image:radial-gradient(ellipse 75% 95% at 38% 55%,#000 0,rgba(0,0,0,.6) 55%,transparent 100%)}
.net-hero .net-breadcrumb{grid-column:1/-1;margin-bottom:6px}
.net-hero__copy{position:relative;z-index:2;grid-column:1/-1;max-width:600px;align-self:center}
.net-hero__media{position:absolute;left:0;top:0;bottom:0;width:56%;z-index:0;pointer-events:none}
.net-hero__media img{position:absolute;left:11vw;top:3%;width:auto;height:92%;max-width:none;filter:drop-shadow(0 20px 24px var(--net-product-shadow-dark));-webkit-mask-image:linear-gradient(90deg,transparent 0,#000 8%,#000 80%,transparent 100%),linear-gradient(180deg,transparent 0,#000 10%,#000 88%,transparent 100%);-webkit-mask-composite:source-in;mask-image:linear-gradient(90deg,transparent 0,#000 8%,#000 80%,transparent 100%),linear-gradient(180deg,transparent 0,#000 10%,#000 88%,transparent 100%);mask-composite:intersect}
.net-breadcrumb{display:flex;align-items:center;flex-wrap:wrap;gap:9px;color:#66738b;font-size:12px}.net-breadcrumb a{text-decoration:none;color:#66738b}.net-breadcrumb a:hover{color:var(--net-brand)}.net-breadcrumb span{color:#8090aa}
.net-hero__badge{display:inline-block;padding:5px 10px;border-radius:7px;background:var(--product-hero-badge-bg);color:var(--product-hero-badge-text);font-size:13px;font-weight:800;margin-bottom:13px}
.net-hero h1{font-family:var(--net-font-fa);font-size:clamp(52px,4.7vw,68px);line-height:1.02;margin:13px 0 5px;font-weight:900;letter-spacing:-.045em;direction:ltr;text-align:right;color:var(--product-hero-ink)}
.net-hero__intro{margin:0;max-width:500px;font-size:17px;line-height:1.85;font-weight:520;color:var(--product-hero-text)}
.net-hero__actions{display:flex;gap:14px;margin-top:64px}
.net-button{min-height:54px;display:inline-flex;align-items:center;justify-content:center;gap:9px;border-radius:8px;padding:0 26px;font-weight:800;font-size:14px;text-decoration:none;transition:.18s ease}
.net-button--primary{background:#1174f6;color:#fff;border:1.5px solid #2382ff;box-shadow:0 8px 18px rgba(13,104,235,.22)}
.net-button--primary:hover{background:#0d5aa5}
/* section 1 */
.net-topology{display:grid;grid-template-columns:1.1fr .85fr .8fr 1.35fr;gap:18px;align-items:center;direction:ltr;position:relative;min-height:260px}.net-node{text-align:center;position:relative;z-index:2;direction:rtl}.net-node__media{display:grid;place-items:center;min-height:150px}.net-node--panel img{width:145px;border-radius:8px}.net-node--module img{width:78px}.net-node__title{margin-top:5px;font-size:15px;font-weight:800;color:var(--net-ink);direction:ltr}.net-node__sub{font-size:13px;color:var(--net-muted);line-height:1.6}.net-transport__icon{width:102px;height:102px;border-radius:50%;border:1px solid var(--net-blue-line);display:grid;place-items:center;margin:0 auto 8px;background:var(--net-white);color:var(--net-blue-dark)}.net-transport__icon svg{width:70px;height:70px;fill:none;stroke:currentColor;stroke-width:1.5}.net-destinations{display:grid;gap:12px;direction:rtl}.net-destination{display:grid;grid-template-columns:58px 1fr;gap:14px;align-items:center;box-shadow:0 6px 18px rgba(16,38,74,.07);background:var(--net-white);border-radius:12px;padding:14px 16px;text-align:right}.net-destination svg{width:48px;height:48px;fill:none;stroke:currentColor;stroke-width:1.5}.net-destination--web svg{color:var(--net-blue)}.net-destination--monitor svg{color:var(--net-neutral)}.net-destination__title{font-size:15px;font-weight:800;color:var(--net-ink);margin-bottom:4px}.net-destination--monitor .net-destination__title{color:var(--net-orange-dark)}.net-destination__text{font-size:12.5px;line-height:1.75;color:var(--product-hero-text)}.net-security-badge{display:inline-flex;margin-top:6px;padding:2px 8px;border-radius:99px;background:var(--net-green-soft);color:var(--net-green-dark);font-size:10px;direction:ltr}.net-connectors{position:absolute;inset:0;width:100%;height:100%;z-index:1;pointer-events:none}.net-connectors path{fill:none;stroke-width:1.8}.net-connector--green{stroke:var(--net-green);color:var(--net-green)}.net-connector--blue{stroke:var(--net-brand);color:var(--net-brand)}.net-connector--orange{stroke:var(--net-orange);color:var(--net-orange)}.net-parallel-note{margin-top:14px;width:min(440px,100%);border-radius:10px;box-shadow:0 6px 18px rgba(16,38,74,.06);padding:10px 16px;display:grid;grid-template-columns:auto 1fr;gap:18px;align-items:center;background:var(--net-surface-blue);direction:rtl}.net-parallel-icons{display:flex;align-items:center;gap:11px;color:var(--net-blue-dark);direction:ltr}.net-parallel-icons svg{width:29px;height:29px;fill:none;stroke:currentColor;stroke-width:1.55}.net-parallel-note strong{font-size:13px;color:var(--net-blue-ink)}.net-parallel-note p{font-size:12px;line-height:1.75;margin:2px 0 0;color:var(--net-muted)}
/* section 2 */
.net-webserver{display:grid;grid-template-columns:1.45fr .9fr;gap:42px;align-items:center}.net-screenshot-wrap{margin:0;position:relative}.net-screenshot-frame{background:var(--net-white);padding:8px;border-radius:3px;box-shadow:0 10px 28px rgba(8,35,66,.1);overflow:hidden}.net-screenshot-frame img{width:100%;height:auto}.net-inline-note{width:80%;margin:-1px auto 0;background:var(--net-blue-soft);border-radius:0 0 8px 8px;padding:9px 18px;display:flex;align-items:center;justify-content:center;gap:9px;color:var(--net-blue-ink);font-size:12px;line-height:1.6}.net-inline-note svg{width:23px;height:23px;fill:none;stroke:currentColor;stroke-width:1.6;flex:0 0 auto}.net-feature-list{display:grid;gap:24px}.net-feature{display:grid;grid-template-columns:62px 1fr;gap:16px;align-items:center}.net-feature__icon{width:58px;height:58px;border:1px solid currentColor;border-radius:50%;display:grid;place-items:center}.net-feature__icon svg{width:33px;height:33px;fill:none;stroke:currentColor;stroke-width:1.55;stroke-linecap:round;stroke-linejoin:round}.net-feature--green{color:var(--net-green)}.net-feature--orange{color:var(--net-orange)}.net-feature--blue{color:var(--net-blue)}.net-feature__title{font-size:16px;font-weight:800;margin:0 0 4px;color:currentColor}.net-feature__text{margin:0;color:var(--product-hero-text);font-size:13px;line-height:1.85}.net-feature[data-status="pending"] .net-feature__title::after,.net-fact[data-status="pending"] .net-fact__label::after{content:"";display:inline-block;width:6px;height:6px;border-radius:50%;background:var(--net-green-line);margin-inline-start:7px;vertical-align:middle}
/* section 3 */
.net-fit-grid{display:grid;grid-template-columns:repeat(4,1fr);border-top:1px solid var(--net-line);border-bottom:1px solid var(--net-line)}.net-fit{padding:16px 20px;min-height:126px;border-inline-start:1px solid var(--net-line);position:relative}.net-fit:first-child{border-inline-start:0}.net-fit__index{font-size:13px;font-weight:800;direction:ltr;color:var(--net-blue-muted);margin-bottom:4px}.net-fit__title{font-size:15px;font-weight:850;margin:0 0 5px;color:var(--net-ink)}.net-fit__text{font-size:12.5px;line-height:1.8;color:var(--product-hero-text);margin:0}.net-fit--green .net-fit__title{color:var(--net-green-dark)}.net-fit--orange .net-fit__title{color:var(--net-orange-dark)}.net-fit--blue .net-fit__title{color:var(--net-blue-dark)}.net-fit--note{background:linear-gradient(90deg,var(--net-surface-muted),var(--net-white))}.net-fit--note .net-fit__title{color:var(--net-neutral)}.net-facts{margin-top:18px;display:grid;grid-template-columns:repeat(7,1fr);border-radius:11px;box-shadow:0 6px 20px rgba(16,38,74,.07);background:var(--net-white);overflow:hidden}.net-fact{min-height:76px;display:flex;gap:9px;align-items:center;justify-content:center;padding:10px 9px;border-inline-start:1px solid var(--net-line);text-align:center}.net-fact:first-child{border-inline-start:0}.net-fact svg{width:24px;height:24px;flex:0 0 auto;fill:none;stroke:var(--net-blue-ink);stroke-width:1.55}.net-fact__label{display:block;font-size:12.5px;font-weight:800;color:var(--net-ink);direction:ltr}.net-fact__text{display:block;font-size:10.5px;line-height:1.55;color:var(--net-muted);margin-top:2px}.net-supporting-facts{margin:12px auto 0;max-width:730px;display:grid;grid-template-columns:1fr 1fr;border-radius:10px;box-shadow:0 6px 20px rgba(16,38,74,.07);background:var(--net-white);overflow:hidden}.net-support-fact{display:grid;grid-template-columns:38px 1fr;gap:12px;align-items:center;padding:12px 18px}.net-support-fact+ .net-support-fact{border-inline-start:1px solid var(--net-line-soft)}.net-support-fact svg{width:32px;height:32px;fill:none;stroke:var(--product-hero-text);stroke-width:1.45}.net-support-fact strong{display:block;color:var(--net-blue-ink);font-size:12.5px}.net-support-fact span{font-size:11px;color:var(--net-muted);line-height:1.6}
/* resources */
.net-resources{padding:10px 0 32px}.net-resources__grid{display:grid;grid-template-columns:4fr 5fr;gap:14px}
.net-page .gs-final-cta{margin-top:clamp(40px,5.2vw,88px)}.net-resource-block{border-radius:14px;box-shadow:0 6px 20px rgba(16,38,74,.07);background:var(--net-surface-soft);padding:15px 18px;min-height:154px}.net-resource-block h2{margin:0 0 12px;color:var(--net-ink);font-size:14px;font-weight:850}.net-docs{display:grid;grid-template-columns:repeat(5,1fr);gap:7px}.net-doc{min-height:98px;border-radius:8px;box-shadow:0 4px 14px rgba(24,66,125,.08);background:var(--net-white);padding:10px 7px;display:flex;flex-direction:column;align-items:center;justify-content:center;text-align:center;color:var(--product-hero-text)}.net-doc svg{width:24px;height:24px;fill:none;stroke:var(--net-blue-dark);stroke-width:1.6;margin-bottom:6px}.net-doc span{font-size:10px;line-height:1.55}.net-doc small{font-size:9px;color:var(--net-arrow-muted);margin-top:3px}.net-related{display:grid;grid-template-columns:repeat(4,1fr);gap:9px}.net-related-card{min-width:0;text-align:center}.net-related-card__media{height:78px;border-radius:7px;background:var(--net-white);box-shadow:0 4px 14px rgba(24,66,125,.08);display:grid;place-items:center;overflow:hidden}.net-related-card img{max-height:68px;width:auto;max-width:88%;object-fit:contain}.net-related-card strong{display:block;margin-top:6px;font-size:10.5px;direction:ltr;color:var(--net-ink)}.net-related-card span{font-size:9.5px;color:var(--net-muted-soft)}.net-cta{border-radius:14px;background:linear-gradient(145deg,var(--net-cta-start),var(--net-cta-end));color:var(--net-white);padding:22px 24px;min-height:154px;display:flex;flex-direction:column;justify-content:center}.net-cta h2{font-size:18px;line-height:1.65;margin:0 0 6px}.net-cta p{font-size:12px;line-height:1.8;color:var(--net-line-soft);margin:0 0 13px}.net-cta__button{min-height:46px;border-radius:7px;background:var(--net-white);color:var(--net-blue-ink);display:flex;align-items:center;justify-content:center;font-size:12px;font-weight:850}.net-cta__button:focus-visible{outline:none;box-shadow:var(--net-focus)}
/* rtl/ltr helpers */
.net-ltr{direction:ltr;unicode-bidi:isolate}.net-pending{opacity:.8}
@media(max-width:1180px){:root{--net-shell:1120px;--net-gutter:30px}.net-hero h1{font-size:54px}.net-hero__intro{font-size:16px;max-width:460px}.net-hero__actions{margin-top:44px}.net-topology{grid-template-columns:1.05fr .75fr .78fr 1.42fr}.net-facts{grid-template-columns:repeat(4,1fr)}.net-fact:nth-child(5){border-inline-start:0}.net-resources__grid{grid-template-columns:1fr 1.2fr}.net-cta{grid-column:1/-1;min-height:130px}.net-docs{grid-template-columns:repeat(5,1fr)}}
@media(max-width:1023px){:root{--net-gutter:26px}.net-hero{min-height:460px}.net-hero__media{width:52%}.net-hero__media img{height:98%;left:9vw}.net-hero h1{font-size:46px}.net-hero__intro{font-size:15px}.net-topology{grid-template-columns:1fr 1fr 1fr;grid-template-areas:"panel module network" "dest dest dest";gap:18px}.net-node--panel{grid-area:panel}.net-node--module{grid-area:module}.net-transport{grid-area:network}.net-destinations{grid-area:dest;grid-template-columns:1fr 1fr}.net-connectors{display:none}.net-parallel-note{margin-inline:auto}.net-webserver{grid-template-columns:1fr}.net-feature-list{grid-template-columns:repeat(3,1fr);gap:14px}.net-feature{display:block;text-align:center;padding:12px}.net-feature__icon{margin:0 auto 10px}.net-fit-grid{grid-template-columns:1fr 1fr}.net-fit:nth-child(3){border-inline-start:0;border-top:1px solid var(--net-line)}.net-fit:nth-child(4){border-top:1px solid var(--net-line)}.net-facts{grid-template-columns:repeat(3,1fr)}.net-fact:nth-child(4),.net-fact:nth-child(7){border-inline-start:0}.net-resources__grid{grid-template-columns:1fr}.net-cta{grid-column:auto}.net-resource-block,.net-cta{min-height:unset}}
@media(max-width:767px){:root{--net-gutter:22px}.net-section{padding:40px 0}.net-section__surface{padding:20px 16px;border-radius:14px}.net-section__head{gap:12px;margin-bottom:18px}.net-section-index{width:44px;height:44px;font-size:20px}.net-section__title{font-size:23px;line-height:1.55}.net-section__lead{font-size:13px}.net-hero{display:flex;flex-direction:column;min-height:0;padding-top:24px;margin-bottom:72px}.net-hero .net-breadcrumb{order:0;margin-bottom:14px}.net-hero__copy{grid-column:auto;width:100%;max-width:760px;order:1}.net-hero__badge{margin-bottom:8px}.net-hero h1{font-size:37px;margin:11px 0 5px}.net-hero__intro{font-size:14px;line-height:1.7}.net-hero__media{position:relative;left:auto;top:auto;bottom:auto;width:100%;height:310px;order:2;margin-top:8px}.net-hero__media img{position:relative;left:auto;top:auto;height:auto;width:min(70%,300px);max-height:300px;margin-inline:auto}.net-hero__actions{order:3;margin-top:22px;width:100%;display:grid;grid-template-columns:1fr}.net-button{width:100%}.net-topology{display:flex;flex-direction:column;gap:8px;min-height:0}.net-node__media{min-height:auto}.net-node--panel img{width:118px}.net-node--module img{width:66px}.net-transport__icon{width:82px;height:82px}.net-transport__icon svg{width:56px;height:56px}.net-topology > *:not(:last-child)::after{content:"↓";display:block;font-size:24px;line-height:1;color:var(--net-arrow-muted);margin:6px auto}.net-destinations{width:100%;display:grid;grid-template-columns:1fr;gap:10px}.net-destinations::after{display:none!important}.net-destination{grid-template-columns:48px 1fr;padding:12px 13px}.net-destination svg{width:40px;height:40px}.net-parallel-note{grid-template-columns:1fr;text-align:center}.net-parallel-icons{justify-content:center}.net-webserver{gap:20px}.net-screenshot-frame{height:240px;padding:5px;overflow:hidden}.net-screenshot-frame img{width:165%;max-width:none;transform:translateX(18%);transform-origin:center top}.net-inline-note{width:94%;font-size:11px;padding:8px 10px}.net-feature-list{grid-template-columns:1fr;gap:18px}.net-feature{display:grid;grid-template-columns:52px 1fr;text-align:right;padding:0}.net-feature__icon{width:50px;height:50px;margin:0}.net-feature__icon svg{width:29px;height:29px}.net-feature__title{font-size:15px}.net-feature__text{font-size:12.5px}.net-fit-grid{display:block;border-bottom:0}.net-fit{border-inline-start:0!important;border-top:1px solid var(--net-line)!important;min-height:0;padding:14px 6px}.net-fit:first-child{border-top:0!important}.net-fit--note{margin-top:5px;padding:14px;background:var(--net-surface-muted);border-radius:8px}.net-facts{grid-template-columns:1fr 1fr;border-radius:10px}.net-fact{min-height:72px;border-top:1px solid var(--net-line-soft)}.net-fact:nth-child(-n+2){border-top:0}.net-fact:nth-child(odd){border-inline-start:0}.net-fact:nth-child(even){border-inline-start:1px solid var(--net-line-soft)}.net-fact__label{font-size:11.5px}.net-fact__text{font-size:10px}.net-supporting-facts{grid-template-columns:1fr;max-width:none}.net-support-fact+ .net-support-fact{border-inline-start:0;border-top:1px solid var(--net-line-soft)}.net-resources{padding-top:4px}.net-resource-block{padding:14px}.net-docs{grid-template-columns:1fr}.net-doc{min-height:58px;display:grid;grid-template-columns:34px 1fr auto;text-align:right;gap:8px;padding:8px 10px}.net-doc svg{margin:0}.net-doc small{margin:0}.net-related{display:flex;overflow-x:auto;scroll-snap-type:x mandatory;gap:11px;padding-bottom:5px;direction:rtl}.net-related-card{flex:0 0 74vw;scroll-snap-align:start}.net-related-card__media{height:116px}.net-related-card img{max-height:100px}.net-related-card strong{font-size:12px}.net-cta{padding:20px}.net-cta h2{font-size:18px}.net-cta p{font-size:12.5px}}
@media(max-width:380px){.net-hero h1{font-size:33px}.net-facts{grid-template-columns:1fr}.net-fact,.net-fact:nth-child(even),.net-fact:nth-child(odd){border-inline-start:0;border-top:1px solid var(--net-line-soft)}.net-fact:first-child{border-top:0}.net-screenshot-frame{height:220px}.net-related-card{flex-basis:80vw}}
@media(prefers-reduced-motion:reduce){.net-page *{scroll-behavior:auto!important;transition:none!important}}
/* v0.1 fidelity delta */
.net-section__title-wrap{margin-inline-start:0;flex:1}.net-section-index{order:-1}
.net-webserver{direction:ltr}.net-feature-list{direction:rtl}
.net-resources__grid{direction:ltr}.net-resource-block,.net-cta{direction:rtl}
@media(max-width:767px){.net-webserver{direction:rtl}.net-resources__grid{direction:rtl}.net-section-index{order:-1}}

/* Dynamic topology paths: static coordinates are replaced at runtime. */
.net-connectors path{vector-effect:non-scaling-stroke}

/* Step 7 responsive clarity: keep semantic continuity when desktop SVG connectors are removed. */
@media (min-width:768px) and (max-width:1023px){
  .net-node--panel::after,
  .net-node--module::after{
    content:"→";
    position:absolute;
    top:46%;
    inset-inline-end:-22px;
    transform:translateY(-50%);
    color:var(--net-arrow-muted);
    font:700 22px/1 sans-serif;
    direction:ltr;
  }
  .net-transport::after{
    content:"↓";
    display:block;
    color:var(--net-arrow-muted);
    font:700 22px/1 sans-serif;
    margin:8px auto -4px;
  }
}

/* Step 7 hidden-overflow fix: allow the related-products rail to size to its grid track,
   then overflow internally instead of forcing a clipped min-content width. */
.net-resources__grid,.net-resource-block,.net-related{min-width:0}
@media(max-width:767px){
  .net-related{width:100%;max-width:100%}
}

/* Step 7 tablet topology: use the same live SVG foundation in hybrid layout. */
@media (min-width:768px) and (max-width:1023px){
  .net-connectors{display:block}
  .net-node--panel::after,.net-node--module::after,.net-transport::after{content:none!important;display:none!important}
}

.net-related-card:focus-visible,.net-cta__button:focus-visible,.net-related:focus-visible{outline:none;box-shadow:var(--net-focus);border-radius:8px}
