.page-products{
  --pr-line: var(--c-rail);
  --pr-gap: 16px;
  --pr-soft: rgba(92,225,212,.08);
  background: var(--c-ink);
  color: var(--c-mist);
  font-family: var(--font-body);
  overflow-x: hidden;
}
.page-products h1,
.page-products h2,
.page-products h3,
.page-products h4{ margin:0; font-family:var(--font-display); }
.page-products p{ margin:0; }
.page-products ul,
.page-products ol{ margin:0; padding:0; list-style:none; }
.page-products a{ color:inherit; }
.page-products [id]{ scroll-margin-top:96px; }

.page-products .breadcrumbs{
  display:flex; align-items:center; gap:8px;
  padding:18px 0 4px;
  font-family:var(--font-mono); font-size:12px;
  letter-spacing:.08em; color:var(--c-mist);
}
.page-products .crumb{ color:var(--c-mist); text-decoration:none; opacity:.7; }
.page-products .crumb[aria-current]{ color:var(--c-cyan); opacity:1; }

/* ---------- hero ---------- */
.page-products .pr-hero{
  position:relative;
  padding:28px 0 56px;
  overflow:hidden;
}
.page-products .pr-hero::before{
  content:"";
  position:absolute;
  top:-18%; left:-14%; width:78%; height:120%;
  background:linear-gradient(145deg,var(--c-orbit),transparent 72%);
  clip-path:polygon(0 0,100% 0,74% 100%,0 86%);
  pointer-events:none;
}
.page-products .pr-hero__inner{
  position:relative;
  display:grid; gap:32px;
  grid-template-columns:1fr;
}
.page-products .pr-hero__kicker{
  display:flex; flex-wrap:wrap; align-items:center; gap:10px;
  margin-bottom:18px;
}
.page-products .pr-hero__kicker-text{
  font-family:var(--font-mono); font-size:11.5px;
  letter-spacing:.1em; color:var(--c-mist); opacity:.72;
}
.page-products .pr-hero h1{
  font-size:clamp(34px,7.2vw,68px);
  font-weight:900; line-height:1.06; letter-spacing:-.02em;
  color:var(--c-paper);
}
.page-products .pr-hero__h1-sub{
  display:block;
  margin-top:12px;
  font-size:clamp(15px,2.6vw,21px);
  font-weight:500; letter-spacing:0;
  color:var(--c-cyan);
}
.page-products .pr-hero__lede{
  margin-top:22px;
  max-width:52ch;
  font-size:15.5px; line-height:1.78;
  color:var(--c-mist);
}
.page-products .pr-hero__actions{
  display:flex; flex-wrap:wrap; gap:10px;
  margin-top:26px;
}
.page-products .pr-hero__stats{
  display:grid; grid-template-columns:repeat(2,minmax(0,1fr));
  gap:12px; margin:30px 0 0;
  padding-top:20px; border-top:1px solid var(--pr-line);
}
.page-products .pr-hero__stat dt{
  font-size:11.5px; letter-spacing:.1em; color:var(--c-mist); opacity:.7;
}
.page-products .pr-hero__stat dd{
  margin:6px 0 0;
  font-family:var(--font-mono); font-size:26px;
  font-variant-numeric:tabular-nums; color:var(--c-paper);
}
.page-products .pr-hero__media{
  margin:0; position:relative;
}
.page-products .pr-hero__media img{
  display:block; width:100%; height:auto;
  border:1px solid var(--pr-line);
  clip-path:polygon(0 0,100% 0,100% 86%,86% 100%,0 100%);
  background:var(--c-orbit);
}
.page-products .pr-hero__media::after{
  content:""; position:absolute; top:0; right:0;
  width:56px; height:56px;
  border-top:2px solid var(--c-cyan); border-right:2px solid var(--c-cyan);
}
.page-products .pr-hero__cap{
  margin-top:10px;
  font-family:var(--font-mono); font-size:11.5px;
  letter-spacing:.06em; color:var(--c-mist); opacity:.65;
}

/* ---------- section base ---------- */
.page-products .pr-sec{ padding:52px 0; }
.page-products .pr-sec--tight{ padding:44px 0 60px; }
.page-products .pr-sec__head{ max-width:760px; }
.page-products .pr-sec__index{
  font-family:var(--font-mono); font-size:11.5px;
  letter-spacing:.16em; color:var(--c-cyan);
  margin-bottom:12px;
}
.page-products .pr-sec__title{
  font-size:clamp(23px,4.6vw,38px);
  font-weight:900; letter-spacing:-.01em; line-height:1.18;
  color:var(--c-paper);
}
.page-products .pr-sec__lede{
  margin-top:14px; max-width:64ch;
  font-size:15px; line-height:1.78; color:var(--c-mist);
}
.page-products .pr-band--paper{
  background:var(--c-paper);
  color:var(--c-black);
}
.page-products .pr-band--paper .pr-sec__title{ color:var(--c-black); }
.page-products .pr-band--paper .pr-sec__index{ color:var(--c-rail); }
.page-products .pr-band--paper .pr-sec__lede{ color:var(--c-rail); }

/* ---------- chips ---------- */
.page-products .pr-chips{
  display:flex; flex-wrap:wrap; gap:8px;
  margin:24px 0 22px;
}
.page-products .pr-chip{
  display:inline-block;
  padding:8px 13px;
  font-size:12px; letter-spacing:.06em;
  text-decoration:none;
  border:1px solid var(--pr-line);
  color:var(--c-mist);
  background:transparent;
  transition:border-color .2s var(--ease), color .2s var(--ease), background .2s var(--ease);
}
.page-products .pr-chip:hover,
.page-products .pr-chip:focus-visible{
  border-color:var(--c-cyan); color:var(--c-ink);
  background:var(--c-cyan);
}
.page-products .pr-chip--all{
  border-style:dashed; color:var(--c-cyan);
}

/* ---------- groups ---------- */
.page-products .pr-groups{
  display:grid; gap:var(--pr-gap);
  grid-template-columns:1fr;
}
.page-products .pr-group{
  position:relative;
  padding:18px 18px 8px;
  background:var(--c-orbit);
  border:1px solid var(--pr-line);
  transition:transform .25s var(--ease), border-color .25s var(--ease);
}
.page-products .pr-group:hover{ transform:translateY(-4px); border-color:var(--c-cyan); }
.page-products .pr-group::before{
  content:""; position:absolute; top:-1px; left:-1px; right:-1px; height:3px;
  background:var(--c-cyan);
}
.page-products .pr-group--b::before{ background:var(--c-moss); }
.page-products .pr-group--c::before{ background:var(--c-signal); }
.page-products .pr-group--d::before{ background:var(--c-sand); }
.page-products .pr-group__head{
  display:flex; align-items:center; justify-content:space-between; gap:12px;
  margin-bottom:6px;
}
.page-products .pr-group__head h3{
  font-size:19px; font-weight:800; color:var(--c-paper);
  letter-spacing:-.01em;
}
.page-products .pr-item{
  display:grid; grid-template-columns:44px minmax(0,1fr); gap:10px;
  padding:12px 0;
  border-top:1px solid var(--pr-line);
}
.page-products .pr-item:first-child{ border-top:0; }
.page-products .pr-item__code{
  font-family:var(--font-mono); font-size:11.5px;
  letter-spacing:.04em; color:var(--c-cyan); padding-top:2px;
}
.page-products .pr-item h4{
  font-size:14.5px; font-weight:700; color:var(--c-paper);
  line-height:1.45;
}
.page-products .pr-item p{
  margin-top:5px;
  font-size:13px; line-height:1.7; color:var(--c-mist); opacity:.86;
}

/* ---------- plans ---------- */
.page-products .pr-plans{
  display:grid; gap:14px; grid-template-columns:1fr;
  margin-top:26px;
}
.page-products .pr-plan{
  padding:20px;
  background:rgba(255,255,255,.62);
  border:1px solid var(--c-rail);
  box-shadow:6px 6px 0 rgba(11,15,20,.07);
}
.page-products .pr-plan--featured{
  border-color:var(--c-signal);
  box-shadow:8px 8px 0 rgba(255,122,61,.18);
}
.page-products .pr-plan__label{
  font-family:var(--font-mono); font-size:11.5px;
  letter-spacing:.12em; color:var(--c-rail);
  min-height:22px;
}
.page-products .pr-plan__num{
  display:flex; align-items:baseline; gap:8px;
  margin:12px 0 10px;
  color:var(--c-black);
}
.page-products .pr-plan__big{
  font-family:var(--font-mono); font-size:52px;
  font-weight:700; line-height:1; font-variant-numeric:tabular-nums;
}
.page-products .pr-plan__unit{
  font-size:13px; letter-spacing:.08em; color:var(--c-rail);
}
.page-products .pr-plan__desc{
  font-size:13.5px; line-height:1.72; color:#22303f;
}
.page-products .pr-plan__more{
  margin-top:14px; padding-top:12px;
  border-top:1px dashed var(--c-rail);
}
.page-products .pr-plan__more summary{
  cursor:pointer; font-size:12.5px; letter-spacing:.04em;
  color:var(--c-rail); font-weight:600;
  list-style:none;
}
.page-products .pr-plan__more summary::-webkit-details-marker{ display:none; }
.page-products .pr-plan__more summary::after{ content:" +"; font-family:var(--font-mono); }
.page-products .pr-plan__more[open] summary::after{ content:" −"; }
.page-products .pr-plan__more ul{
  margin-top:10px;
  display:grid; gap:8px;
}
.page-products .pr-plan__more li{
  position:relative;
  padding-left:14px;
  font-size:12.5px; line-height:1.65; color:#22303f;
}
.page-products .pr-plan__more li::before{
  content:""; position:absolute; left:0; top:8px;
  width:6px; height:6px;
  background:var(--c-signal); transform:rotate(45deg);
}

.page-products .pr-table-wrap{
  margin-top:26px;
  overflow-x:auto;
  border:1px solid var(--c-rail);
  background:rgba(255,255,255,.45);
}
.page-products .pr-table{
  width:100%; min-width:640px;
  border-collapse:collapse;
  font-size:13px;
}
.page-products .pr-table caption{
  padding:12px 14px;
  text-align:left;
  font-family:var(--font-mono); font-size:11.5px;
  letter-spacing:.1em; color:var(--c-rail);
  border-bottom:1px solid var(--c-rail);
}
.page-products .pr-table th,
.page-products .pr-table td{
  padding:11px 14px;
  text-align:left;
  border-bottom:1px solid rgba(43,69,95,.28);
  border-right:1px solid rgba(43,69,95,.18);
  white-space:nowrap;
}
.page-products .pr-table thead th{
  background:var(--c-ink); color:var(--c-paper);
  font-family:var(--font-mono); font-size:11.5px;
  letter-spacing:.08em; font-weight:500;
}
.page-products .pr-table tbody th{
  font-weight:600; color:var(--c-black);
}
.page-products .pr-table tbody td{
  font-family:var(--font-mono); font-size:12.5px;
  font-variant-numeric:tabular-nums; color:#22303f;
}
.page-products .pr-table tbody tr:nth-child(even){ background:rgba(43,69,95,.05); }

.page-products .pr-note{
  display:flex; flex-wrap:wrap; align-items:center; gap:16px;
  justify-content:space-between;
  margin-top:22px; padding:18px;
  border:1px solid var(--c-rail);
  border-left:4px solid var(--c-cyan);
  background:rgba(255,255,255,.5);
}
.page-products .pr-note p{
  flex:1 1 320px;
  font-size:13px; line-height:1.75; color:#22303f;
}
.page-products .pr-link{
  color:var(--c-rail); text-underline-offset:3px;
  font-weight:600;
}
.page-products .pr-link--ink{ color:var(--c-black); }
.page-products .pr-link:hover{ color:var(--c-signal); }

/* ---------- batch timeline ---------- */
.page-products .pr-track{
  margin-top:26px;
  padding:18px;
  border:1px solid var(--pr-line);
  background:linear-gradient(180deg,rgba(14,34,56,.9),rgba(7,17,31,.9));
}
.page-products .pr-track__svg{
  display:block; width:100%; height:auto;
}
.page-products .pr-track__legend{
  display:flex; flex-wrap:wrap; gap:16px;
  margin-top:14px;
  font-family:var(--font-mono); font-size:11.5px;
  letter-spacing:.06em;
}
.page-products .pr-track__key{ display:inline-flex; align-items:center; gap:8px; }
.page-products .pr-track__key::before{
  content:""; width:22px; height:2px; display:inline-block;
}
.page-products .pr-track__key--cyan{ color:var(--c-cyan); }
.page-products .pr-track__key--cyan::before{ background:var(--c-cyan); }
.page-products .pr-track__key--signal{ color:var(--c-signal); }
.page-products .pr-track__key--signal::before{
  background:repeating-linear-gradient(90deg,var(--c-signal) 0 5px,transparent 5px 9px);
}

.page-products .pr-track-grid{
  display:grid; gap:14px; grid-template-columns:1fr;
  margin-top:18px;
}
.page-products .pr-track-card{
  padding:18px;
  border:1px solid var(--pr-line);
  border-left:3px solid var(--c-cyan);
  background:var(--c-orbit);
}
.page-products .pr-track-card--signal{ border-left-color:var(--c-signal); }
.page-products .pr-track-card h3{
  font-size:16px; font-weight:800; color:var(--c-paper);
  margin-bottom:8px;
}
.page-products .pr-track-card p{
  font-size:13.5px; line-height:1.75; color:var(--c-mist);
}

.page-products .pr-figure{
  margin:24px 0 0;
  border:1px solid var(--pr-line);
  padding:10px;
  background:rgba(14,34,56,.6);
}
.page-products .pr-figure img{
  display:block; width:100%; max-width:100%; height:auto;
  object-fit:cover;
}
.page-products .pr-figure figcaption{
  margin-top:10px;
  font-family:var(--font-mono); font-size:11.5px;
  letter-spacing:.05em; color:var(--c-mist); opacity:.68;
}
.page-products .pr-figure--right{ max-width:100%; }
.page-products .pr-figure--tight{ margin-top:22px; }

/* ---------- devices ---------- */
.page-products .pr-sec--orbit{
  background:var(--c-orbit);
  border-top:1px solid var(--pr-line);
  border-bottom:1px solid var(--pr-line);
}
.page-products .pr-device-layout{
  display:grid; gap:20px; grid-template-columns:1fr;
  margin-top:26px;
}
.page-products .pr-matrix{
  padding:18px;
  border:1px solid var(--pr-line);
  background:var(--c-ink);
}
.page-products .pr-matrix__label{
  font-family:var(--font-mono); font-size:11.5px;
  letter-spacing:.1em; color:var(--c-cyan);
  margin-bottom:10px;
}
.page-products .pr-matrix__dots{
  display:grid;
  grid-template-columns:repeat(6,minmax(0,1fr));
  gap:6px;
  margin-bottom:18px;
}
.page-products .pr-matrix__dots span{
  display:block; aspect-ratio:1/1;
  border:1px solid var(--c-rail);
  background:rgba(92,225,212,.16);
  transition:background .2s var(--ease), border-color .2s var(--ease);
}
.page-products .pr-matrix__dots span:hover{
  background:var(--c-cyan); border-color:var(--c-cyan);
}
.page-products .pr-matrix__browsers{
  display:flex; flex-wrap:wrap; gap:6px;
}
.page-products .pr-matrix__browsers li{
  padding:5px 9px;
  font-size:11.5px; letter-spacing:.03em;
  color:var(--c-mist);
  border:1px solid var(--c-rail);
  background:rgba(43,69,95,.34);
}
.page-products .pr-scenes{
  display:grid; gap:12px; grid-template-columns:1fr;
}
.page-products .pr-scene{
  padding:16px 18px;
  border:1px solid var(--pr-line);
  background:rgba(7,17,31,.55);
}
.page-products .pr-scene h3{
  display:flex; align-items:baseline; gap:10px;
  font-size:16px; font-weight:800; color:var(--c-paper);
  margin-bottom:7px;
}
.page-products .pr-scene__idx{
  font-family:var(--font-mono); font-size:12px;
  color:var(--c-signal); letter-spacing:.06em;
}
.page-products .pr-scene p{
  font-size:13.5px; line-height:1.75; color:var(--c-mist);
}

/* ---------- checklist ---------- */
.page-products .pr-checklist{
  display:grid; gap:14px; grid-template-columns:1fr;
  margin-top:26px;
}
.page-products .pr-check{
  padding:18px;
  background:rgba(255,255,255,.62);
  border:1px solid var(--c-rail);
  position:relative;
}
.page-products .pr-check::before{
  content:""; position:absolute; left:-1px; top:-1px; bottom:-1px; width:4px;
  background:var(--c-rail);
}
.page-products .pr-check__num{
  display:inline-block;
  font-family:var(--font-mono); font-size:12px;
  letter-spacing:.1em; color:var(--c-signal);
  margin-bottom:8px;
}
.page-products .pr-check h3{
  font-size:16px; font-weight:800; color:var(--c-black);
  margin-bottom:8px;
}
.page-products .pr-check p{
  font-size:13.5px; line-height:1.75; color:#22303f;
}
.page-products .pr-checklist__foot{
  margin-top:20px;
  font-size:13px; line-height:1.8; color:var(--c-rail);
  max-width:70ch;
}

/* ---------- version strip ---------- */
.page-products .pr-strip{
  display:grid; gap:24px; grid-template-columns:1fr;
  padding:22px;
  border:1px solid var(--pr-line);
  border-top:3px solid var(--c-cyan);
  background:linear-gradient(135deg,rgba(14,34,56,.96),rgba(7,17,31,.96));
}
.page-products .pr-strip__actions{
  display:flex; flex-wrap:wrap; gap:10px;
  margin-top:20px;
}
.page-products .pr-strip__figures{
  display:grid; gap:10px; grid-template-columns:repeat(2,minmax(0,1fr));
  align-content:start;
}
.page-products .pr-figure-box{
  padding:14px;
  border:1px solid var(--pr-line);
  background:rgba(7,17,31,.7);
}
.page-products .pr-figure-box__num{
  display:block;
  font-family:var(--font-mono); font-size:30px;
  font-variant-numeric:tabular-nums; line-height:1;
  color:var(--c-cyan);
}
.page-products .pr-figure-box__lab{
  display:block; margin-top:8px;
  font-size:11.5px; letter-spacing:.05em; color:var(--c-mist); opacity:.8;
}

/* ---------- responsive ---------- */
@media (min-width:600px){
  .page-products .pr-hero__stats{ grid-template-columns:repeat(4,minmax(0,1fr)); }
  .page-products .pr-matrix__dots{ grid-template-columns:repeat(9,minmax(0,1fr)); }
  .page-products .pr-track-grid{ grid-template-columns:repeat(2,minmax(0,1fr)); }
  .page-products .pr-checklist{ grid-template-columns:repeat(2,minmax(0,1fr)); }
  .page-products .pr-scenes{ grid-template-columns:repeat(3,minmax(0,1fr)); }
}

@media (min-width:900px){
  .page-products .pr-hero{ padding:40px 0 72px; }
  .page-products .pr-hero__inner{
    grid-template-columns:1.05fr .95fr;
    align-items:center;
    gap:40px;
  }
  .page-products .pr-hero__media{ margin-top:-16px; }
  .page-products .pr-groups{ grid-template-columns:repeat(12,minmax(0,1fr)); }
  .page-products .pr-group--a{ grid-column:span 5; }
  .page-products .pr-group--b{ grid-column:span 7; }
  .page-products .pr-group--c{ grid-column:span 7; }
  .page-products .pr-group--d{ grid-column:span 5; }
  .page-products .pr-plans{ grid-template-columns:repeat(3,minmax(0,1fr)); align-items:start; }
  .page-products .pr-plan--featured{ transform:translateY(-10px); }
  .page-products .pr-device-layout{ grid-template-columns:1fr 1.15fr; gap:28px; align-items:start; }
  .page-products .pr-strip{ grid-template-columns:1.15fr .85fr; align-items:center; padding:30px; }
  .page-products .pr-strip__figures{ grid-template-columns:repeat(2,minmax(0,1fr)); }
  .page-products .pr-note{ padding:22px 24px; }
  .page-products .pr-sec{ padding:64px 0; }
  .page-products .pr-sec--tight{ padding:52px 0 76px; }
}

@media (min-width:1200px){
  .page-products .pr-hero h1{ font-size:clamp(48px,5vw,72px); }
  .page-products .pr-hero__lede{ font-size:16px; }
  .page-products .pr-group{ padding:22px 22px 10px; }
  .page-products .pr-figure--right{ margin-left:auto; max-width:88%; }
}

@media (prefers-reduced-motion: reduce){
  .page-products .pr-group,
  .page-products .pr-plan,
  .page-products .pr-chip,
  .page-products .pr-matrix__dots span{ transition:none; }
  .page-products .pr-group:hover{ transform:none; }
}
<<<END>>>
