/* 參 服務項目（單 2；award_build/p_service.py）：首屏寬幅圖版（矮版開場，base.css .aw-hero--low）、章（01、02…）、左欄 sticky 章節索引、懸掛縮排條列、章內插圖與八圈圖。
   圖號字（首屏不標號，內文從 FIG. 1 起）由 p_service.py 依頁面順序編；本檔 class 的 3a／3b／3c／3d 只是元件代號（圓圈圖／地球／GUI／方塊圖＋流程圖），與圖號字無關。
   規則同 base.css 檔頭：色只用 token、字重只用已載入樣式（Serif 600／其餘 400）、字級 --fs-*、間距 --s1～--s7；例外就地註明。 */

/* ── 首屏圖版（寬幅、slice 裁切）：節點線條圖＋經緯格線局部（1px 線；格線用次要色、節點用強調色） ───────────────────── */
.p-svc__plate svg * { vector-effect: non-scaling-stroke; }
.p-svc__grat { stroke: var(--fg-2); }
.p-svc__grat > :not(.p-svc__grat-o) { opacity: .45; }   /* 輔助線（經緯線）維持較弱層級；主輪廓（球體外框）與節點線全強度（單 2b 第 5 項） */
.p-svc__nodes { stroke: var(--accent); }
.p-svc__node { fill: var(--accent); }
.p-svc__node-o { stroke-dasharray: 3 3; }

/* ── 內文版面：有章時左欄＝章節索引（第 1–3 欄，sticky）、右側第 4–12 欄＝段號軌＋正文（說明書邊欄改左側） ───── */
@media (min-width: 768px) {
  .p-svc__spec--index > .aw-spec__aside { grid-column: 1 / 4; grid-row: 1; }
  .p-svc__spec--index > .aw-spec__body { grid-column: 4 / 13; grid-row: 1; }
}
/* 章＝子格線（段號軌對齊不斷）：章內段落與標題照 .aw-spec__body 的直屬子元素同規則 */
.p-svc__ch { grid-column: 1 / -1; display: grid; grid-template-columns: subgrid; align-content: start; scroll-margin-top: var(--s2); }
.p-svc__ch > * { grid-column: 3 / 10; }
.p-svc__ch > .aw-para { grid-column: 1 / -1; display: grid; grid-template-columns: subgrid; align-items: baseline; }
.p-svc__ch + .p-svc__ch, .aw-para + .p-svc__ch { margin-top: var(--s6); }
@supports not (grid-template-columns: subgrid) {
  .p-svc__ch { display: block; }
  .p-svc__ch > .aw-para { display: grid; grid-template-columns: minmax(0, 2fr) minmax(0, 7fr); column-gap: 24px; }
}

/* 章首章名列：章號在段號軌欄、章名在正文欄；目標章（:target）＝左側印色短線常駐＋底色短暫一閃（減動態不閃） */
.p-svc__h {
  position: relative; grid-column: 1 / -1; display: grid; grid-template-columns: subgrid; align-items: baseline;
  margin: 0 0 var(--s4); padding-top: var(--s3); border-top: 1px solid var(--line);
}
.p-svc__no { grid-column: 1 / 3; font: 600 var(--fs-h3)/1.3 var(--f-serif); letter-spacing: .12em; color: var(--accent); white-space: nowrap; }
.p-svc__t { grid-column: 3 / 10; display: block; }
/* ≥768：章名與副標左移一欄，左緣＝同章段號 [000x] 左緣（段號軌欄；業主 11/09 19:07:54：大標太靠右）；欄數不變（7 欄）＝行寬與折行不變。
   章號（第 1–2 欄）與章名欄重疊一欄＝兩者明定同一列，否則自動排位會把章名擠到下一列；章號字只佔第 1 欄、與章名不相碰。
   768～1024 章名列改一般區塊（見下「平板」段）：本條在那裡不生效，章名本來就與段號同左緣。
   發明章（墨底段）同樣照辦：它的深色底往外擴、左右內距等量（見「發明章」段），內容框與另兩章重合，章號、章名、段號、正文與另兩章同位置（業主 11/09 20:00:00） */
@media (min-width: 768px) {
  .p-svc__no { grid-row: 1; }
  .p-svc__t { grid-column: 2 / 9; grid-row: 1; }
}
.p-svc__head { display: block; font: 600 var(--fs-h2)/1.3 var(--f-serif); letter-spacing: .06em; }
.p-svc__sub { display: block; margin-top: var(--s1); font: 600 var(--fs-h3)/1.5 var(--f-serif); letter-spacing: .06em; color: var(--fg-2); }
.p-svc__h::before {
  content: ""; position: absolute; left: calc(-1 * var(--s2)); top: var(--s3); bottom: 0; width: 2px; background: transparent;
}
.p-svc__ch:target > .p-svc__h::before { background: var(--cur); }
@media (prefers-reduced-motion: no-preference) {
  .p-svc__ch:target > .p-svc__h { animation: p-svc-flash 1600ms var(--ease-out) both; }
}
@keyframes p-svc-flash {
  from { background: color-mix(in srgb, var(--gold) 22%, transparent); }
  to { background: transparent; }
}
@supports not (grid-template-columns: subgrid) {
  .p-svc__h { display: block; }
  .p-svc__no { display: block; margin-bottom: var(--s1); }
}

/* 懸掛縮排條列：原文編號＝懸掛標記（不改字）；「標籤：」以宋體標出 */
.p-svc__list { list-style: none; margin: 0; padding: 0; }
.p-svc__li { display: grid; grid-template-columns: 2.25em minmax(0, 1fr); column-gap: var(--s1); align-items: baseline; }
.p-svc__li + .p-svc__li { margin-top: var(--s2); }
.p-svc__mk { font-family: var(--f-latin); font-weight: 400; color: var(--accent); white-space: nowrap; }
.p-svc__lk { font-family: var(--f-serif); font-weight: 600; }

/* 左欄章節索引（共用 .aw-index：sticky、site.js 依捲動亮起）。每項底下一條虛線（不主張）；指到、鍵盤焦點、目前章＝由左描成實線（主張；語言同共用主張元件，純 CSS） */
/* 字色（單 3m2 A4）：未選項是資訊性小字，目標 ≥7:1——次要色、強調色各往本文色調（淺底調暗、深底調亮；色票不改）；
   指到／目前章照共用規則轉 --fg＋左側印色線。字級＝正文字級 --fs-body（業主 11/09 15:16:03：選項字不得比內文小；原 max(14px, --fs-small)） */
.p-svc__index a { color: color-mix(in srgb, var(--fg-2) 55%, var(--fg)); font-size: var(--fs-body); }
.p-svc__index .aw-index__no { color: color-mix(in srgb, var(--accent) 60%, var(--fg)); }
/* 兩條線分畫兩個偽元素、同一個位置：實線＝連結的 ::after（寬 0→--aw-u）、虛線＝項目 li 的 ::after（遮罩只露 [u＋2px, 右端]）；
   兩者同一轉場，實線描到哪、那段虛線就看不到，描完只剩實線（業主 11/09 14:59:49；--aw-u 註冊於 base.css 7.1）。文字元素本身不帶背景圖 */
.p-svc__index li { position: relative; }
.p-svc__index a::after, .p-svc__index li::after {
  content: ""; position: absolute; left: var(--s3); right: 0; bottom: 0; height: 1px; pointer-events: none;
  --aw-u: 0%; transition: --aw-u var(--t-state) var(--ease-out);
}
.p-svc__index a::after { background: linear-gradient(var(--accent), var(--accent)) 0 0 / var(--aw-u) 100% no-repeat; }
.p-svc__index li::after {
  background: repeating-linear-gradient(90deg, var(--line-claim) 0 4px, transparent 4px 8px);
  -webkit-mask: linear-gradient(#000, #000) 100% 0 / calc(100% - var(--aw-u) - min(2px, var(--aw-u))) 100% no-repeat;
  mask: linear-gradient(#000, #000) 100% 0 / calc(100% - var(--aw-u) - min(2px, var(--aw-u))) 100% no-repeat;
}
.p-svc__index a:is(:hover, :focus-visible, [aria-current])::after,
.p-svc__index li:has(> a:is(:hover, :focus-visible, [aria-current]))::after { --aw-u: 100%; }

/* ── 八圈圖（原圓圈圖重繪）與後台圖：不屬於任何一章＝全欄雙線（帳冊表頭線）隔開，圖版置中於雙線兩端之間；後台圖為空時整段不輸出，線也不在 ── */
.p-svc__figwrap { grid-column: 1 / -1; display: grid; grid-template-columns: subgrid; margin-top: var(--s6); padding-top: var(--s5); border-top: 3px double var(--line-claim); }
/* 圖版寬照舊（7 欄）、水平置中於雙線兩端之間（第 2–8 欄，左右各空 1 欄；業主 11/09 15:12:53：原靠右對齊） */
.p-svc__figwrap > * { grid-column: 2 / 9; }
@supports not (grid-template-columns: subgrid) { .p-svc__figwrap { display: block; } }
.p-svc__plate3a .aw-plate__art { aspect-ratio: 1 / 1; }
.p-svc__fig3a { stroke: var(--accent); }
.p-svc__fig3a :is(circle, path) { fill: none; vector-effect: non-scaling-stroke; }
.p-svc__core-o { stroke-dasharray: 4 4; }
/* 例外：SVG 內字級以 viewBox 單位計（圖版縮放後實際約 13～27px） */
.p-svc__fig3a text { fill: var(--fg); stroke: none; font-family: var(--f-serif); font-weight: 600; font-size: 22px; letter-spacing: .04em; }
.p-svc__fig3a .p-svc__t-core { font-size: 34px; letter-spacing: .12em; }
/* 衛星圈字不加字距（八項一致）：六字行（可專利性諮詢、常年專利諮詢）兩端離圈邊太近，收掉字距讓出留白；字級、圓的位置與大小不變 */
.p-svc__fig3a .p-svc__sat text { letter-spacing: 0; }
.p-svc__img { aspect-ratio: 4 / 3; border: 1px solid var(--line); }
.p-svc__img img { width: 100%; height: 100%; object-fit: contain; }

/* ── 設計章（單 2c 第一段）：版式與另兩章不同——● 小標放大（一處大字重點，用既有字）、正文收窄、右側圖欄 GUI 圖（sticky） ── */
/* 例外：設計章大字標題展示字級（不在 §2.2 級距） */
.p-svc__ch--design .p-svc__head { font-size: clamp(36px, 3.6vw + 12px, 64px); line-height: 1.2; letter-spacing: .04em; }
.p-svc__fig3c { max-width: 360px; margin: 0 0 var(--s4); }
.p-svc__plate3c .aw-plate__art { aspect-ratio: auto; display: block; place-items: normal; }
.p-svc__phone {
  position: relative; margin: 0 auto; width: 78%; aspect-ratio: 9 / 16; padding: 16% 9% 18%;
  border: 1px dashed var(--fg-2); border-radius: 14% / 8%;                 /* 虛線＝不主張（外框） */
  /* 螢幕框以單格格線撐滿內容區，不用 height: 100%——WebKit 對「高度來自 aspect-ratio」的盒子，子元素百分比高度以外框高（含內距）計，
     螢幕框變高、整支手機被撐高、home 圓圈壓到框（單 3sw）；格線撐滿在兩引擎都等於內容區高 */
  display: grid; grid-template: minmax(0, 1fr) / minmax(0, 1fr);
}
.p-svc__phone-top { position: absolute; left: 38%; right: 38%; top: 6%; border-top: 1px dashed var(--fg-2); }
/* home 圓圈離螢幕虛線框外緣固定約 3px（單 3sw）：外框比例固定時，框外緣到外框內緣的空間（下內距 − 框距 7px − 圓徑）
   約＝內距框高 × 7.356% − 6.65px，減 3px 即為 bottom；手機版固定尺寸另列於下 */
.p-svc__phone-home { position: absolute; left: 50%; bottom: calc(7.356% - 9.65px); width: 10%; aspect-ratio: 1; margin-left: -5%; border: 1px dashed var(--fg-2); border-radius: 50%; }
/* 螢幕內六個圖示：兩欄、右欄比左欄低半格（7 個半格列、每個圖示跨 2 列）——同列兩個圖示不會同時跨入畫面正中線，
   觸控捲動時依「左一、右一、左二…」逐一輪到（site.js：最後跨入中線的那一項是唯一實線） */
.p-svc__screen {
  display: grid; grid-template-columns: repeat(2, minmax(0, 1fr)); grid-template-rows: repeat(7, minmax(0, 1fr));
  gap: 3% 10%; outline: 1px dashed var(--fg-2); outline-offset: 6px;
}
.p-svc__gicon { grid-row: span 2; align-self: center; justify-self: center; width: 100%; aspect-ratio: 1 / 1; padding: 14%;
  display: grid; grid-template: minmax(0, 1fr) / minmax(0, 1fr); }   /* 圖示內容同手機外框：格線撐滿內容區、不用 height: 100%（WebKit 同一差異，單 3sw） */
.p-svc__gicon:nth-child(odd) { grid-column: 1; }
.p-svc__gicon:nth-child(even) { grid-column: 2; }
.p-svc__gicon:nth-child(1) { grid-row: 1 / span 2; } .p-svc__gicon:nth-child(2) { grid-row: 2 / span 2; }
.p-svc__gicon:nth-child(3) { grid-row: 3 / span 2; } .p-svc__gicon:nth-child(4) { grid-row: 4 / span 2; }
.p-svc__gicon:nth-child(5) { grid-row: 5 / span 2; } .p-svc__gicon:nth-child(6) { grid-row: 6 / span 2; }
/* 圖示線型：預設虛線（不主張）；指到／跨中線＝實線（主張；與共用元件的框同時切換，減動態同樣直接切換） */
.p-svc__gicon .aw-claim__body svg { display: block; width: 100%; height: 100%; fill: none; stroke: var(--accent); stroke-width: 1px; stroke-dasharray: 3 2; }
.p-svc__gicon .aw-claim__body svg * { vector-effect: non-scaling-stroke; }
:is(.p-svc__gicon:hover, .p-svc__gicon:focus-within, .p-svc__gicon.is-claimed) .aw-claim__body svg { stroke-dasharray: none; }
.p-svc__gicon .p-svc__gdot { fill: var(--accent); }
/* 預設：左上圓形圖示實線（圖的視覺焦點，讀出「實線＝主張」）、其餘虛線；有別項被指到／跨中線時實線移過去，離開回預設（同時最多一項）。
   不支援 :has 的瀏覽器整條不生效＝預設全部虛線，指到照舊描實 */
.p-svc__screen:not(:has(.p-svc__gicon:hover, .p-svc__gicon.is-claimed)) .p-svc__gicon:first-child .aw-claim__frame rect { stroke-dashoffset: 0; }
.p-svc__screen:not(:has(.p-svc__gicon:hover, .p-svc__gicon.is-claimed)) .p-svc__gicon:first-child .aw-claim__body svg { stroke-dasharray: none; }
@media print {   /* 列印＝預設狀態 */
  .p-svc__gicon .aw-claim__frame rect { stroke-dashoffset: 100 !important; }
  .p-svc__gicon .aw-claim__body svg { stroke-dasharray: 3 2 !important; }
  .p-svc__gicon:first-child .aw-claim__frame rect { stroke-dashoffset: 0 !important; }
  .p-svc__gicon:first-child .aw-claim__body svg { stroke-dasharray: none !important; }
}
@media (min-width: 1025px) {
  .p-svc__ch--design > .aw-para { grid-column: 1 / 7; }
  .p-svc__ch--design .aw-para__text { grid-column: 3 / -1; }
  .p-svc__ch--design > .p-svc__fig3c {
    grid-column: 7 / 10; grid-row: 2 / span 8; align-self: start; max-width: none; margin: 0 0 0 var(--s3);
    position: sticky; top: calc(var(--aw-bar-h) + var(--s3));
  }
}

/* ── 三章共用：● 小標放大（一處大字重點，用既有字）。例外：大字標題展示字級（不在 §2.2 級距） ── */
:is(.p-svc__ch--trademark, .p-svc__ch--invention) .p-svc__head { font-size: clamp(36px, 3.6vw + 12px, 64px); line-height: 1.2; letter-spacing: .04em; }

/* ── 商標章（單 2c 第二段；A1）：章名下一條橫幅地球圖版（靜止；球內畫大洲海岸線，單 3gb），正文照常排在下方 ── */
.p-svc__fig3b { margin: 0 0 var(--s4); }
.p-svc__ch--trademark > .p-svc__fig3b { grid-column: 1 / -1; }
.p-svc__plate3b .aw-plate__art { aspect-ratio: 640 / 180; }
.p-svc__plate3b svg * { vector-effect: non-scaling-stroke; }
.p-svc__g3b-land { stroke: var(--fg-2); fill: none; opacity: .7; }   /* 海岸線（單 3gb）：只描邊、不填色 */
.p-svc__g3b-o { stroke: var(--fg-2); }
.p-svc__g3b-l { stroke: var(--accent); }

/* ── 發明章（單 2c 第二段；C2）：墨底段落（.band--ink）、留白加大；段落字與其他章相同；方塊圖＋流程圖（單 3ui）在第一段右側（不 sticky） ── */
/* 左右：深色底往外擴 P（負外距）、左右內距也是 P＝內容框與另兩章重合（子格線的外距與內距在邊緣欄互相抵銷，欄位置不動）。
   ≥1025：P＝--s2（左側章節索引欄與本欄隔 24px 欄距，P 再大深色底就碰到索引；留 8px）；≤1024：索引已移到正文上方，P＝頁面邊距＝深色底貼齊視窗左右緣 */
.p-svc__ch--invention { --p-inv: var(--s2); padding: var(--s6) var(--p-inv); margin-inline: calc(-1 * var(--p-inv)); }
@media (max-width: 1024px) { .p-svc__ch--invention { --p-inv: var(--aw-margin); } }
.p-svc__ch--invention > .p-svc__h { border-top: 0; padding-top: 0; }
.p-svc__fig3d { max-width: 480px; margin: 0 0 var(--s4); }
.p-svc__plate3d .aw-plate__art { aspect-ratio: 360 / 214; }
.p-svc__plate3d svg * { vector-effect: non-scaling-stroke; }
.p-svc__g3d-st { stroke: var(--accent); }
.p-svc__g3d-aux, .p-svc__g3d-lead { stroke: var(--fg-2); }
.p-svc__g3d-hid { stroke-dasharray: 5 4; }
/* 例外：SVG 內字級以 viewBox 單位計 */
.p-svc__g3d-num text { fill: var(--fg-2); stroke: none; font: 400 15px/1 var(--f-mono); letter-spacing: .04em; }
@media (min-width: 1025px) {
  .p-svc__ch--invention > .p-svc__fig3d { grid-column: 7 / 10; grid-row: 2; align-self: start; max-width: none; margin: 0 0 var(--s4) var(--s3); }
  .p-svc__g3d-num text { font-size: 24px; }   /* 圖欄窄（圖約半尺寸）：標號放大到實際約 11px */
  .p-svc__ch--invention > .p-svc__fig3d + .aw-para { grid-column: 1 / 7; grid-row: 2; }
  .p-svc__fig3d + .aw-para .aw-para__text { grid-column: 3 / -1; }
}
@media (max-width: 767.98px) {
  .p-svc__ch--invention { padding-block: var(--s5); }
  /* 例外：手機大字標題依視窗寬，常見長度的章名排成一行、不在詞中間斷行 */
  :is(.p-svc__ch--design, .p-svc__ch--trademark, .p-svc__ch--invention) .p-svc__head { font-size: clamp(28px, 8vw, 36px); }
  /* 手機章內插圖（甲12）：整張圖版高 ≤220px（內距 16＋圖號列；圖高上限 148px），先讀得到正文。例外：手機外框固定尺寸（圖示幾何；百分比內距算的是圖版寬） */
  :is(.p-svc__fig3b, .p-svc__fig3c, .p-svc__fig3d) { max-width: none; margin-bottom: var(--s3); }
  :is(.p-svc__plate3b, .p-svc__plate3c, .p-svc__plate3d) { padding: var(--s2); }
  :is(.p-svc__plate3b, .p-svc__plate3c, .p-svc__plate3d) .aw-plate__foot { margin-top: var(--s1); }
  .p-svc__plate3d .aw-plate__art { aspect-ratio: auto; height: 148px; }
  .p-svc__phone { width: 84px; height: 148px; aspect-ratio: auto; padding: 16px 6px 18px; }
  .p-svc__screen { outline-offset: 3px; gap: 2px 6px; }
  .p-svc__phone-home { bottom: 3px; }   /* 下內距 18 − 框距 4 − 圓徑約 8.2 ＝ 5.8px 空間：下方留 3、離框外緣約 2.8 */
  .p-svc__gicon { padding: 2px; }
  .p-svc__gicon .aw-claim__frame { display: none; }
}

/* 八圈圖手機版（單 2b 第 6 項；p_service.fig3a_mobile_html）：中心圓在上、八個衛星圓兩欄；圈內字＝正文字級以上。桌面不顯示。
   緊湊排法（單 3m2 A6）：圓不再撐滿欄寬，直徑跟圈內字走（em＝圈內字級）——衛星圓 7.6em（一行最多 6 字＋上下兩行，六字行兩端離圈邊留約 8px 以上；原 7em 只剩約 4px）、
   中心圓 6.4em（一行 5 字＋字距）；兩欄置中、列距一級。字、順序、字級不變；欄寬不足時圓跟著縮（minmax） */
.p-svc__fig3m { display: none; }
.p-svc__m-core, .p-svc__m-sat {
  display: flex; flex-direction: column; align-items: center; justify-content: center; aspect-ratio: 1 / 1;
  border: 1px solid var(--accent); border-radius: 50%; text-align: center; font-family: var(--f-serif); font-weight: 600; color: var(--fg);
}
.p-svc__m-core {
  width: 6.4em; max-width: 100%; margin: 0 auto var(--s3); font-size: var(--fs-h3); letter-spacing: .12em;
  outline: 1px dashed var(--accent); outline-offset: var(--s1);   /* 外圈虛線＝桌面版中心圓的虛線外圈 */
}
.p-svc__m-sats {
  list-style: none; margin: 0; padding: 0; display: grid; grid-template-columns: repeat(2, minmax(0, 7.6em)); justify-content: center;
  gap: var(--s1) var(--s2); font-size: var(--fs-body);
}
.p-svc__m-sat { width: 100%; font-size: var(--fs-body); line-height: 1.5; letter-spacing: .02em; }   /* 有寬高比的格子項目預設不拉伸＝明寫全寬 */
.p-svc__m-l { display: block; white-space: nowrap; }

/* ── 平板（768～1024）：章節索引移到正文上方（同一份目錄、不新增字；捲動亮起照舊）、正文佔全寬、段號欄＝一欄寬 ─────── */
/* 段號欄寬＝全站 12 欄格線的一欄（正文容器＝全寬 12 欄，cqi 取它的實寬；264px＝11 個欄距 24px）、欄距同格線 24px：
   段號到正文的間隔與首頁同寬度相同（業主 11/09 14:26:21；首頁＝段號第 1 欄、正文第 2 欄起） */
@media (min-width: 768px) and (max-width: 1024px) {
  .p-svc__spec--index > .aw-spec__aside { grid-column: 1 / -1; grid-row: 1; margin: 0 0 var(--s5); }
  .p-svc__spec--index > .aw-spec__body { grid-column: 1 / -1; grid-row: 2; display: block; container-type: inline-size; }
  .p-svc__spec--index :is(.p-svc__ch, .p-svc__h) { display: block; }
  .p-svc__spec--index .p-svc__no { display: block; margin-bottom: var(--s1); }
  .p-svc__spec--index .aw-para { display: grid; grid-template-columns: calc((100cqi - 264px) / 12) minmax(0, 1fr); column-gap: 24px; align-items: baseline; }
  .p-svc__spec--index :is(.aw-para__no, .aw-para__text) { grid-column: auto; }
  .p-svc__spec--index .p-svc__figwrap { display: block; }
  .p-svc__spec--index .p-svc__figwrap > * { max-width: 640px; margin-inline: auto; }   /* 例外：八圈圖在全寬正文內限寬，不放大到整欄；置中於雙線兩端之間（業主 11/09 15:12:53） */
  /* 設計章（單 3sv）：直式手機圖照 ≥1025 的語彙——段落在左、插圖在右並排（sticky），不再圖上文下、右側留白。
     圖欄 34%（768 約 235px、1024 約 313px），段落欄仍有約 20 字以上一行 */
  .p-svc__spec--index .p-svc__ch--design { display: grid; grid-template-columns: minmax(0, 1fr) 34%; column-gap: var(--s4); align-content: start; }
  .p-svc__spec--index .p-svc__ch--design > .p-svc__h { grid-column: 1 / -1; }
  .p-svc__spec--index .p-svc__ch--design > .aw-para { grid-column: 1; }
  .p-svc__spec--index .p-svc__ch--design > .p-svc__fig3c {
    grid-column: 2; grid-row: 2 / span 8; align-self: start; max-width: none; margin: 0;
    position: sticky; top: calc(var(--aw-bar-h) + var(--s3));
  }
  /* 發明章（單 3sv）：橫式插圖若並排，768 段落欄只剩約 15 字一行，改「圖版撐滿章內寬、圖置中限高」——框不再只佔左側、圖兩側留白對稱。
     例外：圖區高 288px（圖示幾何；同手機版寫固定高），圖按比例縮放置中 */
  .p-svc__spec--index .p-svc__ch--invention > .p-svc__fig3d { max-width: none; }
  .p-svc__spec--index .p-svc__ch--invention .p-svc__plate3d .aw-plate__art { aspect-ratio: auto; height: 288px; }
}

/* ── 窄螢幕：單欄；章節索引放在正文前（當目錄，不 sticky）；章與段落改一般區塊 ───────────────────── */
@media (max-width: 767.98px) {
  .p-svc__figwrap { display: block; margin-top: var(--s5); padding-top: var(--s4); }
  .p-svc__fig3a { display: none; }
  .p-svc__fig3m { display: block; }
  .p-svc__plate3a .aw-plate__art { aspect-ratio: auto; display: block; place-items: normal; }   /* 共用 place-items:center 在區塊排版也會讓子區塊縮成內容寬 */
  /* 手機首屏（單 3m2 A5）：正文起點往上——內文段上留白、目錄下距、章名列下距各收一級（只動間距，目錄、章、段落順序不變） */
  .p-svc.aw-section { padding-top: var(--s4); }
  .p-svc__spec--index > .aw-spec__aside { grid-row: 1; margin: 0 0 var(--s3); }
  .p-svc__h { margin-bottom: var(--s3); }
  .p-svc__spec--index > .aw-spec__body { grid-row: 2; }
  .p-svc__ch, .p-svc__ch > .aw-para, .p-svc__h { display: block; }
  /* 段首是條列的段落：段號與第一條同一行（段號欄＝段號寬，間隔＝手機段號的 margin-right，與一般段落段號到正文相同）；
     後續各條對齊第一條（業主 11/09 14:26:21：段號與文字間隔一致） */
  .aw-para.p-svc__lpara { display: grid; grid-template-columns: auto minmax(0, 1fr); align-items: baseline; }
  .aw-para.p-svc__lpara > :is(.aw-para__no, .aw-para__text) { grid-column: auto; }
  .p-svc__no { display: block; margin-bottom: var(--s1); }
  .p-svc__h::before { left: calc(-1 * var(--s1) - 2px); }
  .p-svc__ch + .p-svc__ch, .aw-para + .p-svc__ch { margin-top: var(--s5); }
  .p-svc__fig3a text { font-size: 26px; }
  .p-svc__fig3a .p-svc__t-core { font-size: 38px; }
}
