:root {
  --sg-navy: #17282e;
  --sg-teal: #315965;
  --sg-deep: #102329;
  --sg-gold: #e9a906;
  --sg-gold-hover: #f2b618;
  --sg-text: #2f373a;
  --sg-muted: #69757a;
  --sg-light: #f7f7f7;
  --sg-gray: #ebebeb;
  --sg-line: #d8dddf;
  --sg-white: #ffffff;
  --sg-content-width: 1200px;
  --sg-wide: 1480px;
  --sg-shadow: 0 12px 34px rgba(19, 40, 46, .12);
}

/* Glass Plates & Windows: dual mechanical/optical specification path. */
.sg-plate-page .sg-product-heading--left,.sg-ring-page .sg-product-heading--left,.sg-cnc-page .sg-product-heading--left { max-width: 900px; }
.sg-plate-intro { padding-bottom: 0; }
.sg-plate-intro__layout,.sg-ring-intro__layout,.sg-cnc-intro__layout { display: grid; align-items: center; grid-template-columns: .92fr 1.08fr; gap: 70px; }
.sg-plate-intro__layout h2,.sg-ring-intro__layout h2,.sg-cnc-intro__layout h2 { font-size: 40px; }
.sg-plate-intro__image,.sg-ring-intro__layout figure,.sg-cnc-intro__layout figure { height: 430px; margin: 0; overflow: hidden; background: #e2e9ea; }
.sg-plate-intro__image img,.sg-ring-intro__layout figure img,.sg-cnc-intro__layout figure img { width: 100%; height: 100%; object-fit: cover; }
.sg-plate-path-tool { margin-top: 64px; }
.sg-plate-path-tool__tabs { display: grid; grid-template-columns: 1fr 1fr; }
.sg-plate-path-tool__tabs button { display: grid; min-height: 116px; padding: 20px 30px; border: 1px solid #bfcacc; border-bottom: 0; background: #edf2f3; color: var(--sg-navy); text-align: left; cursor: pointer; grid-template-columns: 42px 1fr; }
.sg-plate-path-tool__tabs button + button { border-left: 0; }
.sg-plate-path-tool__tabs button[aria-pressed="true"] { background: var(--sg-navy); color: #fff; box-shadow: inset 0 4px 0 var(--sg-gold); }
.sg-plate-path-tool__tabs button span { grid-row: 1 / 3; color: var(--sg-gold); font-size: 13px; font-weight: 900; }
.sg-plate-path-tool__tabs button strong { font-size: 18px; }
.sg-plate-path-tool__tabs button small { color: inherit; opacity: .72; }
.sg-plate-path-tool__body { display: grid; min-height: 430px; border: 1px solid #bfcacc; grid-template-columns: 1.15fr .85fr; }
.sg-plate-path-tool__drawing { position: relative; overflow: hidden; background-color: #f5f7f7; background-image: linear-gradient(#dfe6e7 1px,transparent 1px),linear-gradient(90deg,#dfe6e7 1px,transparent 1px); background-size: 25px 25px; }
.sg-plate-drawing__part { position: absolute; top: 82px; right: 13%; bottom: 78px; left: 13%; border: 3px solid #315965; border-radius: 8px; background: rgba(151,205,216,.22); box-shadow: 18px 18px 0 rgba(49,89,101,.08); }
.sg-plate-drawing__aperture { position: absolute; top: 21%; right: 23%; bottom: 21%; left: 23%; border: 2px dashed #c58d00; background: rgba(255,255,255,.48); }
.sg-plate-drawing__hole { position: absolute; width: 28px; height: 28px; border: 2px solid #315965; border-radius: 50%; background: #f5f7f7; }
.sg-plate-drawing__hole.is-one { top: 13%; left: 10%; }.sg-plate-drawing__hole.is-two { right: 10%; bottom: 13%; }
.sg-plate-drawing__part span { position: absolute; top: 47%; right: 0; left: 0; color: #315965; font-size: 12px; font-weight: 900; text-align: center; text-transform: uppercase; }
.sg-plate-path-tool__drawing > b { position: absolute; color: #9b6e00; font-size: 11px; }.sg-plate-path-tool__drawing .is-length { bottom: 42px; left: 47%; }.sg-plate-path-tool__drawing .is-width { top: 48%; left: 6%; }.sg-plate-path-tool__drawing .is-thickness { right: 7%; bottom: 56px; }
.sg-plate-path-tool__drawing.is-optical .sg-plate-drawing__aperture { border-style: solid; background: rgba(219,243,248,.82); box-shadow: inset 0 0 28px rgba(255,255,255,.92); }
.sg-plate-path-tool__body article { display: grid; align-content: center; padding: 44px; border-left: 1px solid var(--sg-line); background: #fff; }
.sg-plate-path-tool__body article > span { color: #a97500; font-size: 11px; font-weight: 900; text-transform: uppercase; }
.sg-plate-path-tool__body h3 { margin-top: 9px; font-size: 28px; }
.sg-plate-path-tool__body dl { margin: 18px 0 0; }.sg-plate-path-tool__body dl div { padding: 13px 0; border-top: 1px solid var(--sg-line); }.sg-plate-path-tool__body dt { color: var(--sg-muted); font-size: 11px; font-weight: 800; text-transform: uppercase; }.sg-plate-path-tool__body dd { margin: 4px 0 0; color: var(--sg-navy); font-size: 13px; font-weight: 700; }
.sg-plate-facts,.sg-ring-facts,.sg-cnc-facts { display: grid; border-top: 1px solid #cbd3d5; border-left: 1px solid #cbd3d5; grid-template-columns: repeat(3,minmax(0,1fr)); }
.sg-plate-facts > div,.sg-ring-facts > div,.sg-cnc-facts > div { min-height: 142px; padding: 23px; border-right: 1px solid #cbd3d5; border-bottom: 1px solid #cbd3d5; }
.sg-plate-facts span,.sg-plate-facts strong,.sg-plate-facts small,.sg-ring-facts span,.sg-ring-facts strong,.sg-ring-facts small,.sg-cnc-facts span,.sg-cnc-facts strong,.sg-cnc-facts small { display: block; }
.sg-plate-facts span,.sg-ring-facts span,.sg-cnc-facts span { color: #a97500; font-size: 10px; font-weight: 900; text-transform: uppercase; }
.sg-plate-facts strong,.sg-ring-facts strong,.sg-cnc-facts strong { margin: 8px 0 5px; color: var(--sg-navy); font-size: 18px; }
.sg-plate-facts small,.sg-ring-facts small,.sg-cnc-facts small { color: var(--sg-muted); }
.sg-plate-blueprint { display: grid; overflow: hidden; border: 1px solid rgba(255,255,255,.2); background: #20363d; grid-template-columns: 1.28fr .72fr; }
.sg-plate-blueprint__canvas { min-width: 0; padding: 32px; background-image: linear-gradient(rgba(255,255,255,.05) 1px,transparent 1px),linear-gradient(90deg,rgba(255,255,255,.05) 1px,transparent 1px); background-size: 25px 25px; }
.sg-plate-blueprint svg { width: 100%; height: auto; }.sg-plate-blueprint .part { fill: rgba(133,201,214,.18); stroke: #a1c6ce; stroke-width: 3; }.sg-plate-blueprint .aperture { fill: rgba(255,255,255,.06); stroke: #e9a906; stroke-dasharray: 8 8; stroke-width: 2; }.sg-plate-blueprint .hole,.sg-plate-blueprint .slot { fill: #20363d; stroke: #a1c6ce; stroke-width: 2; }.sg-plate-blueprint line { stroke: #e9a906; stroke-width: 1.3; }.sg-plate-blueprint text { fill: #dce7e9; font-size: 12px; font-weight: 700; }
.sg-plate-blueprint__legend { display: grid; border-left: 1px solid rgba(255,255,255,.18); }.sg-plate-blueprint__legend > div { display: grid; align-items: center; padding: 23px; border-bottom: 1px solid rgba(255,255,255,.16); grid-template-columns: 45px 1fr; gap: 13px; }.sg-plate-blueprint__legend > div:last-child { border-bottom: 0; }.sg-plate-blueprint__legend b { display: grid; width: 34px; height: 34px; place-items: center; background: var(--sg-gold); color: var(--sg-navy); }.sg-plate-blueprint__legend span,.sg-plate-blueprint__legend strong { display: block; }.sg-plate-blueprint__legend span { color: #c8d6d9; font-size: 12px; }.sg-plate-blueprint__legend strong { margin-bottom: 4px; color: #fff; font-size: 14px; }
.sg-plate-material-layout,.sg-plate-application-layout,.sg-plate-qc-layout { display: grid; align-items: start; grid-template-columns: .68fr 1.32fr; gap: 60px; }.sg-plate-material-layout h2,.sg-plate-application-layout h2,.sg-plate-qc-layout h2 { font-size: 37px; }.sg-plate-material-layout figure { height: 250px; margin: 28px 0 0; overflow: hidden; }.sg-plate-material-layout figure img { width: 100%; height: 100%; object-fit: cover; }
.sg-plate-routes { display: grid; border-top: 1px solid #c4cfd1; border-left: 1px solid #c4cfd1; grid-template-columns: 1fr 1fr; }.sg-plate-routes article { padding: 38px; border-right: 1px solid #c4cfd1; border-bottom: 1px solid #c4cfd1; background: #fff; }.sg-plate-routes article > span { color: #a97500; font-size: 11px; font-weight: 900; text-transform: uppercase; }.sg-plate-routes h3 { margin-top: 9px; font-size: 25px; }.sg-plate-routes ol { margin: 25px 0; padding: 0; list-style: none; counter-reset: route; }.sg-plate-routes li { padding: 10px 0; border-top: 1px solid var(--sg-line); counter-increment: route; }.sg-plate-routes li::before { margin-right: 14px; color: #a97500; content: "0" counter(route); font-size: 10px; font-weight: 900; }.sg-plate-routes article > strong { color: var(--sg-navy); font-size: 13px; }
.sg-plate-finish-strip { display: grid; margin-top: 35px; grid-template-columns: .82fr 1.18fr; }.sg-plate-finish-strip figure { min-height: 330px; margin: 0; overflow: hidden; }.sg-plate-finish-strip figure img { width: 100%; height: 100%; object-fit: cover; }.sg-plate-finish-strip > div { display: grid; align-content: center; padding: 38px 46px; background: var(--sg-navy); color: #c9d4d7; }.sg-plate-finish-strip h3 { color: #fff; font-size: 27px; }
.sg-plate-qc-image figure { height: 210px; margin: 27px 0 0; overflow: hidden; }.sg-plate-qc-image img { width: 100%; height: 100%; object-fit: cover; }.sg-plate-qc-matrix { display: grid; border-top: 1px solid rgba(255,255,255,.18); border-left: 1px solid rgba(255,255,255,.18); grid-template-columns: 1fr 1fr; }.sg-plate-qc-matrix > div { min-height: 150px; padding: 22px; border-right: 1px solid rgba(255,255,255,.18); border-bottom: 1px solid rgba(255,255,255,.18); }.sg-plate-qc-matrix span,.sg-plate-qc-matrix strong,.sg-plate-qc-matrix b { display: block; }.sg-plate-qc-matrix span { color: var(--sg-gold); font-size: 10px; font-weight: 900; text-transform: uppercase; }.sg-plate-qc-matrix strong { margin: 8px 0; color: #fff; font-size: 13px; }.sg-plate-qc-matrix b { color: #9fb1b5; font-size: 11px; }

/* Glass Rings & Spacers: annular geometry and stack-up planning. */
.sg-ring-intro { padding-bottom: 0; }.sg-ring-intro__layout figure { border-radius: 50% 0 0 50%; }.sg-ring-facts { margin-top: 62px; }
.sg-ring-planner { display: grid; overflow: hidden; border: 1px solid rgba(255,255,255,.2); grid-template-columns: .7fr 1.3fr; }.sg-ring-planner__controls { display: grid; padding: 37px; background: #20363d; gap: 15px; }.sg-ring-planner__controls label { display: grid; color: #fff; font-size: 11px; font-weight: 800; gap: 6px; }.sg-ring-planner__controls input,.sg-ring-planner__controls select { width: 100%; height: 44px; padding: 0 12px; border: 1px solid rgba(255,255,255,.25); border-radius: 0; background: #fff; color: var(--sg-navy); }.sg-ring-planner__controls small { color: #afbec1; line-height: 1.5; }
.sg-ring-planner__stage { display: grid; align-content: center; min-width: 0; padding: 45px; background-color: #f4f7f7; background-image: linear-gradient(#dfe6e7 1px,transparent 1px),linear-gradient(90deg,#dfe6e7 1px,transparent 1px); background-size: 25px 25px; }.sg-ring-model { position: relative; width: 245px; height: 245px; margin: 0 auto 38px; border: 3px solid #315965; border-radius: 50%; background: radial-gradient(circle,transparent 0 30%,rgba(112,188,204,.32) 30.5% 68%,rgba(255,255,255,.75) 69%); box-shadow: 14px 20px 30px rgba(22,51,60,.14); }.sg-ring-model i { position: absolute; top: 31%; right: 31%; bottom: 31%; left: 31%; border: 2px solid #315965; border-radius: 50%; }.sg-ring-model span { position: absolute; color: var(--sg-navy); font-size: 11px; font-weight: 900; }.sg-ring-model span:nth-of-type(1) { top: -26px; left: 41%; }.sg-ring-model span:nth-of-type(2) { top: 47%; right: 38%; }.sg-ring-model small { position: absolute; right: -68px; bottom: 15px; padding: 8px 10px; border-left: 3px solid var(--sg-gold); background: #fff; color: var(--sg-navy); font-weight: 800; }
.sg-ring-planner__outputs { display: grid; border-top: 1px solid #bdc8cb; border-left: 1px solid #bdc8cb; grid-template-columns: repeat(3,1fr); }.sg-ring-planner__outputs > div { padding: 18px; border-right: 1px solid #bdc8cb; border-bottom: 1px solid #bdc8cb; background: rgba(255,255,255,.86); }.sg-ring-planner__outputs span,.sg-ring-planner__outputs strong { display: block; }.sg-ring-planner__outputs span { color: #a97500; font-size: 10px; font-weight: 900; text-transform: uppercase; }.sg-ring-planner__outputs strong { margin-top: 7px; color: var(--sg-navy); font-size: 17px; }.sg-ring-planner__stage > p { margin: 16px 0 0; padding: 11px 14px; border-left: 4px solid #2f7a5a; background: #e7f3ed; color: #245a46; font-size: 12px; font-weight: 800; }.sg-ring-planner__stage > p.is-warning { border-color: #c95b3c; background: #fff0eb; color: #8d3521; }
.sg-ring-type-band { display: grid; border-top: 1px solid #c7d0d2; border-left: 1px solid #c7d0d2; grid-template-columns: repeat(3,1fr); }.sg-ring-type-band article { display: grid; min-height: 235px; padding: 27px; border-right: 1px solid #c7d0d2; border-bottom: 1px solid #c7d0d2; background: #fff; grid-template-columns: 42px 1fr; gap: 10px; }.sg-ring-type-band article > b { color: var(--sg-gold); font-size: 12px; }.sg-ring-type-band article span { color: #a97500; font-size: 10px; font-weight: 900; text-transform: uppercase; }.sg-ring-type-band h3 { margin-top: 8px; font-size: 22px; }
.sg-ring-stack-layout { display: grid; align-items: start; grid-template-columns: 1fr 1fr; gap: 65px; }.sg-ring-stack-layout h2 { font-size: 38px; }.sg-ring-stack { display: grid; margin-top: 32px; perspective: 700px; gap: 8px; }.sg-ring-stack span { display: grid; height: 38px; place-items: center; border: 1px solid #75949c; color: var(--sg-navy); font-size: 11px; font-weight: 800; transform: skewX(-16deg); }.sg-ring-stack .is-window { background: rgba(131,205,218,.28); }.sg-ring-stack .is-spacer { height: 20px; border-color: #b78100; background: rgba(233,169,6,.26); }.sg-ring-stack .is-base { height: 46px; background: #d9dfe0; }
.sg-ring-face-map { display: grid; border-top: 1px solid var(--sg-line); border-left: 1px solid var(--sg-line); grid-template-columns: 1fr 1fr; }.sg-ring-face-map > div { min-height: 190px; padding: 25px; border-right: 1px solid var(--sg-line); border-bottom: 1px solid var(--sg-line); }.sg-ring-face-map span,.sg-ring-face-map strong { display: block; }.sg-ring-face-map span { color: #a97500; font-size: 10px; font-weight: 900; text-transform: uppercase; }.sg-ring-face-map strong { margin: 9px 0; color: var(--sg-navy); }.sg-ring-face-map p { margin: 0; font-size: 13px; }
.sg-ring-material-layout,.sg-ring-process-layout,.sg-ring-qc-layout { display: grid; align-items: start; grid-template-columns: .72fr 1.28fr; gap: 60px; }.sg-ring-material-layout h2,.sg-ring-process-layout h2,.sg-ring-qc-layout h2 { font-size: 37px; }.sg-ring-material-layout figure,.sg-ring-process-layout figure { height: 270px; margin: 28px 0 0; overflow: hidden; }.sg-ring-material-layout figure img,.sg-ring-process-layout figure img { width: 100%; height: 100%; object-fit: cover; }
.sg-ring-feature-map { display: grid; border: 1px solid rgba(255,255,255,.2); background: #20363d; grid-template-columns: 1.1fr .9fr; }.sg-ring-feature-map__part { position: relative; min-height: 500px; background-image: linear-gradient(rgba(255,255,255,.05) 1px,transparent 1px),linear-gradient(90deg,rgba(255,255,255,.05) 1px,transparent 1px); background-size: 26px 26px; }.sg-ring-feature-map__part::before { position: absolute; top: 80px; right: 17%; bottom: 80px; left: 17%; border: 45px solid rgba(132,204,218,.4); border-radius: 50%; box-shadow: inset 0 0 0 3px #9fc4cc,0 0 0 3px #9fc4cc; content: ""; }.sg-ring-feature-map__part .is-bore { position: absolute; top: 169px; right: 33%; bottom: 169px; left: 33%; border: 2px dashed var(--sg-gold); border-radius: 50%; }.sg-ring-feature-map__part .is-groove { position: absolute; top: 117px; right: 23%; bottom: 117px; left: 23%; border: 5px solid rgba(233,169,6,.8); border-radius: 50%; }.sg-ring-feature-map__part .is-hole { position: absolute; top: 96px; left: 26%; width: 25px; height: 25px; border: 2px solid #fff; border-radius: 50%; background: #20363d; }.sg-ring-feature-map__part span { position: absolute; padding: 8px 10px; background: #fff; color: var(--sg-navy); font-size: 10px; font-weight: 900; }.sg-ring-feature-map__part .is-step { top: 68px; right: 17%; }.sg-ring-feature-map__part .is-chamfer { bottom: 66px; left: 18%; }
.sg-ring-feature-map__list { display: grid; border-left: 1px solid rgba(255,255,255,.18); }.sg-ring-feature-map__list > div { display: grid; align-items: center; padding: 22px; border-bottom: 1px solid rgba(255,255,255,.17); grid-template-columns: 42px 1fr; gap: 10px; }.sg-ring-feature-map__list > div:last-child { border-bottom: 0; }.sg-ring-feature-map__list b { color: var(--sg-gold); font-size: 11px; }.sg-ring-feature-map__list span,.sg-ring-feature-map__list strong { display: block; }.sg-ring-feature-map__list span { color: #bac9cc; font-size: 12px; }.sg-ring-feature-map__list strong { margin-bottom: 4px; color: #fff; font-size: 14px; }
.sg-ring-process-layout { grid-template-columns: 1.2fr .8fr; }.sg-ring-process-layout ol { margin: 28px 0 0; padding: 0; list-style: none; }.sg-ring-process-layout li { display: grid; padding: 16px 0; border-top: 1px solid var(--sg-line); grid-template-columns: 48px 1fr; }.sg-ring-process-layout li b { color: #a97500; font-size: 11px; }.sg-ring-process-layout li span,.sg-ring-process-layout li strong { display: block; }.sg-ring-process-layout li span { color: var(--sg-muted); font-size: 13px; }.sg-ring-process-layout li strong { color: var(--sg-navy); font-size: 16px; }
.sg-ring-qc-grid,.sg-cnc-qc-grid { display: grid; border-top: 1px solid #c8d1d3; border-left: 1px solid #c8d1d3; grid-template-columns: 1fr 1fr; }.sg-ring-qc-grid > div,.sg-cnc-qc-grid > div { min-height: 132px; padding: 22px; border-right: 1px solid #c8d1d3; border-bottom: 1px solid #c8d1d3; background: #fff; }.sg-ring-qc-grid span,.sg-ring-qc-grid strong,.sg-cnc-qc-grid span,.sg-cnc-qc-grid strong { display: block; }.sg-ring-qc-grid span,.sg-cnc-qc-grid span { color: #a97500; font-size: 10px; font-weight: 900; text-transform: uppercase; }.sg-ring-qc-grid strong,.sg-cnc-qc-grid strong { margin-top: 9px; color: var(--sg-navy); font-size: 14px; }

/* CNC Machined Glass Parts: DFM, datum and process-route planning. */
.sg-cnc-intro { padding-bottom: 0; }.sg-cnc-facts { margin-top: 62px; }.sg-cnc-page .sg-table-note.wrap { margin-top: 18px; }
.sg-cnc-planner { display: grid; overflow: hidden; border: 1px solid rgba(255,255,255,.2); grid-template-columns: .72fr 1.28fr; }.sg-cnc-planner__controls { display: grid; padding: 34px; background: #20363d; gap: 14px; }.sg-cnc-planner__controls > label { display: grid; color: #fff; font-size: 11px; font-weight: 800; gap: 6px; }.sg-cnc-planner__controls select { width: 100%; height: 44px; padding: 0 12px; border: 1px solid rgba(255,255,255,.25); border-radius: 0; background: #fff; color: var(--sg-navy); }.sg-cnc-planner__controls fieldset { display: grid; margin: 4px 0 0; padding: 15px; border: 1px solid rgba(255,255,255,.22); grid-template-columns: 1fr 1fr; gap: 8px; }.sg-cnc-planner__controls legend { padding: 0 7px; color: var(--sg-gold); font-size: 10px; font-weight: 900; text-transform: uppercase; }.sg-cnc-planner__controls fieldset label { color: #d5dfe1; font-size: 11px; }
.sg-cnc-planner__result { display: grid; align-content: center; padding: 50px; background-color: #f5f7f7; background-image: linear-gradient(#dfe6e7 1px,transparent 1px),linear-gradient(90deg,#dfe6e7 1px,transparent 1px); background-size: 25px 25px; }.sg-cnc-planner__result > span { color: #a97500; font-size: 11px; font-weight: 900; text-transform: uppercase; }.sg-cnc-planner__result h3 { margin-top: 10px; font-size: 29px; }.sg-cnc-route-line { display: grid; align-items: center; margin: 22px 0; grid-template-columns: repeat(5,1fr); }.sg-cnc-route-line i { position: relative; display: grid; width: 36px; height: 36px; place-items: center; border-radius: 50%; background: var(--sg-navy); color: #fff; font-size: 10px; font-style: normal; }.sg-cnc-route-line i:not(:last-child)::after { position: absolute; top: 17px; left: 36px; width: calc(100vw / 12); max-width: 110px; height: 2px; background: var(--sg-gold); content: ""; }.sg-cnc-planner__result dl { margin: 8px 0 0; }.sg-cnc-planner__result dl div { display: grid; padding: 12px 0; border-top: 1px solid #bdc8cb; grid-template-columns: .45fr 1fr; gap: 15px; }.sg-cnc-planner__result dt { color: var(--sg-muted); font-size: 11px; font-weight: 800; }.sg-cnc-planner__result dd { margin: 0; color: var(--sg-navy); font-size: 12px; font-weight: 700; }
.sg-cnc-feature-board { display: grid; min-height: 500px; border: 1px solid #c6d0d2; background: #fff; grid-template-columns: 1.15fr .85fr; }.sg-cnc-feature-board__part { position: relative; overflow: hidden; background-color: #edf3f4; background-image: linear-gradient(#d7e0e2 1px,transparent 1px),linear-gradient(90deg,#d7e0e2 1px,transparent 1px); background-size: 26px 26px; }.sg-cnc-feature-board__part::before { position: absolute; top: 75px; right: 12%; bottom: 75px; left: 12%; border: 3px solid #315965; background: rgba(142,207,220,.28); box-shadow: 16px 16px 0 rgba(23,40,46,.08); content: ""; }.sg-cnc-feature-board__part i { position: absolute; z-index: 2; border: 2px solid #315965; background: #edf3f4; }.sg-cnc-feature-board__part .hole { width: 39px; height: 39px; border-radius: 50%; }.sg-cnc-feature-board__part .h1 { top: 112px; left: 18%; }.sg-cnc-feature-board__part .h2 { right: 18%; bottom: 112px; }.sg-cnc-feature-board__part .slot { top: 212px; left: 20%; width: 110px; height: 38px; border-radius: 19px; }.sg-cnc-feature-board__part .recess { top: 135px; right: 26%; width: 150px; height: 120px; border: 5px double #bd8500; background: rgba(255,255,255,.55); }.sg-cnc-feature-board__part .notch { right: 12%; bottom: 162px; width: 45px; height: 70px; border-right: 0; }.sg-cnc-feature-board__part span { position: absolute; z-index: 3; display: grid; width: 32px; height: 32px; place-items: center; background: var(--sg-gold); color: var(--sg-navy); font-size: 11px; font-weight: 900; }.sg-cnc-feature-board__part .datum-a { bottom: 52px; left: 45%; }.sg-cnc-feature-board__part .datum-b { top: 45%; left: 7%; }
.sg-cnc-feature-board__notes { display: grid; border-left: 1px solid #c6d0d2; }.sg-cnc-feature-board__notes > div { display: grid; align-items: center; padding: 21px; border-bottom: 1px solid #c6d0d2; grid-template-columns: 42px 1fr; }.sg-cnc-feature-board__notes > div:last-child { border-bottom: 0; }.sg-cnc-feature-board__notes b { color: #a97500; font-size: 11px; }.sg-cnc-feature-board__notes span,.sg-cnc-feature-board__notes strong { display: block; }.sg-cnc-feature-board__notes span { color: var(--sg-muted); font-size: 12px; }.sg-cnc-feature-board__notes strong { color: var(--sg-navy); font-size: 14px; }
.sg-cnc-capability-layout,.sg-cnc-qc-layout,.sg-cnc-application-layout { display: grid; align-items: start; grid-template-columns: .67fr 1.33fr; gap: 60px; }.sg-cnc-capability-layout h2,.sg-cnc-qc-layout h2,.sg-cnc-application-layout h2 { font-size: 37px; }.sg-cnc-capability-layout figure,.sg-cnc-qc-layout figure { height: 240px; margin: 27px 0 0; overflow: hidden; }.sg-cnc-capability-layout figure img,.sg-cnc-qc-layout figure img { width: 100%; height: 100%; object-fit: cover; }
.sg-cnc-datum-layout { display: grid; align-items: center; grid-template-columns: 1.1fr .9fr; gap: 65px; }.sg-cnc-datum-layout h2 { font-size: 38px; }.sg-cnc-datum-visual { position: relative; min-height: 410px; background-color: #eef3f4; background-image: linear-gradient(#d6dfe1 1px,transparent 1px),linear-gradient(90deg,#d6dfe1 1px,transparent 1px); background-size: 26px 26px; }.sg-cnc-datum-visual > div { position: absolute; top: 92px; right: 16%; bottom: 92px; left: 16%; border: 3px solid #315965; background: rgba(122,195,209,.26); }.sg-cnc-datum-visual i { position: absolute; width: 35px; height: 35px; border: 2px solid #315965; border-radius: 50%; background: #eef3f4; }.sg-cnc-datum-visual i:nth-child(1) { top: 15%; left: 12%; }.sg-cnc-datum-visual i:nth-child(2) { top: 15%; right: 12%; }.sg-cnc-datum-visual i:nth-child(3) { bottom: 15%; left: 12%; }.sg-cnc-datum-visual i:nth-child(4) { right: 12%; bottom: 15%; }.sg-cnc-datum-visual b { position: absolute; top: 44%; right: 0; left: 0; color: var(--sg-navy); font-size: 13px; text-align: center; text-transform: uppercase; }.sg-cnc-datum-visual > span { position: absolute; color: #9a6d00; font-size: 11px; font-weight: 900; }.sg-cnc-datum-visual .axis-x { bottom: 44px; left: 40%; }.sg-cnc-datum-visual .axis-y { top: 44%; left: 21px; transform: rotate(-90deg); }
.sg-check-list { margin: 24px 0 0; padding: 0; list-style: none; }.sg-check-list li { position: relative; padding: 11px 0 11px 28px; border-top: 1px solid var(--sg-line); color: var(--sg-navy); font-size: 13px; font-weight: 700; }.sg-check-list li::before { position: absolute; left: 0; color: #a97500; content: "+"; font-weight: 900; }
.sg-cnc-cost-map { display: grid; border-top: 1px solid rgba(255,255,255,.2); border-left: 1px solid rgba(255,255,255,.2); grid-template-columns: repeat(4,1fr); }.sg-cnc-cost-map > div { min-height: 205px; padding: 25px; border-right: 1px solid rgba(255,255,255,.2); border-bottom: 1px solid rgba(255,255,255,.2); }.sg-cnc-cost-map span,.sg-cnc-cost-map strong,.sg-cnc-cost-map i { display: block; }.sg-cnc-cost-map span { color: var(--sg-gold); font-size: 10px; font-weight: 900; text-transform: uppercase; }.sg-cnc-cost-map strong { min-height: 78px; margin-top: 12px; color: #fff; font-size: 13px; }.sg-cnc-cost-map i { position: relative; height: 8px; margin-top: 25px; background: rgba(255,255,255,.14); }.sg-cnc-cost-map i::after { display: block; width: var(--risk); height: 100%; background: linear-gradient(90deg,#4d9b78,#e9a906,#cf6045); content: ""; }
.sg-cnc-process-layout { display: grid; grid-template-columns: .5fr 1.5fr; gap: 55px; }.sg-cnc-process-layout h2 { font-size: 38px; }.sg-cnc-process-layout ol { display: grid; margin: 0; padding: 0; border-top: 1px solid var(--sg-line); border-left: 1px solid var(--sg-line); list-style: none; grid-template-columns: repeat(3,1fr); }.sg-cnc-process-layout li { min-height: 205px; padding: 24px; border-right: 1px solid var(--sg-line); border-bottom: 1px solid var(--sg-line); }.sg-cnc-process-layout li span,.sg-cnc-process-layout li strong { display: block; }.sg-cnc-process-layout li span { color: #a97500; font-size: 11px; font-weight: 900; }.sg-cnc-process-layout li strong { margin: 15px 0 8px; color: var(--sg-navy); font-size: 16px; }.sg-cnc-process-layout li p { margin: 0; font-size: 12px; }

@media (max-width: 1000px) {
  .sg-plate-intro__layout,.sg-ring-intro__layout,.sg-cnc-intro__layout,.sg-plate-blueprint,.sg-plate-material-layout,.sg-plate-application-layout,.sg-plate-qc-layout,.sg-ring-stack-layout,.sg-ring-material-layout,.sg-ring-process-layout,.sg-ring-qc-layout,.sg-ring-feature-map,.sg-cnc-feature-board,.sg-cnc-capability-layout,.sg-cnc-datum-layout,.sg-cnc-qc-layout,.sg-cnc-application-layout,.sg-cnc-process-layout { grid-template-columns: 1fr; }
  .sg-plate-path-tool__body { grid-template-columns: 1fr 1fr; }.sg-plate-blueprint__legend,.sg-ring-feature-map__list,.sg-cnc-feature-board__notes { border-top: 1px solid rgba(255,255,255,.18); border-left: 0; }.sg-cnc-feature-board__notes { border-top-color: #c6d0d2; }
  .sg-ring-planner,.sg-cnc-planner { grid-template-columns: .9fr 1.1fr; }.sg-cnc-cost-map { grid-template-columns: 1fr 1fr; }.sg-cnc-process-layout ol { grid-template-columns: repeat(3,1fr); }
}

@media (max-width: 720px) {
  .sg-plate-intro__layout,.sg-ring-intro__layout,.sg-cnc-intro__layout { gap: 34px; }.sg-plate-intro__layout h2,.sg-ring-intro__layout h2,.sg-cnc-intro__layout h2,.sg-plate-material-layout h2,.sg-plate-application-layout h2,.sg-plate-qc-layout h2,.sg-ring-stack-layout h2,.sg-ring-material-layout h2,.sg-ring-process-layout h2,.sg-ring-qc-layout h2,.sg-cnc-capability-layout h2,.sg-cnc-datum-layout h2,.sg-cnc-qc-layout h2,.sg-cnc-application-layout h2,.sg-cnc-process-layout h2 { font-size: 29px; }
  .sg-plate-intro__image,.sg-ring-intro__layout figure,.sg-cnc-intro__layout figure { height: 280px; }.sg-ring-intro__layout figure { border-radius: 0; }
  .sg-plate-path-tool { margin-top: 38px; }.sg-plate-path-tool__tabs,.sg-plate-path-tool__body,.sg-plate-routes,.sg-plate-finish-strip,.sg-ring-planner,.sg-cnc-planner { grid-template-columns: 1fr; }.sg-plate-path-tool__tabs button + button { border-left: 1px solid #bfcacc; }.sg-plate-path-tool__tabs button { min-height: 102px; }.sg-plate-path-tool__drawing { min-height: 310px; }.sg-plate-path-tool__body article { padding: 28px 22px; border-top: 1px solid var(--sg-line); border-left: 0; }
  .sg-plate-facts,.sg-ring-facts,.sg-cnc-facts { grid-template-columns: 1fr 1fr; }.sg-plate-facts > div,.sg-ring-facts > div,.sg-cnc-facts > div { min-height: 125px; padding: 17px; }.sg-plate-blueprint__canvas { padding: 8px; }.sg-plate-blueprint__canvas svg { min-width: 650px; }.sg-plate-blueprint__canvas { overflow-x: auto; }.sg-plate-blueprint__legend > div { padding: 19px; }.sg-plate-routes article,.sg-plate-finish-strip > div { padding: 27px 22px; }.sg-plate-finish-strip figure { min-height: 250px; }.sg-plate-qc-matrix { grid-template-columns: 1fr; }
  .sg-ring-planner__controls,.sg-ring-planner__stage,.sg-cnc-planner__controls,.sg-cnc-planner__result { padding: 27px 21px; }.sg-ring-model { width: 205px; height: 205px; }.sg-ring-model small { right: -42px; }.sg-ring-planner__outputs { grid-template-columns: 1fr; }.sg-ring-type-band { grid-template-columns: 1fr; }.sg-ring-type-band article { min-height: 0; }.sg-ring-face-map,.sg-ring-qc-grid,.sg-cnc-qc-grid { grid-template-columns: 1fr; }.sg-ring-feature-map__part,.sg-cnc-feature-board__part { min-height: 340px; }.sg-ring-feature-map__part::before { top: 57px; bottom: 57px; border-width: 30px; }.sg-ring-feature-map__part .is-bore { top: 116px; bottom: 116px; }.sg-ring-feature-map__part .is-groove { top: 78px; bottom: 78px; }.sg-ring-material-layout figure,.sg-ring-process-layout figure { height: 240px; }
  .sg-cnc-planner__controls fieldset { grid-template-columns: 1fr; }.sg-cnc-route-line i:not(:last-child)::after { width: 40px; }.sg-cnc-feature-board__part .recess { right: 21%; width: 110px; height: 90px; }.sg-cnc-datum-visual { min-height: 310px; }.sg-cnc-cost-map,.sg-cnc-process-layout ol { grid-template-columns: 1fr; }.sg-cnc-cost-map > div,.sg-cnc-process-layout li { min-height: 0; }.sg-cnc-cost-map strong { min-height: 0; }
}

/* Glass Rod page: geometry-led purchasing and inspection tools. */
.sg-glass-rods-page .sg-product-heading--left { max-width: 880px; }
.sg-rod-intro { padding-bottom: 0; }
.sg-rod-intro__layout { display: grid; align-items: center; grid-template-columns: .88fr 1.12fr; gap: 76px; }
.sg-rod-intro__copy h2 { font-size: 42px; }
.sg-rod-specimen { position: relative; min-height: 390px; overflow: hidden; border: 1px solid #bdc8cb; background-color: #f4f7f7; background-image: linear-gradient(#dde5e7 1px, transparent 1px),linear-gradient(90deg,#dde5e7 1px,transparent 1px); background-size: 24px 24px; }
.sg-rod-specimen__body { position: absolute; top: 142px; right: 75px; left: 75px; height: 92px; border: 2px solid #315965; border-radius: 46px; background: linear-gradient(180deg,rgba(255,255,255,.92),rgba(126,190,205,.28) 44%,rgba(40,95,108,.2)); box-shadow: inset 0 12px 18px rgba(255,255,255,.9),0 18px 28px rgba(20,53,61,.15); }
.sg-rod-specimen__body::before,.sg-rod-specimen__body::after { position: absolute; top: -2px; width: 90px; height: 92px; border: 2px solid #315965; border-radius: 50%; background: rgba(218,239,243,.82); content: ""; }
.sg-rod-specimen__body::before { left: -2px; }
.sg-rod-specimen__body::after { right: -2px; }
.sg-rod-specimen__body span { position: absolute; z-index: 2; top: 36px; right: 0; left: 0; color: #315965; font-size: 12px; font-weight: 800; text-align: center; }
.sg-rod-specimen__length { position: absolute; top: 72px; right: 90px; left: 90px; display: grid; align-items: center; grid-template-columns: 1fr auto 1fr; gap: 10px; }
.sg-rod-specimen__length i,.sg-rod-specimen__diameter i { height: 1px; background: #315965; }
.sg-rod-specimen__length i:first-child::before,.sg-rod-specimen__diameter i:first-child::before { content: "<"; }
.sg-rod-specimen__length i:last-child::after,.sg-rod-specimen__diameter i:last-child::after { float: right; content: ">"; }
.sg-rod-specimen__length b,.sg-rod-specimen__diameter b { color: #17282e; font-size: 12px; }
.sg-rod-specimen__diameter { position: absolute; top: 128px; right: 28px; display: grid; width: 125px; align-items: center; grid-template-columns: 1fr auto 1fr; gap: 5px; transform: rotate(90deg); transform-origin: center; }
.sg-rod-specimen__end { position: absolute; right: 40px; bottom: 47px; padding: 9px 13px; border-left: 3px solid var(--sg-gold); background: #fff; color: #315965; font-size: 11px; font-weight: 800; }
.sg-rod-fact-grid { display: grid; margin-top: 64px; border-top: 1px solid #cad3d5; border-left: 1px solid #cad3d5; grid-template-columns: repeat(3,minmax(0,1fr)); }
.sg-rod-fact-grid > div { min-height: 145px; padding: 24px; border-right: 1px solid #cad3d5; border-bottom: 1px solid #cad3d5; }
.sg-rod-fact-grid span,.sg-rod-fact-grid strong,.sg-rod-fact-grid small { display: block; }
.sg-rod-fact-grid span { color: #a97500; font-size: 11px; font-weight: 800; text-transform: uppercase; }
.sg-rod-fact-grid strong { margin: 9px 0 5px; color: var(--sg-navy); font-size: 18px; }
.sg-rod-fact-grid small { color: var(--sg-muted); }
.sg-rod-materials { display: grid; border-top: 1px solid var(--sg-line); grid-template-columns: 1fr 1fr; }
.sg-rod-material { display: grid; min-width: 0; grid-template-columns: .78fr 1.22fr; }
.sg-rod-material:first-child { border-right: 1px solid var(--sg-line); }
.sg-rod-material figure { min-height: 420px; margin: 0; overflow: hidden; background: #dce5e7; }
.sg-rod-material figure img { width: 100%; height: 100%; object-fit: cover; }
.sg-rod-material > div { padding: 38px 34px; background: #fff; }
.sg-rod-material > div > span { color: #a97500; font-size: 11px; font-weight: 800; text-transform: uppercase; }
.sg-rod-material h3 { margin-top: 10px; font-size: 26px; }
.sg-rod-material dl { display: grid; margin-top: 26px; border-top: 1px solid var(--sg-line); }
.sg-rod-material dl div { display: grid; padding: 12px 0; border-bottom: 1px solid var(--sg-line); grid-template-columns: .8fr 1.2fr; gap: 14px; }
.sg-rod-material dt { color: var(--sg-muted); font-size: 12px; }
.sg-rod-material dd { margin: 0; color: var(--sg-navy); font-size: 13px; font-weight: 800; }
.sg-rod-planner-section { background: #fff; }
.sg-rod-planner { display: grid; overflow: hidden; border: 1px solid var(--sg-line); grid-template-columns: .72fr 1.28fr; }
.sg-rod-planner__controls { display: grid; align-content: center; padding: 42px; background: var(--sg-navy); gap: 18px; }
.sg-rod-planner__controls label { display: grid; color: #fff; font-size: 12px; font-weight: 800; gap: 7px; }
.sg-rod-planner__controls input,.sg-rod-planner__controls select { width: 100%; height: 46px; padding: 0 13px; border: 1px solid rgba(255,255,255,.3); border-radius: 0; background: #fff; color: var(--sg-navy); font: inherit; }
.sg-rod-planner__controls small { margin-top: 5px; color: #bcc9cc; line-height: 1.55; }
.sg-rod-planner__visual { display: grid; min-width: 0; padding: 54px; background-color: #f4f7f7; background-image: linear-gradient(#e1e7e8 1px,transparent 1px),linear-gradient(90deg,#e1e7e8 1px,transparent 1px); background-size: 25px 25px; }
.sg-rod-planner__rod { position: relative; align-self: center; width: 86%; height: 88px; margin: 0 auto 52px; border: 2px solid #315965; border-radius: 44px; background: linear-gradient(180deg,#fff,rgba(126,190,205,.34) 48%,rgba(49,89,101,.18)); box-shadow: 0 18px 28px rgba(20,53,61,.15); }
.sg-rod-planner__rod::before,.sg-rod-planner__rod::after { position: absolute; top: -2px; width: 86px; height: 88px; border: 2px solid #315965; border-radius: 50%; background: rgba(220,241,245,.86); content: ""; }
.sg-rod-planner__rod::before { left: -2px; }
.sg-rod-planner__rod::after { right: -2px; }
.sg-rod-planner__rod span { position: absolute; z-index: 2; right: 0; bottom: -32px; left: 0; color: var(--sg-navy); font-size: 12px; font-weight: 800; text-align: center; }
.sg-rod-planner__outputs { display: grid; border-top: 1px solid #bcc8cb; border-left: 1px solid #bcc8cb; grid-template-columns: repeat(3,minmax(0,1fr)); }
.sg-rod-planner__outputs > div { padding: 20px; border-right: 1px solid #bcc8cb; border-bottom: 1px solid #bcc8cb; background: rgba(255,255,255,.82); }
.sg-rod-planner__outputs span,.sg-rod-planner__outputs strong { display: block; }
.sg-rod-planner__outputs span { color: #a97500; font-size: 10px; font-weight: 800; text-transform: uppercase; }
.sg-rod-planner__outputs strong { margin-top: 8px; color: var(--sg-navy); font-size: 18px; }
.sg-rod-planner__outputs b { font-size: 27px; }
.sg-rod-end-tool { overflow: hidden; border: 1px solid rgba(255,255,255,.2); }
.sg-rod-end-tool__buttons { display: grid; border-bottom: 1px solid rgba(255,255,255,.2); background: #20363d; grid-template-columns: repeat(5,minmax(0,1fr)); }
.sg-rod-end-tool__buttons button { display: grid; min-height: 128px; place-items: center; padding: 17px; border: 0; border-right: 1px solid rgba(255,255,255,.16); background: transparent; color: #fff; cursor: pointer; gap: 10px; }
.sg-rod-end-tool__buttons button:last-child { border-right: 0; }
.sg-rod-end-tool__buttons button[aria-pressed="true"],.sg-rod-end-tool__buttons button:hover { background: rgba(233,169,6,.16); box-shadow: inset 0 -4px 0 var(--sg-gold); }
.sg-rod-end-tool__buttons i { display: block; width: 72px; height: 26px; border: 2px solid #9cc0c8; background: rgba(255,255,255,.12); }
.sg-rod-end-tool__buttons .is-cut { border-right-style: dashed; }
.sg-rod-end-tool__buttons .is-ground { border-right-width: 6px; }
.sg-rod-end-tool__buttons .is-polished { box-shadow: inset -12px 0 12px rgba(255,255,255,.75); }
.sg-rod-end-tool__buttons .is-chamfered { clip-path: polygon(0 0,88% 0,100% 50%,88% 100%,0 100%); }
.sg-rod-end-tool__buttons .is-rounded { border-radius: 0 15px 15px 0; }
.sg-rod-end-tool__buttons span { font-size: 12px; font-weight: 800; }
.sg-rod-end-tool__stage { display: grid; min-height: 370px; background: #fff; grid-template-columns: 1.15fr .85fr; }
.sg-rod-end-model { position: relative; align-self: center; width: 70%; height: 108px; margin: auto; border: 3px solid #315965; background: linear-gradient(180deg,#fff,rgba(126,190,205,.35) 48%,rgba(49,89,101,.18)); transition: border-radius .25s,clip-path .25s,box-shadow .25s; }
.sg-rod-end-model::before { position: absolute; top: -3px; left: -3px; width: 105px; height: 108px; border: 3px solid #315965; border-radius: 50%; background: rgba(220,241,245,.88); content: ""; }
.sg-rod-end-model span { position: absolute; bottom: -30px; color: var(--sg-muted); font-size: 11px; font-weight: 800; }
.sg-rod-end-model span:first-child { left: 0; }
.sg-rod-end-model span:last-child { right: 0; }
.sg-rod-end-model.is-cut { border-right-style: dashed; }
.sg-rod-end-model.is-ground { border-right-width: 12px; }
.sg-rod-end-model.is-polished { box-shadow: inset -55px 0 38px rgba(255,255,255,.9); }
.sg-rod-end-model.is-chamfered { clip-path: polygon(0 0,92% 0,100% 18%,100% 82%,92% 100%,0 100%); }
.sg-rod-end-model.is-rounded { border-radius: 0 54px 54px 0; }
.sg-rod-end-tool__stage article { display: grid; align-content: center; padding: 48px; border-left: 1px solid var(--sg-line); }
.sg-rod-end-tool__stage article > span { color: #a97500; font-size: 11px; font-weight: 800; text-transform: uppercase; }
.sg-rod-end-tool__stage h3 { margin-top: 10px; font-size: 29px; }
.sg-rod-end-tool__stage strong { margin-top: 18px; padding-top: 18px; border-top: 1px solid var(--sg-line); color: var(--sg-navy); font-size: 13px; line-height: 1.55; }
.sg-rod-stage-layout { display: grid; grid-template-columns: .75fr 1.25fr; gap: 72px; }
.sg-rod-stage-layout h2 { font-size: 39px; }
.sg-rod-stage-image { height: 235px; margin: 30px 0 0; overflow: hidden; }
.sg-rod-stage-image img { width: 100%; height: 100%; object-fit: cover; }
.sg-rod-stage-rail { position: relative; display: grid; margin: 0; list-style: none; gap: 0; }
.sg-rod-stage-rail::before { position: absolute; top: 0; bottom: 0; left: 30px; width: 1px; background: #aebdc1; content: ""; }
.sg-rod-stage-rail li { position: relative; display: grid; min-height: 132px; padding: 22px 24px 22px 86px; border-bottom: 1px solid var(--sg-line); background: #fff; }
.sg-rod-stage-rail li > span { position: absolute; z-index: 2; top: 26px; left: 12px; display: grid; width: 38px; height: 38px; place-items: center; background: var(--sg-gold); color: var(--sg-navy); font-size: 11px; font-weight: 900; }
.sg-rod-stage-rail strong { display: block; margin-bottom: 6px; color: var(--sg-navy); font-size: 18px; }
.sg-rod-stage-rail p { margin: 0; font-size: 13px; }
.sg-rod-machining { display: grid; align-items: center; grid-template-columns: .92fr 1.08fr; gap: 70px; }
.sg-rod-machining figure { min-height: 470px; margin: 0; overflow: hidden; background: #e4e8e9; }
.sg-rod-machining figure img { width: 100%; height: 100%; object-fit: cover; }
.sg-rod-machining h2 { font-size: 40px; }
.sg-rod-part-chips { display: flex; flex-wrap: wrap; margin: 28px 0; gap: 8px; }
.sg-rod-part-chips span { padding: 10px 13px; border: 1px solid #9eb0b5; background: #f2f5f5; color: var(--sg-navy); font-size: 12px; font-weight: 800; }
.sg-rod-qc-bench { display: grid; border: 1px solid rgba(255,255,255,.2); background: #20363d; grid-template-columns: 1.2fr .8fr; }
.sg-rod-qc-bench__diagram { position: relative; min-height: 470px; overflow: hidden; background-image: linear-gradient(rgba(255,255,255,.055) 1px,transparent 1px),linear-gradient(90deg,rgba(255,255,255,.055) 1px,transparent 1px); background-size: 27px 27px; }
.sg-rod-qc-line { position: absolute; top: 165px; right: 70px; left: 70px; height: 70px; border: 2px solid #9dc0c8; border-radius: 35px; background: rgba(131,195,208,.2); }
.sg-rod-qc-line i { position: absolute; top: -20px; bottom: -20px; width: 2px; background: var(--sg-gold); }
.sg-rod-qc-line i:nth-child(1) { left: 5%; }.sg-rod-qc-line i:nth-child(2) { left: 27%; }.sg-rod-qc-line i:nth-child(3) { left: 50%; }.sg-rod-qc-line i:nth-child(4) { left: 73%; }.sg-rod-qc-line i:nth-child(5) { left: 95%; }
.sg-rod-qc-line span { position: absolute; right: 0; bottom: -82px; left: 0; padding-top: 14px; border-top: 3px solid #a6b7bb; color: #fff; font-size: 11px; font-weight: 800; text-align: center; }
.sg-rod-qc-points { position: absolute; top: 115px; right: 64px; left: 64px; display: grid; grid-template-columns: repeat(5,1fr); }
.sg-rod-qc-points b { color: var(--sg-gold); font-size: 10px; text-align: center; }
.sg-rod-qc-bow { position: absolute; right: 95px; bottom: 54px; left: 95px; height: 55px; border-top: 2px dashed #d56e4c; border-radius: 50%; color: #dbe5e7; font-size: 11px; text-align: center; }
.sg-rod-qc-bow span { position: relative; top: 22px; }
.sg-rod-qc-list { display: grid; border-left: 1px solid rgba(255,255,255,.2); grid-template-columns: 1fr 1fr; }
.sg-rod-qc-list > div { min-height: 150px; padding: 24px; border-right: 1px solid rgba(255,255,255,.18); border-bottom: 1px solid rgba(255,255,255,.18); }
.sg-rod-qc-list span,.sg-rod-qc-list strong { display: block; }
.sg-rod-qc-list span { margin-bottom: 10px; color: var(--sg-gold); font-size: 10px; font-weight: 800; text-transform: uppercase; }
.sg-rod-qc-list strong { color: #fff; font-size: 13px; line-height: 1.55; }
.sg-rod-application-layout { display: grid; align-items: start; grid-template-columns: .72fr 1.28fr; gap: 62px; }
.sg-rod-application-layout h2 { font-size: 37px; }
.sg-rod-application-layout figure { height: 235px; margin: 28px 0 0; overflow: hidden; }
.sg-rod-application-layout figure img { width: 100%; height: 100%; object-fit: cover; }
.sg-rod-comparison { display: grid; border-top: 1px solid var(--sg-line); border-left: 1px solid var(--sg-line); }
.sg-rod-comparison > div { display: grid; grid-template-columns: 1.1fr .95fr .95fr; }
.sg-rod-comparison > div > * { display: grid; min-height: 68px; align-items: center; padding: 15px 20px; border-right: 1px solid var(--sg-line); border-bottom: 1px solid var(--sg-line); }
.sg-rod-comparison__labels > * { min-height: 78px !important; background: var(--sg-navy); color: #fff; }
.sg-rod-comparison b { color: var(--sg-muted); font-size: 13px; font-weight: 600; }
.sg-rod-comparison .is-preferred { border-left: 4px solid var(--sg-gold); background: #f4f7f7; color: var(--sg-navy); font-weight: 800; }

@media (max-width: 1000px) {
  .sg-rod-intro__layout,.sg-rod-materials,.sg-rod-stage-layout,.sg-rod-machining,.sg-rod-qc-bench,.sg-rod-application-layout { grid-template-columns: 1fr; }
  .sg-rod-material:first-child { border-right: 0; border-bottom: 1px solid var(--sg-line); }
  .sg-rod-planner { grid-template-columns: .9fr 1.1fr; }
  .sg-rod-qc-list { border-top: 1px solid rgba(255,255,255,.2); border-left: 0; }
}

@media (max-width: 720px) {
  .sg-rod-intro__layout { gap: 35px; }
  .sg-rod-intro__copy h2,.sg-rod-stage-layout h2,.sg-rod-machining h2,.sg-rod-application-layout h2 { font-size: 29px; }
  .sg-rod-specimen { min-height: 285px; }
  .sg-rod-specimen__body { top: 112px; right: 32px; left: 32px; height: 64px; border-radius: 32px; }
  .sg-rod-specimen__body::before,.sg-rod-specimen__body::after { width: 62px; height: 64px; }
  .sg-rod-specimen__body span { top: 23px; font-size: 10px; }
  .sg-rod-specimen__length { top: 60px; right: 45px; left: 45px; }
  .sg-rod-specimen__diameter { top: 103px; right: -12px; }
  .sg-rod-fact-grid { margin-top: 38px; grid-template-columns: 1fr 1fr; }
  .sg-rod-fact-grid > div { min-height: 128px; padding: 18px; }
  .sg-rod-material { grid-template-columns: 1fr; }
  .sg-rod-material figure { min-height: 250px; }
  .sg-rod-material > div { padding: 28px 22px; }
  .sg-rod-planner { grid-template-columns: 1fr; }
  .sg-rod-planner__controls,.sg-rod-planner__visual { padding: 28px 22px; }
  .sg-rod-planner__rod { width: 82%; height: 64px; margin-top: 30px; }
  .sg-rod-planner__rod::before,.sg-rod-planner__rod::after { width: 62px; height: 64px; }
  .sg-rod-planner__outputs { grid-template-columns: 1fr; }
  .sg-rod-end-tool__buttons { grid-template-columns: repeat(2,1fr); }
  .sg-rod-end-tool__buttons button { min-height: 105px; }
  .sg-rod-end-tool__stage { grid-template-columns: 1fr; }
  .sg-rod-end-model { width: 72%; height: 76px; margin: 70px auto; }
  .sg-rod-end-model::before { width: 73px; height: 76px; }
  .sg-rod-end-tool__stage article { padding: 28px 22px; border-top: 1px solid var(--sg-line); border-left: 0; }
  .sg-rod-machining figure { min-height: 280px; }
  .sg-rod-qc-bench__diagram { min-height: 330px; }
  .sg-rod-qc-line { right: 28px; left: 28px; }
  .sg-rod-qc-points { right: 22px; left: 22px; }
  .sg-rod-qc-bow { right: 45px; left: 45px; }
  .sg-rod-qc-list { grid-template-columns: 1fr; }
  .sg-rod-qc-list > div { min-height: 0; }
  .sg-rod-comparison { overflow-x: auto; }
  .sg-rod-comparison > div { min-width: 680px; }
}

*, *::before, *::after { box-sizing: border-box; }
html { scroll-behavior: smooth; overflow-x: hidden; }
body { margin: 0; overflow-x: hidden; background: var(--sg-white); color: var(--sg-text); font-family: Arial, "Helvetica Neue", sans-serif; font-size: 16px; line-height: 1.6; }
body.nav-open, body.inquiry-popup-open { overflow: hidden; }
.sg-native-theme .elementor-location-header,
.sg-native-theme .elementor-location-footer { display: none !important; }
a { color: inherit; text-decoration: none; }
img { display: block; max-width: 100%; height: auto; }
button, input, textarea, select { font: inherit; }
button { color: inherit; }
p { margin: 0 0 20px; }
body.sg-native-theme,
body.sg-native-theme button,
body.sg-native-theme input,
body.sg-native-theme textarea,
body.sg-native-theme select { font-family: Arial, "Helvetica Neue", sans-serif; }
body.sg-native-theme h1,
body.sg-native-theme h2,
body.sg-native-theme h3,
body.sg-native-theme h4,
body.sg-native-theme h5,
body.sg-native-theme h6 { margin: 0 0 18px; color: var(--sg-navy); font-family: Arial, "Helvetica Neue", sans-serif; font-weight: 700; line-height: 1.16; letter-spacing: 0; }
h1 { font-size: 52px; }
h2 { font-size: 36px; }
h3 { font-size: 21px; }
h4 { font-size: 18px; }
ul, ol { margin: 0; padding: 0; }
.wrap { width: min(var(--sg-content-width), calc(100% - 48px)); margin-inline: auto; }
.wide-wrap { width: min(var(--sg-wide), calc(100% - 48px)); margin-inline: auto; }
.section { padding: 78px 0; }
.overline { display: block; margin-bottom: 12px; color: var(--sg-gold); font-size: 14px; font-weight: 700; text-transform: uppercase; }
.text-link { color: var(--sg-teal); font-weight: 700; }
.skip-link { position: fixed; z-index: 9999; top: 8px; left: 8px; padding: 10px 14px; background: var(--sg-white); transform: translateY(-160%); }
.skip-link:focus { transform: translateY(0); }

.button { display: inline-flex; min-height: 44px; align-items: center; justify-content: center; padding: 11px 22px; border: 1px solid var(--sg-gold); border-radius: 0; background: var(--sg-gold); color: var(--sg-navy); font-weight: 700; line-height: 1.2; cursor: pointer; transition: background-color .2s, color .2s, transform .2s; }
.button:hover, .button:focus-visible { background: var(--sg-gold-hover); transform: translateY(-1px); }
.button--outline-dark { border-color: var(--sg-navy); background: transparent; color: var(--sg-navy); }
.button--outline-dark:hover { background: var(--sg-navy); color: var(--sg-white); }
.button-row { display: flex; flex-wrap: wrap; gap: 12px; }

.announcement { display: flex; min-height: 36px; align-items: center; justify-content: center; padding: 7px 20px; background: #050505; color: var(--sg-white); font-size: 14px; text-align: center; }
.site-header { position: relative; z-index: 100; border-bottom: 1px solid #edf0f1; background: var(--sg-white); }
.site-header.is-fixed { position: sticky; top: 0; box-shadow: 0 5px 22px rgba(16, 35, 41, .1); }
.admin-bar .site-header.is-fixed { top: 32px; }
.header-main { min-height: 94px; }
.header-inner { display: grid; min-height: 94px; align-items: center; grid-template-columns: minmax(220px, 300px) minmax(610px, 1fr) minmax(190px, auto); gap: 28px; }
.sg-brand { display: inline-flex; min-width: 0; align-items: center; color: #0d4e56; font-size: 25px; font-weight: 800; }
.sg-brand img { width: min(100%, 280px); max-height: 70px; object-fit: contain; object-position: left center; }
.sg-brand img + span { display: none; }
.desktop-nav { display: flex; min-width: 0; align-items: center; justify-content: center; gap: clamp(18px, 1.6vw, 30px); }
.desktop-nav > a, .sg-nav-item > button { display: flex; min-height: 42px; align-items: center; padding: 8px 0; border: 0; background: transparent; color: #11191c; font-weight: 700; white-space: nowrap; cursor: pointer; }
.sg-nav-item > button::after { width: 7px; height: 7px; margin: -4px 0 0 8px; border-right: 2px solid currentColor; border-bottom: 2px solid currentColor; content: ""; transform: rotate(45deg); }
.desktop-nav > a:hover, .sg-nav-item > button:hover, .sg-nav-item:hover > button { color: var(--sg-gold); }
.sg-nav-item { position: relative; }
.sg-dropdown { position: absolute; visibility: hidden; top: calc(100% + 17px); left: -24px; display: grid; width: 260px; padding: 16px; border-top: 3px solid var(--sg-gold); background: var(--sg-white); box-shadow: var(--sg-shadow); opacity: 0; transform: translateY(8px); transition: opacity .18s, transform .18s, visibility .18s; }
.sg-dropdown a { padding: 10px 12px; border-bottom: 1px solid #edf0f1; color: var(--sg-text); font-size: 14px; }
.sg-dropdown a:last-child { border-bottom: 0; }
.sg-dropdown a:hover { background: var(--sg-light); color: var(--sg-teal); }
.sg-dropdown--wide { width: 300px; }
.sg-dropdown__all { color: var(--sg-gold) !important; font-weight: 800; }
.sg-nav-item:hover > .sg-dropdown, .sg-nav-item:focus-within > .sg-dropdown, .sg-nav-item.is-open > .sg-dropdown { visibility: visible; opacity: 1; transform: translateY(0); }
.sg-nav-item--mega { position: static; }
.sg-mega-menu { position: absolute; visibility: hidden; top: 100%; right: max(20px, calc((100vw - var(--sg-wide)) / 2)); left: max(20px, calc((100vw - var(--sg-wide)) / 2)); border-top: 3px solid var(--sg-gold); background: var(--sg-white); box-shadow: var(--sg-shadow); opacity: 0; transform: translateY(8px); transition: opacity .18s, transform .18s, visibility .18s; }
.sg-nav-item--mega:hover .sg-mega-menu, .sg-nav-item--mega:focus-within .sg-mega-menu, .sg-nav-item--mega.is-open .sg-mega-menu { visibility: visible; opacity: 1; transform: translateY(0); }
.sg-mega-head { display: flex; align-items: center; justify-content: space-between; padding: 18px 24px; border-bottom: 1px solid var(--sg-line); background: var(--sg-light); }
.sg-mega-head div { display: grid; }
.sg-mega-head strong { color: var(--sg-navy); font-size: 19px; }
.sg-mega-head span { color: var(--sg-muted); font-size: 13px; }
.sg-mega-head > a { color: var(--sg-teal); font-size: 14px; font-weight: 800; }
.sg-mega-body { display: grid; min-height: 330px; grid-template-columns: 310px 1fr; }
.sg-mega-tabs { display: grid; align-content: start; padding: 14px 0; border-right: 1px solid var(--sg-line); background: #f3f5f5; }
.sg-mega-tabs button { padding: 11px 22px; border: 0; border-left: 3px solid transparent; background: transparent; color: var(--sg-text); font-size: 14px; font-weight: 700; text-align: left; cursor: pointer; }
.sg-mega-tabs button[aria-selected="true"], .sg-mega-tabs button:hover { border-left-color: var(--sg-gold); background: var(--sg-white); color: var(--sg-teal); }
.sg-mega-panels { padding: 30px 34px; }
.sg-mega-panel h2 { margin-bottom: 20px; font-size: 24px; }
.sg-mega-links { display: grid; grid-template-columns: repeat(3, minmax(0, 1fr)); gap: 2px 26px; }
.sg-mega-links a { display: flex; min-height: 48px; align-items: center; padding: 10px 0; border-bottom: 1px solid #edf0f1; font-size: 14px; }
.sg-mega-links a::before { width: 6px; height: 6px; margin-right: 10px; background: var(--sg-gold); content: ""; }
.sg-mega-links a:hover { color: var(--sg-teal); }
.header-actions { display: flex; align-items: center; justify-content: flex-end; gap: 14px; }
.header-phone { display: grid; line-height: 1.25; white-space: nowrap; }
.header-phone small { color: var(--sg-muted); font-size: 11px; }
.header-phone strong { color: var(--sg-navy); font-size: 14px; }
.menu-toggle { display: none; width: 44px; height: 44px; padding: 9px; border: 1px solid var(--sg-navy); background: var(--sg-white); cursor: pointer; }
.menu-toggle i { display: block; width: 100%; height: 2px; margin: 5px 0; background: var(--sg-navy); }

.site-content { min-height: 50vh; }
.sg-native-page { width: 100%; }
.sg-layout { --sg-width: 100%; --sg-width-tablet: var(--sg-width); --sg-width-mobile: var(--sg-width-tablet); --sg-min-height: auto; --sg-min-height-tablet: var(--sg-min-height); --sg-min-height-mobile: var(--sg-min-height-tablet); --sg-direction: column; --sg-flex-wrap: nowrap; --sg-align: stretch; --sg-justify: flex-start; --sg-gap: 0; --sg-gap-tablet: var(--sg-gap); --sg-gap-mobile: var(--sg-gap-tablet); --sg-margin: 0; --sg-margin-tablet: var(--sg-margin); --sg-margin-mobile: var(--sg-margin-tablet); --sg-padding: 0; --sg-padding-tablet: var(--sg-padding); --sg-padding-mobile: var(--sg-padding-tablet); --sg-max: var(--sg-content-width); position: relative; display: flex; width: var(--sg-width); min-width: 0; min-height: var(--sg-min-height); flex: 0 0 auto; flex-flow: var(--sg-direction) var(--sg-flex-wrap); align-items: var(--sg-align); justify-content: var(--sg-justify); gap: var(--sg-gap); margin: var(--sg-margin); padding: var(--sg-padding); background-position: center; background-size: cover; }
.sg-layout[style*="--sg-direction:row"] > .sg-layout { flex-basis: var(--sg-width, auto); }
.sg-layout[style*="--sg-direction:row"] > .sg-layout:not([style*="--sg-width"]) { width: auto; flex: 1 1 0; }
.sg-layout--boxed { width: min(var(--sg-max), calc(100% - 48px)); max-width: var(--sg-max); margin-right: auto; margin-left: auto; }
.sg-layout:not(.sg-layout--depth-0) { max-width: 100%; }
.sg-layout--depth-0 > .sg-layout { width: min(var(--sg-width, 100%), calc(100% - 48px)); max-width: min(var(--sg-max, var(--sg-content-width)), var(--sg-content-width)); margin-right: auto; margin-left: auto; }
.sg-layout > * { position: relative; z-index: 1; min-width: 0; }
.sg-layout__video { position: absolute; z-index: 0; inset: 0; width: 100%; height: 100%; object-fit: cover; }
.sg-layout__overlay { position: absolute; z-index: 0; inset: 0; background: var(--sg-overlay, rgba(23,40,46,.55)); }
.sg-heading { max-width: 100%; margin-bottom: 18px; color: inherit; font-size: var(--sg-font-size, inherit); overflow-wrap: anywhere; }
.sg-rich-text { max-width: 100%; color: inherit; font-size: var(--sg-font-size, inherit); }
.sg-rich-text > :last-child { margin-bottom: 0; }
.sg-rich-text ul, .sg-rich-text ol { margin: 0 0 20px 22px; }
.sg-rich-text a { color: var(--sg-teal); text-decoration: underline; text-underline-offset: 3px; }
.sg-rich-text table { width: 100%; margin: 20px 0; border-collapse: collapse; background: var(--sg-white); }
.sg-rich-text th, .sg-rich-text td { padding: 12px 14px; border: 1px solid var(--sg-line); text-align: left; vertical-align: top; }
.sg-rich-text th { background: var(--sg-navy); color: var(--sg-white); }
.sg-button-wrap { display: flex; }
.sg-image { width: 100%; margin: 0; overflow: hidden; }
.sg-image img { width: 100%; height: var(--sg-img-height, auto); object-fit: var(--sg-object-fit, cover); }
.sg-feature-card-link { display: block; height: 100%; }
.sg-feature-card { height: 100%; overflow: hidden; border: 1px solid var(--sg-line); background: var(--sg-white); }
.sg-feature-card__media { aspect-ratio: 4 / 3; overflow: hidden; background: var(--sg-gray); }
.sg-feature-card__media img { width: 100%; height: 100%; object-fit: cover; }
.sg-feature-card--icon { padding: 34px 28px; border: 0; background: transparent; text-align: center; }
.sg-feature-card--icon h3 { margin: 16px 0 10px; }
.sg-feature-card--icon p { margin: 0; }
.sg-feature-card__icon { display: grid; width: 58px; height: 58px; margin: 0 auto; place-items: center; }
.sg-feature-card__icon img { width: 100%; height: 100%; object-fit: contain; }
.sg-feature-card h3 { margin: 22px 22px 10px; }
.sg-feature-card p { margin: 0 22px 24px; color: var(--sg-muted); }
.sg-feature-card__mark { display: block; width: 42px; height: 42px; margin: 24px 22px 8px; border: 2px solid var(--sg-teal); }

/* Complete cards reconstructed from legacy editor containers. */
.sg-card-grid { display: grid; margin-bottom: 58px; align-items: stretch; gap: 26px; }
.sg-card-grid--media { grid-template-columns: repeat(3, minmax(0, 1fr)); }
.sg-card-grid--text { grid-template-columns: repeat(3, minmax(0, 1fr)); }
.sg-card-grid--text.sg-card-grid--count-4 { grid-template-columns: repeat(4, minmax(0, 1fr)); }
.sg-card-grid--text.sg-card-grid--count-5 { grid-template-columns: repeat(5, minmax(0, 1fr)); }
.sg-card-grid > .sg-card { width: 100%; max-width: none; min-height: 100%; margin: 0; }
.sg-card { display: flex; overflow: hidden; border: 1px solid var(--sg-line); background: var(--sg-white); transition: border-color .2s, box-shadow .2s, transform .2s; }
.sg-card:hover { border-color: #bcc7ca; box-shadow: 0 10px 26px rgba(19, 40, 46, .1); transform: translateY(-3px); }
.sg-card--media { flex-direction: column; }
.sg-card--media > .sg-image { width: 100%; margin: 0; background: var(--sg-gray); }
.sg-card--media > .sg-image img { width: 100%; object-fit: cover; transition: transform .28s ease; }
.sg-card--media:hover > .sg-image img { transform: scale(1.025); }
.sg-card--media > .sg-heading { margin: 0; padding: 22px 24px 8px; font-size: 20px; line-height: 1.25; }
.sg-card--media > .sg-rich-text { flex: 1 1 auto; margin: 0; padding: 0 24px 24px; color: var(--sg-muted); font-size: 15px; line-height: 1.55; }
.sg-card--media > .sg-button-wrap { padding: 0 24px 24px; }
.sg-card--text { min-height: 190px; padding: 28px 26px; flex-direction: column; }
.sg-card--text > .sg-heading { margin: 0 0 12px; color: var(--sg-navy); font-size: 19px; line-height: 1.25; }
.sg-card--text > .sg-rich-text { margin: 0; color: var(--sg-muted); font-size: 14px; line-height: 1.6; }
.sg-icon { display: inline-flex; width: 46px; height: 46px; align-items: center; justify-content: center; }
.sg-icon img { max-width: 100%; max-height: 100%; }
.sg-icon--plain { border: 2px solid currentColor; }
.sg-icon-list { display: grid; gap: 7px; list-style: none; }
.sg-icon-list li { position: relative; padding-left: 16px; }
.sg-icon-list li::before { position: absolute; top: .7em; left: 0; width: 6px; height: 6px; background: var(--sg-gold); content: ""; }
.sg-divider { width: 100%; margin: 20px 0; border: 0; border-top: 1px solid var(--sg-line); }
.sg-anchor { position: relative; top: -110px; }
.sg-breadcrumbs { color: var(--sg-muted); font-size: 14px; }
.sg-breadcrumbs__sep { margin: 0 10px; color: #a2abad; }
.sg-tabs { width: 100%; }
.sg-tab-list { display: flex; overflow-x: auto; border-bottom: 1px solid var(--sg-line); }
.sg-tab-list button { flex: 1 0 auto; padding: 14px 20px; border: 0; border-bottom: 3px solid transparent; background: var(--sg-light); font-weight: 700; cursor: pointer; }
.sg-tab-list button[aria-selected="true"] { border-bottom-color: var(--sg-gold); background: var(--sg-white); color: var(--sg-teal); }
.sg-tab-panel { padding: 26px; border: 1px solid var(--sg-line); border-top: 0; background: var(--sg-white); }
.sg-tab-panel[hidden] { display: none; }
.sg-market-card { display: flex; min-width: 220px; min-height: 260px; flex: 1 1 calc(25% - 18px); align-items: flex-end; padding: 24px; background-color: var(--sg-teal); background-position: center; background-size: cover; }
.sg-market-card h3 { margin: 0; color: var(--sg-white); }
.sg-media-carousel { position: relative; width: 100%; overflow: hidden; }
.sg-media-track { display: flex; transition: transform .35s ease; }
.sg-media-slide { min-width: 100%; aspect-ratio: 16 / 9; margin: 0; overflow: hidden; }
.sg-media-slide img { width: 100%; height: 100%; object-fit: cover; }
.sg-media-carousel > button { position: absolute; z-index: 3; top: 50%; width: 44px; height: 44px; border: 0; background: rgba(23,40,46,.86); color: var(--sg-white); cursor: pointer; transform: translateY(-50%); }
.sg-media-carousel [data-carousel-prev] { left: 14px; }
.sg-media-carousel [data-carousel-next] { right: 14px; }
.sg-testimonials { position: relative; width: 100%; }
.sg-testimonial { display: none; max-width: 850px; margin: 0 auto; color: var(--sg-white); text-align: center; }
.sg-testimonial.is-active { display: block; }
.sg-testimonial p { font-size: 21px; line-height: 1.7; }
.sg-testimonial footer { display: grid; }
.sg-testimonial footer strong { color: var(--sg-gold); }
.sg-testimonial-controls { display: flex; justify-content: center; gap: 10px; margin-top: 26px; }
.sg-testimonial-controls button { width: 42px; height: 42px; border: 1px solid rgba(255,255,255,.55); background: transparent; color: var(--sg-white); cursor: pointer; }
.sg-map-link { display: inline-flex; padding: 14px 18px; border: 1px solid var(--sg-line); color: var(--sg-teal); font-weight: 700; }
.sg-technical-module { width: 100%; overflow-x: auto; }

.sg-inquiry-form { display: grid; width: 100%; grid-template-columns: repeat(2, minmax(0, 1fr)); gap: 16px 14px; }
.sg-form-field { display: grid; align-content: start; gap: 6px; }
.sg-form-field--full { grid-column: 1 / -1; }
.sg-form-field label { color: var(--sg-navy); font-size: 13px; font-weight: 700; }
.sg-form-field label span { color: #c8352c; }
.sg-form-field input, .sg-form-field textarea, .sg-form-field select { width: 100%; min-height: 46px; padding: 10px 13px; border: 1px solid #ced4d6; border-radius: 0; background: #f0f0f0; color: var(--sg-text); }
.sg-form-field textarea { resize: vertical; }
.sg-form-field input:focus, .sg-form-field textarea:focus { border-color: var(--sg-gold); outline: 2px solid rgba(233,169,6,.18); }
.sg-honeypot { position: absolute !important; left: -9999px !important; width: 1px !important; height: 1px !important; }
.sg-form-status { margin: 8px 0 0; font-size: 13px; }
.sg-form-status.is-success { color: #157447; }
.sg-form-status.is-error { color: #b42318; }
.sg-contact-panel { max-width: 560px; }
.sg-contact-panel h2 { font-size: 30px; }
.sg-contact-panel > p { color: var(--sg-muted); }
.sg-contact-panel dl { display: grid; gap: 15px; margin: 26px 0 0; }
.sg-contact-panel dl div { position: relative; padding-left: 52px; }
.sg-contact-panel dl div::before { position: absolute; top: 2px; left: 0; display: grid; width: 36px; height: 36px; place-items: center; background: var(--sg-gold); color: var(--sg-white); content: "+"; font-weight: 800; }
.sg-contact-panel dt { color: var(--sg-navy); font-weight: 800; }
.sg-contact-panel dd { margin: 0; color: var(--sg-muted); }
.sg-fixed-inquiry { display: grid; width: min(var(--sg-content-width), calc(100% - 48px)); max-width: var(--sg-content-width); margin-right: auto; margin-left: auto; padding: 76px 0; grid-template-columns: minmax(0, 1.08fr) minmax(360px, .92fr); gap: 72px; }
.sg-fixed-inquiry > .sg-inquiry-form { align-self: start; }
.sg-fixed-inquiry > .sg-contact-panel { align-self: start; max-width: none; }
.sg-has-inquiry:not(.sg-fixed-inquiry) .sg-feature-card--icon { display: grid; min-height: 0; padding: 10px 0; align-items: center; grid-template-columns: 38px minmax(0, 1fr); grid-template-rows: auto auto; column-gap: 14px; text-align: left; }
.sg-has-inquiry:not(.sg-fixed-inquiry) .sg-feature-card--icon .sg-feature-card__mark { width: 36px; height: 36px; margin: 0; grid-row: 1 / 3; background: var(--sg-gold); border-color: var(--sg-gold); }
.sg-has-inquiry:not(.sg-fixed-inquiry) .sg-feature-card--icon h3 { margin: 0; font-size: 16px; }
.sg-has-inquiry:not(.sg-fixed-inquiry) .sg-feature-card--icon p { margin: 2px 0 0; font-size: 14px; }
.sg-inquiry-popup { position: fixed; z-index: 1000; visibility: hidden; inset: 0; display: grid; padding: 22px; place-items: center; background: rgba(4,15,19,.68); opacity: 0; transition: opacity .2s, visibility .2s; }
.sg-inquiry-popup.is-open { visibility: visible; opacity: 1; }
.sg-inquiry-popup__panel { position: relative; width: min(560px, 100%); max-height: calc(100vh - 44px); padding: 32px; overflow-y: auto; background: var(--sg-white); box-shadow: var(--sg-shadow); }
.sg-inquiry-popup__panel > h2 { margin-bottom: 8px; }
.sg-inquiry-popup__panel > p { color: var(--sg-muted); }
.sg-inquiry-popup__close { position: absolute; top: 12px; right: 12px; display: grid; width: 38px; height: 38px; place-items: center; border: 0; background: var(--sg-light); font-size: 26px; cursor: pointer; }

.sg-page-hero { padding: 80px 0; background: var(--sg-teal); color: var(--sg-white); }
.sg-page-hero h1 { max-width: 960px; color: var(--sg-white); }
.sg-page-hero p { max-width: 840px; margin-bottom: 0; color: #e5ecee; }

/* Blog collection and technical article templates. */
.sg-blog-hero,.sg-article-hero { position: relative; display: grid; min-height: 320px; place-items: center; overflow: hidden; background-color: var(--sg-deep); background-position: center; background-size: cover; color: var(--sg-white); }
.sg-blog-hero::before,.sg-article-hero::before { position: absolute; inset: 0; background: linear-gradient(90deg,rgba(16,35,41,.94),rgba(16,35,41,.76)); content: ""; }
.sg-blog-hero .wrap,.sg-article-hero__content { position: relative; z-index: 1; }
.sg-article-hero__content { width: 100%; }
body.sg-native-theme .sg-blog-hero h1,body.sg-native-theme .sg-article-hero h1 { max-width: 930px; margin: 8px 0 16px; color: #fff; }
.sg-blog-hero h1 { font-size: 52px; }
.sg-blog-hero p { max-width: 760px; margin: 0; color: #d3dfe2; font-size: 17px; line-height: 1.65; }
.sg-blog-breadcrumb { border-bottom: 1px solid var(--sg-line); background: #f2f5f5; }
.sg-blog-breadcrumb ol { display: flex; min-height: 58px; align-items: center; margin: 0; padding: 0; color: var(--sg-muted); font-size: 13px; list-style: none; gap: 12px; }
.sg-blog-breadcrumb li + li::before { margin-right: 12px; color: var(--sg-gold); content: ">"; }
.sg-blog-breadcrumb a:hover { color: #a97500; }
.sg-blog-content { padding: 70px 0 86px; background: var(--sg-white); }
.sg-blog-layout { display: grid; align-items: start; grid-template-columns: minmax(0,2.15fr) minmax(270px,.85fr); gap: 42px; }
.sg-blog-main { min-width: 0; }
.sg-blog-post-grid { display: grid; grid-template-columns: repeat(2,minmax(0,1fr)); gap: 45px 24px; }
.sg-blog-card { min-width: 0; }
.sg-blog-card__media { display: grid; height: 255px; place-items: center; overflow: hidden; background: var(--sg-navy); color: rgba(255,255,255,.45); font-size: 19px; font-weight: 800; }
.sg-blog-card__media img { width: 100%; height: 100%; object-fit: cover; transition: transform .35s ease; }
.sg-blog-card:hover .sg-blog-card__media img { transform: scale(1.025); }
.sg-blog-card__body { padding: 22px 0 0; }
.sg-blog-card__meta { display: block; margin-bottom: 9px; color: #a97500; font-size: 11px; font-weight: 800; text-transform: uppercase; }
.sg-blog-card h2 { margin: 0 0 12px; font-size: 22px; line-height: 1.25; }
.sg-blog-card h2 a:hover { color: #a97500; }
.sg-blog-card p { margin: 0 0 14px; color: var(--sg-muted); font-size: 14px; line-height: 1.62; }
.sg-blog-read-more { color: var(--sg-navy); font-size: 13px; font-weight: 800; }
.sg-blog-read-more span { color: var(--sg-gold); }
.sg-blog-sidebar { position: sticky; top: 122px; padding: 31px 29px; border-top: 4px solid var(--sg-gold); background: #f1f4f4; }
.sg-blog-sidebar__group + .sg-blog-sidebar__group { margin-top: 33px; }
.sg-blog-sidebar .overline { font-size: 10px; }
.sg-blog-sidebar h2 { margin: 5px 0 16px; padding-bottom: 13px; border-bottom: 1px solid #cbd3d5; font-size: 24px; }
.sg-blog-sidebar ul { display: grid; margin: 0; padding: 0; list-style: none; gap: 2px; }
.sg-blog-sidebar li a { display: block; padding: 8px 0; color: var(--sg-muted); font-size: 13px; }
.sg-blog-sidebar li a:hover { color: #a97500; }
.sg-blog-sidebar__note { margin: 0; color: var(--sg-muted); font-size: 13px; line-height: 1.55; }
.sg-blog-sidebar__contact { margin: 32px -29px -31px; padding: 28px 29px 30px; background: var(--sg-navy); }
.sg-blog-sidebar__contact span { display: block; margin-bottom: 17px; color: #d7e0e2; font-size: 13px; line-height: 1.55; }
.sg-blog-sidebar__contact .button { width: 100%; text-align: center; }
.sg-blog-empty { min-height: 380px; padding: 58px; border: 1px solid var(--sg-line); background: #f7f8f8; }
.sg-blog-empty h2 { max-width: 620px; margin: 8px 0 18px; font-size: 34px; }
.sg-blog-empty p { max-width: 680px; color: var(--sg-muted); }
.sg-blog-empty .button { margin-top: 12px; }
.sg-blog-pagination { margin-top: 58px; }
.sg-blog-pagination .nav-links { display: flex; flex-wrap: wrap; justify-content: center; gap: 5px; }
.sg-blog-pagination .page-numbers { display: grid; min-width: 38px; height: 38px; place-items: center; padding: 0 11px; color: var(--sg-muted); font-size: 13px; }
.sg-blog-pagination .page-numbers:hover,.sg-blog-pagination .page-numbers.current { background: var(--sg-gold); color: var(--sg-navy); }

.sg-article-hero { min-height: 390px; text-align: center; }
.sg-article-hero::before { background: rgba(16,35,41,.82); }
.sg-article-hero__content { max-width: 1000px; padding: 64px 0; }
.sg-article-hero h1 { margin-inline: auto; font-size: 48px; line-height: 1.1; }
.sg-article-meta { display: flex; flex-wrap: wrap; justify-content: center; margin-top: 20px; color: #d3dfe2; font-size: 13px; gap: 9px 22px; }
.sg-article-meta a { color: var(--sg-gold); }
.sg-article-section { padding: 72px 0 88px; }
.sg-article-layout { display: grid; align-items: start; grid-template-columns: minmax(0,2.35fr) minmax(280px,.82fr); gap: 58px; }
.sg-article-body { min-width: 0; }
.sg-article-body > p:first-child { font-size: 17px; }
.sg-article-body h2 { margin: 48px 0 18px; scroll-margin-top: 130px; font-size: 32px; line-height: 1.18; }
.sg-article-body h2:first-child { margin-top: 0; }
.sg-article-body h3 { margin: 29px 0 12px; font-size: 22px; }
.sg-article-body p,.sg-article-body li { color: #565f62; line-height: 1.72; }
.sg-article-body ul,.sg-article-body ol { display: grid; margin: 15px 0 24px; padding-left: 23px; gap: 8px; }
.sg-article-body li::marker { color: #a97500; }
.sg-article-body img { max-width: 100%; height: auto; }
.sg-article-body figure { margin: 30px 0; }
.sg-article-body blockquote { margin: 28px 0; padding: 24px 28px; border-left: 4px solid var(--sg-gold); background: #f2f5f5; }
.sg-article-body table { display: block; width: 100%; margin: 26px 0 32px; overflow-x: auto; border-collapse: collapse; }
.sg-article-body th,.sg-article-body td { min-width: 145px; padding: 14px 16px; border: 1px solid var(--sg-line); text-align: left; vertical-align: top; }
.sg-article-body th { background: var(--sg-navy); color: var(--sg-white); }
.sg-article-body td { color: var(--sg-muted); font-size: 14px; }
.sg-article-sidebar { position: sticky; top: 122px; display: grid; align-content: start; gap: 24px; }
.sg-article-sidebar__box { padding: 26px; border-top: 3px solid var(--sg-gold); background: #f1f4f4; }
.sg-article-sidebar__box h2 { margin: 0 0 16px; padding-bottom: 13px; border-bottom: 1px solid #cbd3d5; font-size: 22px; }
.sg-article-toc { display: grid; margin: 0 0 20px; padding: 0; list-style: none; gap: 2px; }
.sg-article-toc:empty { display: none; }
.sg-article-toc a,.sg-article-sidebar__links a { display: block; padding: 7px 0; color: var(--sg-muted); font-size: 13px; line-height: 1.45; }
.sg-article-toc a:hover,.sg-article-sidebar__links a:hover { color: #a97500; }
.sg-article-toc li { border-bottom: 1px solid #d9dfe1; }
.sg-article-sidebar__links { margin: 0; padding: 0; list-style: none; }
.sg-article-sidebar__latest a { padding-bottom: 11px; border-bottom: 1px solid #d9dfe1; }
.sg-article-sidebar .button { margin-top: 8px; color: var(--sg-navy); }
.sg-article-author { display: grid; align-items: center; margin-top: 58px; padding: 30px 0; border-top: 1px solid var(--sg-line); border-bottom: 1px solid var(--sg-line); grid-template-columns: 104px 1fr; gap: 27px; }
.sg-article-author__mark { display: grid; width: 96px; height: 96px; place-items: center; background: var(--sg-navy); color: var(--sg-white); font-size: 22px; font-weight: 800; }
.sg-article-author span { color: #a97500; font-size: 10px; font-weight: 800; text-transform: uppercase; }
.sg-article-author h2 { margin: 4px 0 8px; font-size: 21px; }
.sg-article-author p { margin: 0; color: var(--sg-muted); font-size: 13px; }
.sg-post-grid { display: grid; grid-template-columns: repeat(3,minmax(0,1fr)); gap: 26px; }
.sg-pagination { grid-column: 1 / -1; }
.sg-empty-state { display: grid; min-height: 58vh; align-items: center; padding: 80px 0; }

.site-footer { padding: 66px 0 0; background: var(--sg-navy); color: #dce3e5; }
.footer-grid { display: grid; padding-bottom: 48px; grid-template-columns: 1.35fr repeat(3, 1fr); gap: 60px; }
.site-footer h2 { margin-bottom: 18px; color: var(--sg-white); font-size: 17px; text-transform: uppercase; }
.site-footer a { display: block; padding: 5px 0; color: #dce3e5; font-size: 14px; }
.site-footer a:hover { color: var(--sg-gold); }
.footer-brand p { max-width: 360px; margin: 20px 0; color: #aebbc0; }
.sg-brand--footer { display: inline-flex !important; color: var(--sg-white) !important; font-size: 27px !important; }
.footer-bottom { display: flex; min-height: 74px; align-items: center; justify-content: space-between; gap: 24px; border-top: 1px solid rgba(255,255,255,.15); color: #aebbc0; font-size: 13px; }
.back-top { position: fixed; z-index: 90; right: 24px; bottom: 24px; visibility: hidden; width: 44px; height: 44px; border: 0; background: var(--sg-gold); color: var(--sg-navy); opacity: 0; cursor: pointer; transition: opacity .2s, visibility .2s; }
.back-top.is-visible { visibility: visible; opacity: 1; }

@media (max-width: 1280px) {
  .header-inner { grid-template-columns: 220px minmax(560px, 1fr) auto; gap: 18px; }
  .header-phone { display: none; }
  .desktop-nav { gap: 18px; }
  .desktop-nav > a, .sg-nav-item > button { font-size: 14px; }
}

@media (max-width: 1080px) {
  .admin-bar .site-header.is-fixed { top: 46px; }
  .header-inner { grid-template-columns: 1fr auto auto; }
  .menu-toggle { display: block; order: 3; }
  .header-actions { order: 2; }
  .desktop-nav { position: fixed; z-index: 110; visibility: hidden; top: 0; right: 0; bottom: 0; display: block; width: min(430px, 92vw); padding: 92px 22px 30px; overflow-y: auto; background: var(--sg-white); box-shadow: -10px 0 34px rgba(16,35,41,.18); opacity: 0; transform: translateX(100%); transition: transform .22s, opacity .22s, visibility .22s; }
  .nav-open .desktop-nav { visibility: visible; opacity: 1; transform: translateX(0); }
  .desktop-nav > a, .sg-nav-item > button { width: 100%; min-height: 52px; justify-content: space-between; border-bottom: 1px solid var(--sg-line); font-size: 16px; }
  .sg-nav-item { position: static; }
  .sg-dropdown, .sg-mega-menu { position: static; visibility: visible; display: none; width: 100%; padding: 0 0 12px 14px; border: 0; box-shadow: none; opacity: 1; transform: none; }
  .sg-nav-item.is-open > .sg-dropdown, .sg-nav-item.is-open > .sg-mega-menu { display: block; }
  .sg-dropdown a { padding: 10px 8px; }
  .sg-mega-head { padding: 15px 0; background: transparent; }
  .sg-mega-head span { display: none; }
  .sg-mega-body { display: block; min-height: 0; }
  .sg-mega-tabs { display: flex; padding: 0 0 10px; overflow-x: auto; border: 0; background: transparent; gap: 6px; }
  .sg-mega-tabs button { min-width: 170px; padding: 9px 11px; border: 1px solid var(--sg-line); border-left: 1px solid var(--sg-line); }
  .sg-mega-tabs button[aria-selected="true"] { border-color: var(--sg-gold); }
  .sg-mega-panels { padding: 8px 0 12px; }
  .sg-mega-panel h2 { font-size: 18px; }
  .sg-mega-links { grid-template-columns: 1fr; }
  .sg-mega-links a { min-height: 42px; }
  .sg-layout { width: var(--sg-width-tablet, var(--sg-width, 100%)); min-height: var(--sg-min-height-tablet, var(--sg-min-height, auto)); flex-basis: auto; gap: var(--sg-gap-tablet, var(--sg-gap, 0)); margin: var(--sg-margin-tablet, var(--sg-margin, 0)); padding: var(--sg-padding-tablet, var(--sg-padding, 0)); }
  .sg-layout[style*="--sg-direction:row"] > .sg-layout { flex-basis: var(--sg-width-tablet, var(--sg-width, auto)); }
  .sg-fixed-inquiry { grid-template-columns: minmax(0, 1fr) minmax(320px, .82fr); gap: 42px; }
  .footer-grid { grid-template-columns: repeat(2, minmax(0, 1fr)); }
  .sg-post-grid { grid-template-columns: repeat(2, minmax(0, 1fr)); }
  .sg-blog-layout { grid-template-columns: minmax(0, 1fr); }
  .sg-blog-sidebar { position: static; }
  .sg-article-layout { grid-template-columns: minmax(0, 1fr); }
  .sg-article-sidebar { position: static; grid-template-columns: repeat(2, minmax(0, 1fr)); }
  .sg-card-grid--media, .sg-card-grid--text, .sg-card-grid--text.sg-card-grid--count-4, .sg-card-grid--text.sg-card-grid--count-5 { grid-template-columns: repeat(2, minmax(0, 1fr)); }
}

@media (max-width: 782px) {
  .admin-bar .site-header.is-fixed { top: 0; }
}

@media (max-width: 720px) {
  h1 { font-size: 38px; }
  h2 { font-size: 29px; }
  .wrap, .wide-wrap, .sg-layout--boxed, .sg-layout--depth-0 > .sg-layout { width: min(100% - 32px, var(--sg-max, var(--sg-content-width))); }
  .announcement { min-height: 32px; font-size: 12px; }
  .header-main, .header-inner { min-height: 76px; }
  .header-inner { grid-template-columns: 1fr auto; }
  .sg-brand img { max-width: 210px; max-height: 54px; }
  .header-actions { display: none; }
  .menu-toggle { order: initial; }
  .sg-layout { width: var(--sg-width-mobile, 100%); min-height: var(--sg-min-height-mobile, var(--sg-min-height-tablet, auto)); flex-basis: auto; flex-direction: column; gap: var(--sg-gap-mobile, var(--sg-gap-tablet, var(--sg-gap, 0))); margin: var(--sg-margin-mobile, var(--sg-margin-tablet, var(--sg-margin, 0))); padding: var(--sg-padding-mobile, var(--sg-padding-tablet, var(--sg-padding, 0))); }
  .sg-layout[style*="--sg-direction:row"] > .sg-layout { flex-basis: auto; }
  .sg-layout[style*="--sg-direction:row"] { flex-direction: column; }
  .sg-layout--depth-0 { min-height: auto; }
  .sg-fixed-inquiry { display: grid; width: min(100% - 32px, var(--sg-content-width)); padding: 48px 0; grid-template-columns: 1fr; gap: 42px; }
  .sg-rich-text table { display: block; overflow-x: auto; white-space: nowrap; }
  .sg-inquiry-form { grid-template-columns: 1fr; }
  .sg-form-field--full { grid-column: auto; }
  .sg-contact-panel h2 { font-size: 26px; }
  .sg-post-grid, .footer-grid, .sg-article-sidebar { grid-template-columns: 1fr; }
  .sg-blog-hero { min-height: 270px; }
  .sg-blog-hero h1 { font-size: 40px; }
  .sg-blog-content { padding: 52px 0 64px; }
  .sg-blog-post-grid { grid-template-columns: 1fr; gap: 40px; }
  .sg-blog-card__media { height: 235px; }
  .sg-blog-sidebar { padding: 26px 22px; }
  .sg-blog-sidebar__contact { margin: 28px -22px -26px; padding: 25px 22px 27px; }
  .sg-blog-empty { min-height: 0; padding: 35px 24px; }
  .sg-blog-empty h2 { font-size: 28px; }
  .sg-article-hero { min-height: 320px; }
  .sg-article-hero__content { padding: 52px 0; }
  .sg-article-hero h1 { font-size: 36px; }
  .sg-article-section { padding: 52px 0 65px; }
  .sg-article-body h2 { font-size: 27px; }
  .sg-article-author { grid-template-columns: 1fr; }
  .footer-grid { gap: 34px; }
  .footer-bottom { align-items: flex-start; flex-direction: column; justify-content: center; padding: 20px 0; }
  .sg-inquiry-popup__panel { padding: 28px 20px; }
  .sg-card-grid--media, .sg-card-grid--text, .sg-card-grid--text.sg-card-grid--count-4, .sg-card-grid--text.sg-card-grid--count-5 { margin-bottom: 42px; grid-template-columns: 1fr; gap: 18px; }
  .sg-card--media > .sg-heading { padding: 18px 20px 7px; font-size: 19px; }
  .sg-card--media > .sg-rich-text { padding: 0 20px 21px; }
  .sg-card--text { min-height: 0; padding: 24px 21px; }
}

/* Product research modules introduced with the Cover & Interface Glass family. */
.sg-catalog-page .sg-product-card__media:empty { background: #e5e9ea; }
.sg-stack-tool,
.sg-choice-tool,
.sg-shape-tool { display: grid; overflow: hidden; border: 1px solid rgba(255,255,255,.2); background: #20363d; grid-template-columns: 1.05fr .95fr; }
.sg-stack-tool__diagram { display: grid; min-height: 500px; align-content: center; padding: 48px; gap: 10px; perspective: 900px; }
.sg-stack-layer { position: relative; display: flex; min-height: 56px; align-items: center; justify-content: center; padding: 12px 20px; border: 1px solid rgba(255,255,255,.22); background: rgba(112,181,199,.2); color: #fff; font-weight: 800; cursor: pointer; transform: translateX(calc((var(--layer, 1) - 1) * 8px)) skewX(-8deg); transition: background .2s, border-color .2s, transform .2s; }
.sg-stack-layer:nth-child(1) { --layer: 1; }
.sg-stack-layer:nth-child(2) { --layer: 2; }
.sg-stack-layer:nth-child(3) { --layer: 3; }
.sg-stack-layer:nth-child(4) { --layer: 4; }
.sg-stack-layer:nth-child(5) { --layer: 5; }
.sg-stack-layer:nth-child(6) { --layer: 6; }
.sg-stack-layer span { transform: skewX(8deg); }
.sg-stack-layer[aria-pressed="true"],
.sg-stack-layer:hover { border-color: var(--sg-gold); background: rgba(233,169,6,.28); transform: translateX(calc((var(--layer, 1) - 1) * 8px + 12px)) skewX(-8deg); }
.sg-stack-tool__panel,
.sg-choice-tool__result,
.sg-shape-controls { display: grid; min-height: 500px; align-content: center; padding: 48px; background: #fff; }
.sg-stack-tool__panel article > span,
.sg-choice-tool__result article > span,
.sg-shape-controls > span { display: block; margin-bottom: 10px; color: #a97500; font-size: 12px; font-weight: 800; text-transform: uppercase; }
.sg-stack-tool__panel h3,
.sg-choice-tool__result h3,
.sg-shape-controls h3 { font-size: 29px; }
.sg-stack-tool__panel strong { display: block; margin-top: 25px; padding-top: 20px; border-top: 1px solid var(--sg-line); color: var(--sg-navy); font-size: 14px; line-height: 1.6; }
.sg-choice-tool__buttons { display: grid; align-content: stretch; }
.sg-choice-tool__buttons button { display: grid; min-height: 112px; align-content: center; padding: 22px 30px; border: 0; border-bottom: 1px solid rgba(255,255,255,.15); border-left: 4px solid transparent; background: transparent; color: #fff; text-align: left; cursor: pointer; }
.sg-choice-tool__buttons button:last-child { border-bottom: 0; }
.sg-choice-tool__buttons button[aria-pressed="true"],
.sg-choice-tool__buttons button:hover { border-left-color: var(--sg-gold); background: rgba(255,255,255,.08); }
.sg-choice-tool__buttons span { font-size: 17px; font-weight: 800; }
.sg-choice-tool__buttons small { margin-top: 3px; color: #becbd0; font-size: 12px; }
.sg-choice-tool__result ul { display: grid; margin-top: 22px; list-style: none; gap: 10px; }
.sg-choice-tool__result li { position: relative; padding-left: 22px; color: var(--sg-muted); font-size: 14px; }
.sg-choice-tool__result li::before { position: absolute; top: .65em; left: 0; width: 7px; height: 7px; background: var(--sg-gold); content: ""; }
.sg-data-list { display: grid; border-top: 1px solid var(--sg-line); }
.sg-data-list > div { padding: 18px 0; border-bottom: 1px solid var(--sg-line); }
.sg-data-list span,
.sg-data-list strong { display: block; }
.sg-data-list span { color: #a97500; font-size: 11px; font-weight: 800; text-transform: uppercase; }
.sg-data-list strong { margin: 3px 0 4px; color: var(--sg-navy); }
.sg-data-list p { margin: 0; font-size: 13px; }
.sg-validation-grid { display: grid; border-top: 1px solid rgba(255,255,255,.2); border-left: 1px solid rgba(255,255,255,.2); grid-template-columns: repeat(3, minmax(0, 1fr)); }
.sg-validation-grid article { min-height: 250px; padding: 28px; border-right: 1px solid rgba(255,255,255,.2); border-bottom: 1px solid rgba(255,255,255,.2); background: rgba(255,255,255,.03); }
.sg-validation-grid article > span { display: block; margin-bottom: 12px; color: var(--sg-gold); font-size: 11px; font-weight: 800; text-transform: uppercase; }
.sg-validation-grid h3 { color: #fff; font-size: 20px; }
.sg-validation-grid p { min-height: 76px; color: #cbd5d8; font-size: 13px; }
.sg-validation-grid strong { display: block; padding-top: 16px; border-top: 1px solid rgba(255,255,255,.14); color: #fff; font-size: 13px; line-height: 1.55; }
.sg-shape-stage { display: grid; min-height: 520px; place-items: center; overflow: hidden; background-image: linear-gradient(rgba(255,255,255,.06) 1px, transparent 1px),linear-gradient(90deg,rgba(255,255,255,.06) 1px,transparent 1px); background-size: 28px 28px; perspective: 900px; }
.sg-shape-model { position: relative; width: min(72%, 450px); height: 270px; border: 2px solid rgba(255,255,255,.55); background: linear-gradient(125deg,rgba(255,255,255,.28),rgba(65,142,160,.12)); box-shadow: 18px 22px 40px rgba(0,0,0,.25),inset 0 0 40px rgba(255,255,255,.12); transform: rotateX(12deg) rotateY(-18deg); transition: border-radius .45s, clip-path .45s, transform .45s; }
.sg-shape-model.is-cylindrical { border-radius: 46% 8% 8% 46% / 16% 8% 8% 16%; transform: rotateX(9deg) rotateY(-24deg) perspective(500px); }
.sg-shape-model.is-edge { border-radius: 5px 70px 70px 5px; transform: rotateX(14deg) rotateY(-10deg); }
.sg-shape-model.is-compound { border-radius: 46px 80px 36px 70px; clip-path: polygon(5% 2%,92% 8%,100% 88%,8% 100%,0 18%); transform: rotateX(18deg) rotateY(-20deg) rotateZ(-3deg); }
.sg-shape-hotspot { position: absolute; display: grid; min-width: 86px; min-height: 28px; place-items: center; padding: 5px 8px; border: 1px solid var(--sg-gold); background: rgba(16,35,41,.92); color: #fff; font-size: 10px; font-weight: 700; }
.sg-shape-hotspot:nth-child(1) { top: 18%; left: 25%; }
.sg-shape-hotspot:nth-child(2) { top: 48%; right: -10%; }
.sg-shape-hotspot:nth-child(3) { bottom: 8%; left: 5%; }
.sg-shape-controls .sg-segmented { margin: 10px 0 34px; }

@media (max-width: 1000px) {
  .sg-stack-tool,
  .sg-choice-tool,
  .sg-shape-tool { grid-template-columns: 1fr; }
  .sg-validation-grid { grid-template-columns: repeat(2, minmax(0, 1fr)); }
}

@media (max-width: 720px) {
  .sg-stack-tool__diagram { min-height: 390px; padding: 32px 20px; }
  .sg-stack-tool__panel,
  .sg-choice-tool__result,
  .sg-shape-controls { min-height: 0; padding: 30px 22px; }
  .sg-stack-tool__panel h3,
  .sg-choice-tool__result h3,
  .sg-shape-controls h3 { font-size: 24px; }
  .sg-choice-tool__buttons button { min-height: 92px; padding: 18px 20px; }
  .sg-validation-grid { grid-template-columns: 1fr; }
  .sg-validation-grid article { min-height: 0; }
  .sg-validation-grid p { min-height: 0; }
  .sg-shape-stage { min-height: 390px; }
  .sg-shape-model { width: 70%; height: 210px; }
}

@media (prefers-reduced-motion: reduce) {
  *, *::before, *::after { scroll-behavior: auto !important; transition: none !important; }
}

/* Native homepage component proportions with SpecialGlass content. */
.sg-home { --sg-home-wrap: 1200px; background: var(--sg-white); }
.sg-home .wrap { width: min(var(--sg-home-wrap), calc(100% - 48px)); }
.sg-home-section { padding: 80px 0; background: var(--sg-white); }
.sg-home-section--light { background: var(--sg-light); }
.sg-home-section--gray { background: var(--sg-gray); }
.sg-home-section-title { max-width: 940px; margin: 0 auto 48px; text-align: center; }
.sg-home-section-title h2 { margin-bottom: 20px; font-size: 40px; line-height: 1.05; }
.sg-home-section-title p { margin: 0; color: var(--sg-muted); }
.sg-home-rule { width: 100px; height: 1px; margin: 34px auto 0; background: #9d9d9d; }

.sg-home-hero { position: relative; display: flex; min-height: 570px; align-items: center; overflow: hidden; background: #07191f center/cover no-repeat; color: var(--sg-white); }
.sg-home-hero::before { position: absolute; z-index: 0; inset: 0; background: rgba(4, 24, 29, .76); content: ""; }
.sg-home-hero__content { position: relative; z-index: 1; padding: 86px 0; }
.sg-home-kicker { display: block; margin-bottom: 20px; color: #f0bd36; font-size: 14px; font-weight: 700; text-transform: uppercase; }
body.sg-native-theme .sg-home-hero h1 { max-width: 980px; margin-bottom: 28px; color: var(--sg-white); font-size: 58px; line-height: 1.02; }
.sg-home-hero p { max-width: 1040px; margin-bottom: 36px; color: #e2e8ea; font-size: 18px; line-height: 1.6; }
.sg-home-button--outline { min-height: 50px; border: 2px solid var(--sg-white); background: transparent; color: var(--sg-white); }
.sg-home-button--outline:hover { border-color: var(--sg-white); background: var(--sg-white); color: var(--sg-navy); }

.sg-home-summary { padding: 68px 0 76px; background: var(--sg-gray); }
.sg-home-summary__grid { display: grid; grid-template-columns: repeat(3, 1fr); }
.sg-home-summary article { padding: 0 42px; text-align: center; }
.sg-home-summary article + article { border-left: 1px solid #cdd3d5; }
.sg-home-summary article > span { display: grid; width: 58px; height: 58px; margin: 0 auto 22px; place-items: center; color: var(--sg-navy); font-size: 25px; font-weight: 600; }
.sg-home-summary h3 { margin-bottom: 18px; text-transform: uppercase; }
.sg-home-summary p { margin: 0; color: #565f63; font-size: 15px; }

.sg-home-clients { padding: 76px 0 82px; background: var(--sg-white); }
.sg-home-logo-grid { display: grid; border-top: 1px solid var(--sg-line); border-left: 1px solid var(--sg-line); grid-template-columns: repeat(6, 1fr); }
.sg-home-logo-grid > div { display: grid; min-height: 112px; padding: 18px; border-right: 1px solid var(--sg-line); border-bottom: 1px solid var(--sg-line); background: var(--sg-white); place-items: center; }
.sg-home-logo-grid img { width: 100%; max-width: 135px; height: 62px; object-fit: contain; }

.sg-home-product-grid { display: grid; grid-template-columns: repeat(3, minmax(0, 1fr)); gap: 34px 20px; }
.sg-home-product-card { min-width: 0; }
.sg-home-product-card > a { display: block; height: 100%; }
.sg-home-product-card__media { position: relative; aspect-ratio: 1.34 / 1; overflow: hidden; background: #0c161a; }
.sg-home-product-card__media::after { position: absolute; inset: 0; border: 0 solid rgba(255,255,255,.15); content: ""; transition: border-width .3s, background-color .3s; }
.sg-home-product-card:hover .sg-home-product-card__media::after { border-width: 12px; background: rgba(255,255,255,.04); }
.sg-home-product-card__media img { width: 100%; height: 100%; object-fit: cover; }
.sg-home-product-card__body { padding: 24px 0 0; }
.sg-home-product-card h3 { margin-bottom: 13px; }
.sg-home-product-card p { min-height: 72px; margin-bottom: 14px; color: var(--sg-muted); font-size: 15px; line-height: 1.6; }
.sg-home-product-card:hover h3 { color: var(--sg-gold); }
.sg-home-featured-collection { display: grid; min-height: 340px; margin-top: 46px; background: var(--sg-white); box-shadow: 0 2px 14px rgba(19,40,46,.1); grid-template-columns: 1.05fr .95fr; }
.sg-home-featured-collection__media { min-height: 340px; overflow: hidden; background: #0c161a; }
.sg-home-featured-collection__media img { width: 100%; height: 100%; object-fit: cover; }
.sg-home-featured-collection > div:last-child { display: flex; align-items: flex-start; justify-content: center; flex-direction: column; padding: 48px 52px; }
.sg-home-featured-collection h3 { margin-bottom: 18px; font-size: 30px; }
.sg-home-featured-collection p { margin-bottom: 25px; color: var(--sg-muted); }

.sg-home-help { padding: 40px 0; background: var(--sg-white); }
.sg-home-help > .wrap { display: grid; align-items: center; grid-template-columns: 1fr auto; gap: 48px; }
.sg-home-help h2 { margin-bottom: 10px; font-size: 31px; }
.sg-home-help p { margin: 0; color: var(--sg-muted); }

.sg-home-advantage-grid { display: grid; grid-template-columns: repeat(4, minmax(0, 1fr)); gap: 20px; }
.sg-home-advantage-card { min-height: 285px; padding: 30px 22px 28px; border: 1px solid #d5dcde; background: var(--sg-white); text-align: center; transition: box-shadow .25s, transform .25s; }
.sg-home-advantage-card:hover { box-shadow: var(--sg-shadow); transform: translateY(-6px); }
.sg-home-advantage-card > span { display: grid; width: 58px; height: 58px; margin: 0 auto 20px; border: 2px solid var(--sg-navy); border-radius: 50%; color: var(--sg-navy); font-size: 15px; font-weight: 700; place-items: center; }
.sg-home-advantage-card h3 { min-height: 48px; margin-bottom: 14px; }
.sg-home-advantage-card p { margin: 0; color: #566166; font-size: 14px; line-height: 1.65; text-align: left; }

.sg-home-about__grid { display: grid; align-items: start; grid-template-columns: repeat(2, minmax(0, 1fr)); gap: 42px; }
.sg-home-carousel { min-width: 0; }
.sg-home-carousel__viewport { overflow: hidden; background: #0a1114; }
.sg-home-carousel .sg-media-track { display: flex; transition: transform .5s ease; }
.sg-home-carousel .sg-media-slide { flex: 0 0 100%; height: 495px; overflow: hidden; background: #0a1114; }
.sg-home-carousel .sg-media-slide img { width: 100%; height: 100%; object-fit: cover; }
.sg-home-carousel__controls { display: flex; align-items: center; justify-content: space-between; min-height: 52px; border-bottom: 1px solid var(--sg-line); color: var(--sg-muted); font-size: 13px; }
.sg-home-carousel__controls > div { display: flex; gap: 8px; }
.sg-home-carousel__controls button { width: 42px; height: 38px; border: 1px solid var(--sg-navy); background: var(--sg-white); cursor: pointer; }
.sg-home-carousel__controls button:hover { background: var(--sg-navy); color: var(--sg-white); }
.sg-home-about__copy { padding: 8px 20px 0; }
.sg-home-about__copy h2 { margin-bottom: 24px; font-size: 40px; }
.sg-home-about__text { color: var(--sg-muted); }
.sg-home-about__text p { margin-bottom: 19px; }

.sg-home-material-grid { display: grid; grid-template-columns: repeat(3, minmax(0, 1fr)); gap: 24px; }
.sg-home-material-card { min-width: 0; background: var(--sg-white); box-shadow: 0 1px 3px rgba(0,0,0,.08); transition: box-shadow .25s, transform .25s; }
.sg-home-material-card:hover { box-shadow: var(--sg-shadow); transform: translateY(-5px); }
.sg-home-material-card > a { display: block; height: 100%; }
.sg-home-material-card__media { aspect-ratio: 1.45 / 1; overflow: hidden; background: #0c161a; }
.sg-home-material-card__media img { width: 100%; height: 100%; object-fit: cover; }
.sg-home-material-card > a > div:last-child { padding: 25px 24px 27px; }
.sg-home-material-card div > span { display: block; margin-bottom: 12px; color: var(--sg-gold); font-size: 13px; font-weight: 800; }
.sg-home-material-card h3 { margin-bottom: 13px; }
.sg-home-material-card p { min-height: 68px; color: var(--sg-muted); font-size: 14px; }
.sg-home-material-card strong { display: block; padding-top: 14px; border-top: 1px solid var(--sg-line); color: var(--sg-teal); font-size: 14px; }

.sg-home-testimonials { padding: 80px 0; background: var(--sg-navy); color: var(--sg-white); }
.sg-home-testimonials__layout { display: grid; align-items: center; grid-template-columns: .72fr 1.28fr; gap: 70px; }
body.sg-native-theme .sg-home-testimonials h2 { color: var(--sg-white); font-size: 38px; }
.sg-home-testimonials p { color: #d7dfe1; }
.sg-home-testimonials .sg-testimonial { min-height: 285px; padding: 44px 48px; background: var(--sg-white); color: var(--sg-text); }
.sg-home-testimonials .sg-testimonial p { color: var(--sg-text); font-size: 18px; font-style: italic; }
.sg-home-testimonials .sg-testimonial footer span { color: var(--sg-muted); }

.sg-home-market-grid { display: grid; grid-template-columns: repeat(4, minmax(0, 1fr)); }
.sg-home-market-card { position: relative; min-height: 280px; overflow: hidden; border-right: 1px solid rgba(255,255,255,.35); border-bottom: 1px solid rgba(255,255,255,.35); background: #0a1114; }
.sg-home-market-card > span, .sg-home-market-card > span img { position: absolute; inset: 0; width: 100%; height: 100%; }
.sg-home-market-card > span img { object-fit: cover; }
.sg-home-market-card::before { position: absolute; z-index: 1; inset: 0; background: rgba(23,40,46,.48); content: ""; transition: background-color .25s; }
.sg-home-market-card:hover::before { background: rgba(23,40,46,.82); }
body.sg-native-theme .sg-home-market-card h3 { position: absolute; z-index: 2; right: 24px; bottom: 26px; left: 24px; margin: 0; color: var(--sg-white); transition: color .25s, transform .25s; }
body.sg-native-theme .sg-home-market-card:hover h3 { color: var(--sg-gold); transform: translateY(-6px); }

.sg-home-contact-band { padding: 34px 0; background: var(--sg-navy); color: var(--sg-white); }
.sg-home-contact-band > .wrap { display: grid; align-items: center; grid-template-columns: 1fr 1.2fr; gap: 60px; }
.sg-home-contact-band span { color: var(--sg-gold); font-size: 13px; font-weight: 700; text-transform: uppercase; }
body.sg-native-theme .sg-home-contact-band h2 { margin: 5px 0 0; color: var(--sg-white); font-size: 35px; }
.sg-home-contact-band p { margin: 0; color: #ccd5d7; }
.sg-home-contact { padding: 80px 0; background: var(--sg-white); }
.sg-home-contact__grid { display: grid; align-items: start; grid-template-columns: 1.08fr .92fr; gap: 72px; }

@media (max-width: 1000px) {
  .sg-home-logo-grid { grid-template-columns: repeat(4, 1fr); }
  .sg-home-product-grid, .sg-home-material-grid { grid-template-columns: repeat(2, minmax(0, 1fr)); }
  .sg-home-advantage-grid, .sg-home-market-grid { grid-template-columns: repeat(2, minmax(0, 1fr)); }
  .sg-home-about__grid, .sg-home-contact__grid { grid-template-columns: 1fr 1fr; gap: 38px; }
  .sg-home-testimonials__layout { gap: 40px; }
}

@media (max-width: 720px) {
  .sg-home .wrap { width: min(100% - 32px, var(--sg-home-wrap)); }
  .sg-home-section { padding: 56px 0; }
  .sg-home-section-title { margin-bottom: 34px; }
  .sg-home-section-title h2 { font-size: 31px; }
  .sg-home-hero { min-height: 500px; }
  .sg-home-hero__content { padding: 68px 0; }
  .sg-home-kicker { font-size: 12px; }
  body.sg-native-theme .sg-home-hero h1 { font-size: 39px; }
  .sg-home-hero p { font-size: 16px; }
  .sg-home-summary__grid, .sg-home-product-grid, .sg-home-material-grid, .sg-home-about__grid, .sg-home-testimonials__layout, .sg-home-contact__grid, .sg-home-contact-band > .wrap { grid-template-columns: 1fr; }
  .sg-home-summary article { padding: 30px 12px; }
  .sg-home-summary article + article { border-top: 1px solid #cdd3d5; border-left: 0; }
  .sg-home-logo-grid { grid-template-columns: repeat(2, 1fr); }
  .sg-home-featured-collection { grid-template-columns: 1fr; }
  .sg-home-featured-collection > div:last-child { padding: 34px 26px; }
  .sg-home-help > .wrap { grid-template-columns: 1fr; gap: 22px; }
  .sg-home-advantage-grid, .sg-home-market-grid { grid-template-columns: 1fr; }
  .sg-home-advantage-card { min-height: 0; }
  .sg-home-carousel .sg-media-slide { height: 340px; }
  .sg-home-about__copy { padding: 22px 0 0; }
  .sg-home-material-card p { min-height: 0; }
  .sg-home-testimonials .sg-testimonial { min-height: 0; padding: 32px 24px; }
  .sg-home-contact-band > .wrap { gap: 18px; }
}

@media (prefers-reduced-motion: reduce) {
  .sg-home * { transition: none !important; }
}

/* Native product-page system. Content remains editor-owned; media is supplied by ACF. */
.sg-product-page { background: var(--sg-white); }
.sg-product-page .wrap { width: min(var(--sg-content-width), calc(100% - 48px)); }
.sg-product-page p { color: var(--sg-muted); }
.sg-product-page a:focus-visible,
.sg-product-page button:focus-visible,
.sg-product-page summary:focus-visible { outline: 3px solid rgba(233, 169, 6, .45); outline-offset: 3px; }
.sg-product-hero { position: relative; display: flex; min-height: 430px; align-items: center; overflow: hidden; background-color: var(--sg-deep); background-image: linear-gradient(90deg, rgba(7, 25, 31, .94) 0%, rgba(7, 25, 31, .8) 48%, rgba(7, 25, 31, .34) 100%), var(--sg-banner-image); background-position: center; background-size: cover; color: var(--sg-white); }
.sg-product-hero__content { position: relative; z-index: 1; padding-top: 72px; padding-bottom: 72px; }
.sg-product-hero h1 { max-width: 830px; margin-bottom: 22px; color: var(--sg-white); font-size: 50px; }
.sg-product-hero p { max-width: 790px; margin-bottom: 28px; color: #e0e8ea; font-size: 18px; line-height: 1.65; }
.sg-product-hero small { display: block; margin-top: 18px; color: #c8d2d5; font-size: 13px; }
.sg-product-button--outline { border-color: rgba(255,255,255,.9); background: transparent; color: var(--sg-white); }
.sg-product-button--outline:hover { border-color: var(--sg-white); background: var(--sg-white); color: var(--sg-navy); }
.sg-product-breadcrumbs { padding: 18px 0; border-bottom: 1px solid var(--sg-line); background: var(--sg-light); }
.sg-product-section { padding: 82px 0; }
.sg-product-section--light { background: #f4f6f6; }
.sg-product-section--technical { background: var(--sg-deep); color: var(--sg-white); }
.sg-product-section--technical h2,
.sg-product-section--technical h3 { color: var(--sg-white); }
.sg-product-section--technical p { color: #ced8da; }
.sg-product-heading { max-width: 900px; margin: 0 auto 44px; text-align: center; }
.sg-product-heading h2 { margin-bottom: 17px; font-size: 38px; }
.sg-product-heading p { margin: 0; font-size: 17px; }
.sg-product-heading--left { max-width: 930px; margin-right: 0; margin-left: 0; text-align: left; }
.sg-product-overview { display: grid; align-items: start; grid-template-columns: minmax(0, .86fr) minmax(540px, 1.14fr); gap: 68px; }
.sg-product-overview__intro h2 { font-size: 37px; }
.sg-product-overview__intro p { font-size: 16px; }
.sg-engineering-note { display: grid; margin-top: 30px; padding: 22px 24px; border-left: 4px solid var(--sg-gold); background: var(--sg-light); gap: 5px; }
.sg-engineering-note strong { color: var(--sg-navy); }
.sg-engineering-note span { color: var(--sg-muted); font-size: 14px; }
.sg-specification-panel { overflow: hidden; border: 1px solid var(--sg-line); background: var(--sg-white); box-shadow: 0 10px 26px rgba(19,40,46,.08); }
.sg-specification-panel > h2 { margin: 0; padding: 22px 26px; background: var(--sg-navy); color: var(--sg-white); font-size: 24px; }
.sg-table-scroll { width: 100%; overflow-x: auto; }
.sg-specification-table,
.sg-selection-table { width: 100%; border-collapse: collapse; }
.sg-specification-table th,
.sg-specification-table td { padding: 13px 18px; border-bottom: 1px solid var(--sg-line); text-align: left; vertical-align: top; }
.sg-specification-table th { width: 31%; color: var(--sg-navy); font-size: 14px; }
.sg-specification-table td { color: var(--sg-muted); font-size: 14px; }
.sg-table-note { margin: 0; padding: 15px 18px 18px; background: #fafafa; font-size: 12px; }
.sg-application-grid { display: grid; align-items: stretch; grid-template-columns: repeat(3, minmax(0, 1fr)); gap: 26px; }
.sg-product-card { min-width: 0; overflow: hidden; border: 1px solid #d2d9db; background: var(--sg-white); transition: border-color .2s, box-shadow .2s, transform .2s; }
.sg-product-card:hover { border-color: #aebbc0; box-shadow: var(--sg-shadow); transform: translateY(-4px); }
.sg-product-card__media { aspect-ratio: 4 / 3; margin: 0; overflow: hidden; background: #dfe4e5; }
.sg-product-card__media img { width: 100%; height: 100%; object-fit: cover; transition: transform .3s; }
.sg-product-card:hover .sg-product-card__media img { transform: scale(1.025); }
.sg-product-card__body { padding: 24px 24px 26px; }
.sg-product-card__body > span { display: block; margin-bottom: 8px; color: #a97500; font-size: 12px; font-weight: 800; text-transform: uppercase; }
.sg-product-card h3 { margin-bottom: 11px; font-size: 21px; }
.sg-product-card p { margin: 0; font-size: 14px; line-height: 1.65; }
.sg-product-card--wide { display: grid; grid-column: 1 / -1; grid-template-columns: .82fr 1.18fr; }
.sg-product-card--wide .sg-product-card__media { min-height: 270px; aspect-ratio: auto; }
.sg-product-card--wide .sg-product-card__body { display: flex; align-items: flex-start; justify-content: center; flex-direction: column; padding: 38px 46px; }
.sg-product-help { padding: 38px 0; border-top: 1px solid var(--sg-line); border-bottom: 1px solid var(--sg-line); background: var(--sg-white); }
.sg-product-help > .wrap { display: grid; align-items: center; grid-template-columns: 1fr auto; gap: 58px; }
.sg-product-help .overline { margin-bottom: 5px; }
.sg-product-help h2 { margin-bottom: 7px; font-size: 29px; }
.sg-product-help p { margin: 0; }
.sg-selection-layout { display: grid; align-items: center; grid-template-columns: .7fr 1.3fr; gap: 68px; }
.sg-selection-layout h2 { font-size: 37px; }
.sg-selection-table { min-width: 690px; border: 1px solid var(--sg-line); background: var(--sg-white); }
.sg-selection-table th,
.sg-selection-table td { padding: 15px 17px; border-right: 1px solid var(--sg-line); border-bottom: 1px solid var(--sg-line); text-align: left; vertical-align: top; }
.sg-selection-table th { background: var(--sg-navy); color: var(--sg-white); font-size: 14px; }
.sg-selection-table td { color: var(--sg-muted); font-size: 14px; }
.sg-selection-table td:nth-child(2) { color: var(--sg-teal); font-weight: 700; }
.sg-deadfront { display: grid; align-items: center; padding: 34px; border: 1px solid rgba(255,255,255,.18); background: #0a1a20; grid-template-columns: minmax(0, 1.35fr) minmax(300px, .65fr); gap: 42px; }
.sg-deadfront__viewer { min-width: 0; }
.sg-deadfront__panel { --df-opacity: .5; position: relative; display: grid; min-height: 310px; align-content: center; justify-items: center; overflow: hidden; border: 1px solid #45616a; background: linear-gradient(145deg, #111a1e, #040708 72%); box-shadow: inset 0 0 0 1px rgba(255,255,255,.04), 0 24px 50px rgba(0,0,0,.28); }
.sg-deadfront__panel::before { position: absolute; inset: 0; background: linear-gradient(112deg, transparent 15%, rgba(255,255,255,.11) 43%, transparent 58%); content: ""; transform: translateX(-32%); }
.sg-deadfront__brand { position: absolute; top: 24px; left: 28px; color: #d6dddf; font-size: 11px; font-weight: 800; opacity: .65; }
.sg-deadfront__display { display: flex; align-items: flex-start; color: #c4ecff; opacity: .06; text-shadow: 0 0 15px rgba(97,209,255,.7); transition: opacity .25s; }
.sg-deadfront__display span { font-size: 72px; font-weight: 300; line-height: 1; }
.sg-deadfront__display small { margin: 8px 0 0 6px; font-size: 20px; }
.sg-deadfront__controls { display: grid; width: min(82%, 520px); margin-top: 48px; color: #c4ecff; font-size: 10px; font-weight: 700; grid-template-columns: repeat(4, 1fr); gap: 12px; opacity: .05; text-align: center; transition: opacity .25s; }
.sg-deadfront__controls span { padding-top: 13px; border-top: 1px solid currentColor; }
.sg-deadfront__panel.is-lit .sg-deadfront__display,
.sg-deadfront__panel.is-lit .sg-deadfront__controls { opacity: var(--df-opacity); }
.sg-deadfront__viewer > p { margin: 18px 0 0; color: #c6d0d2; font-size: 13px; }
.sg-deadfront__controls-panel { padding: 30px; background: var(--sg-white); color: var(--sg-text); }
.sg-control-group { margin-bottom: 24px; }
.sg-control-group > span { display: block; margin-bottom: 9px; color: var(--sg-navy); font-size: 13px; font-weight: 800; }
.sg-segmented { display: grid; grid-auto-flow: column; grid-auto-columns: 1fr; border: 1px solid #bdc8cb; }
.sg-segmented button { min-height: 42px; padding: 8px 12px; border: 0; border-right: 1px solid #bdc8cb; background: #f4f6f6; color: var(--sg-navy); cursor: pointer; }
.sg-segmented button:last-child { border-right: 0; }
.sg-segmented button[aria-pressed="true"] { background: var(--sg-gold); font-weight: 800; }
.sg-deadfront__readout { display: flex; align-items: end; justify-content: space-between; margin: 28px 0 16px; padding-top: 20px; border-top: 1px solid var(--sg-line); }
.sg-deadfront__readout span { color: var(--sg-muted); font-size: 13px; }
.sg-deadfront__readout strong { color: var(--sg-navy); font-size: 32px; }
.sg-reference-note { margin: 0; font-size: 12px; line-height: 1.55; }
.sg-education-band { display: grid; align-items: start; margin-top: 34px; padding: 30px 34px; border-left: 4px solid var(--sg-gold); background: #142a31; grid-template-columns: minmax(250px, .72fr) minmax(0, 1.28fr); gap: 44px; }
.sg-education-band > div { display: grid; grid-template-columns: 44px 1fr; gap: 15px; }
.sg-education-band h3 { margin: 0; font-size: 23px; }
.sg-education-index { display: grid; width: 42px; height: 42px; place-items: center; background: var(--sg-gold); color: var(--sg-navy); font-size: 12px; font-weight: 800; }
.sg-education-band p { margin: 0; font-size: 14px; }
.sg-education-band--light { border: 1px solid var(--sg-line); border-left: 4px solid var(--sg-gold); background: var(--sg-light); }
.sg-education-band--light h3 { color: var(--sg-navy); }
.sg-education-band--light p { color: var(--sg-muted); }
.sg-drawing-tool { display: grid; overflow: hidden; border: 1px solid var(--sg-line); background: var(--sg-white); grid-template-columns: minmax(0, 1.35fr) minmax(330px, .65fr); }
.sg-drawing-tool__canvas { min-width: 0; padding: 28px; background-color: #f7f8f8; background-image: linear-gradient(#e5e9ea 1px, transparent 1px), linear-gradient(90deg, #e5e9ea 1px, transparent 1px); background-size: 22px 22px; }
.sg-drawing-tool__canvas svg { display: block; width: 100%; height: auto; color: var(--sg-teal); }
.sg-drawing-glass { fill: rgba(173,214,225,.38); stroke: #315965; stroke-width: 2; }
.sg-drawing-window { fill: rgba(23,40,46,.1); stroke: #17282e; stroke-width: 2; stroke-dasharray: 7 4; }
.sg-drawing-hole,
.sg-drawing-slot { fill: #f7f8f8; stroke: #17282e; stroke-width: 2; }
.sg-drawing-dim line,
.sg-drawing-callout line { stroke: #315965; stroke-width: 1.4; }
.sg-drawing-dim text,
.sg-drawing-callout text { fill: #17282e; font-family: Arial, sans-serif; font-size: 13px; }
.sg-drawing-tool__panel { padding: 38px 34px; border-left: 1px solid var(--sg-line); }
.sg-drawing-tool__panel h3 { margin-top: 30px; font-size: 24px; }
.sg-drawing-tool__panel ul { display: grid; margin: 0 0 24px; list-style: none; gap: 12px; }
.sg-drawing-tool__panel li { position: relative; padding-left: 20px; color: var(--sg-muted); font-size: 14px; }
.sg-drawing-tool__panel li::before { position: absolute; top: .65em; left: 0; width: 7px; height: 7px; background: var(--sg-gold); content: ""; }
.sg-drawing-tool__panel p { margin: 0; padding-top: 19px; border-top: 1px solid var(--sg-line); font-size: 12px; }
.sg-print-layout { display: grid; align-items: center; grid-template-columns: minmax(420px, .9fr) minmax(0, 1.1fr); gap: 68px; }
.sg-print-layout__media { min-height: 470px; margin: 0; overflow: hidden; background: #dfe4e5; }
.sg-print-layout__media img { width: 100%; height: 100%; min-height: 470px; object-fit: cover; }
.sg-print-layout h2 { font-size: 38px; }
.sg-option-grid { display: grid; margin-top: 30px; border-top: 1px solid var(--sg-line); border-left: 1px solid var(--sg-line); grid-template-columns: repeat(2, minmax(0, 1fr)); }
.sg-option-grid > div { min-height: 118px; padding: 21px 22px; border-right: 1px solid var(--sg-line); border-bottom: 1px solid var(--sg-line); background: var(--sg-white); }
.sg-option-grid strong,
.sg-option-grid span { display: block; }
.sg-option-grid strong { margin-bottom: 7px; color: var(--sg-navy); font-size: 15px; }
.sg-option-grid span { color: var(--sg-muted); font-size: 13px; line-height: 1.55; }
.sg-qc-dashboard { display: grid; overflow: hidden; border: 1px solid var(--sg-line); grid-template-columns: 1fr 1fr; }
.sg-qc-dashboard > div { padding: 36px 38px; }
.sg-qc-dashboard h3 { margin-bottom: 26px; font-size: 25px; }
.sg-qc-dashboard__steps { background: var(--sg-white); }
.sg-qc-dashboard__steps ol { display: grid; list-style: none; gap: 0; }
.sg-qc-dashboard__steps li { display: grid; padding: 17px 0; border-bottom: 1px solid var(--sg-line); grid-template-columns: 45px 1fr; gap: 15px; }
.sg-qc-dashboard__steps li:first-child { padding-top: 0; }
.sg-qc-dashboard__steps li:last-child { border-bottom: 0; }
.sg-qc-dashboard__steps li > span { color: var(--sg-gold); font-size: 13px; font-weight: 800; }
.sg-qc-dashboard__steps strong { display: block; margin-bottom: 4px; color: var(--sg-navy); }
.sg-qc-dashboard__steps p { margin: 0; font-size: 13px; }
.sg-qc-dashboard__checks { background: var(--sg-navy); color: var(--sg-white); }
.sg-qc-dashboard__checks h3 { color: var(--sg-white); }
.sg-qc-check-grid { display: grid; border-top: 1px solid rgba(255,255,255,.19); border-left: 1px solid rgba(255,255,255,.19); grid-template-columns: repeat(2, 1fr); }
.sg-qc-check-grid > div { min-height: 118px; padding: 18px; border-right: 1px solid rgba(255,255,255,.19); border-bottom: 1px solid rgba(255,255,255,.19); }
.sg-qc-check-grid span,
.sg-qc-check-grid strong { display: block; }
.sg-qc-check-grid span { margin-bottom: 7px; color: var(--sg-gold); font-size: 11px; font-weight: 800; text-transform: uppercase; }
.sg-qc-check-grid strong { color: var(--sg-white); font-size: 13px; line-height: 1.5; }
.sg-qc-dashboard__checks > p { margin: 24px 0 0; color: #ced7da; font-size: 12px; }
.sg-rfq-layout { display: grid; align-items: start; grid-template-columns: .9fr 1.1fr; gap: 70px; }
.sg-rfq-layout h2 { font-size: 36px; }
.sg-check-list,
.sg-rfq-panel ul { display: grid; margin: 26px 0 0; list-style: none; gap: 11px; }
.sg-check-list li,
.sg-rfq-panel li { position: relative; padding-left: 25px; color: var(--sg-muted); }
.sg-check-list li::before,
.sg-rfq-panel li::before { position: absolute; top: 2px; left: 0; color: #a97500; content: "\2713"; font-weight: 800; }
.sg-rfq-panel { padding: 36px 38px; border-top: 4px solid var(--sg-gold); background: var(--sg-white); box-shadow: 0 10px 28px rgba(19,40,46,.1); }
.sg-rfq-panel ul { margin-bottom: 28px; }
.sg-faq-layout { display: grid; align-items: start; grid-template-columns: minmax(280px, .62fr) minmax(0, 1.38fr); gap: 70px; }
.sg-faq-layout header { position: sticky; top: 120px; }
.sg-faq-layout header h2 { font-size: 36px; }
.sg-faq-list { border-top: 1px solid var(--sg-line); }
.sg-faq-list details { border-bottom: 1px solid var(--sg-line); }
.sg-faq-list summary { position: relative; padding: 21px 48px 21px 0; color: var(--sg-navy); font-weight: 800; cursor: pointer; list-style: none; }
.sg-faq-list summary::-webkit-details-marker { display: none; }
.sg-faq-list summary::after { position: absolute; top: 50%; right: 4px; width: 28px; height: 28px; color: var(--sg-gold); content: "+"; font-size: 24px; font-weight: 400; line-height: 26px; text-align: center; transform: translateY(-50%); }
.sg-faq-list details[open] summary::after { content: "\2212"; }
.sg-faq-list details p { max-width: 800px; margin: 0; padding: 0 42px 22px 0; font-size: 14px; }
.sg-related-band { padding: 70px 0; background: #eef1f2; }
.sg-related-band header { display: grid; margin-bottom: 30px; grid-template-columns: .35fr 1fr; }
.sg-related-band header .overline { align-self: start; margin-top: 8px; }
.sg-related-band header h2 { max-width: 760px; font-size: 34px; }
.sg-related-grid { display: grid; border-top: 1px solid #cbd4d6; border-left: 1px solid #cbd4d6; grid-template-columns: repeat(3, 1fr); }
.sg-related-grid > div { padding: 28px; border-right: 1px solid #cbd4d6; border-bottom: 1px solid #cbd4d6; background: var(--sg-white); }
.sg-related-grid h3 { margin-bottom: 15px; font-size: 19px; }
.sg-related-grid a { display: block; padding: 8px 0; border-bottom: 1px solid #edf0f1; color: var(--sg-teal); font-size: 14px; font-weight: 700; }
.sg-related-grid a:last-child { border-bottom: 0; }
.sg-related-grid a:hover { color: #9b6e00; }
.sg-contact-heading { padding: 34px 0; background: var(--sg-navy); color: var(--sg-white); text-align: center; }
.sg-contact-heading span { color: var(--sg-gold); font-size: 12px; font-weight: 800; text-transform: uppercase; }
.sg-contact-heading h2 { margin: 5px 0 8px; color: var(--sg-white); font-size: 32px; }
.sg-contact-heading p { max-width: 760px; margin: 0 auto; color: #cbd5d8; font-size: 14px; }
.sg-contact-ending { background: var(--sg-white); }

@media (max-width: 1000px) {
  .sg-product-overview,
  .sg-selection-layout,
  .sg-print-layout,
  .sg-rfq-layout { grid-template-columns: 1fr; gap: 44px; }
  .sg-product-overview { grid-template-columns: 1fr; }
  .sg-application-grid { grid-template-columns: repeat(2, minmax(0, 1fr)); }
  .sg-product-card--wide { grid-template-columns: .9fr 1.1fr; }
  .sg-deadfront,
  .sg-drawing-tool { grid-template-columns: 1fr; }
  .sg-drawing-tool__panel { border-top: 1px solid var(--sg-line); border-left: 0; }
  .sg-education-band { grid-template-columns: 1fr; gap: 20px; }
  .sg-qc-dashboard { grid-template-columns: 1fr; }
  .sg-faq-layout { grid-template-columns: 1fr; gap: 34px; }
  .sg-faq-layout header { position: static; }
}

@media (max-width: 720px) {
  .sg-product-page .wrap { width: min(100% - 32px, var(--sg-content-width)); }
  .sg-product-hero { min-height: 470px; background-image: linear-gradient(90deg, rgba(7,25,31,.94), rgba(7,25,31,.72)), var(--sg-banner-image); }
  .sg-product-hero__content { padding-top: 60px; padding-bottom: 60px; }
  .sg-product-hero h1 { font-size: 38px; }
  .sg-product-hero p { font-size: 16px; }
  .sg-product-section { padding: 58px 0; }
  .sg-product-heading { margin-bottom: 32px; text-align: left; }
  .sg-product-heading h2,
  .sg-product-overview__intro h2,
  .sg-selection-layout h2,
  .sg-print-layout h2,
  .sg-rfq-layout h2,
  .sg-faq-layout header h2 { font-size: 29px; }
  .sg-application-grid { grid-template-columns: 1fr; gap: 18px; }
  .sg-product-card--wide { display: block; }
  .sg-product-card--wide .sg-product-card__media { min-height: 0; aspect-ratio: 4 / 3; }
  .sg-product-card--wide .sg-product-card__body { padding: 24px; }
  .sg-product-help > .wrap { grid-template-columns: 1fr; gap: 22px; }
  .sg-deadfront { padding: 16px; gap: 20px; }
  .sg-deadfront__panel { min-height: 250px; }
  .sg-deadfront__display span { font-size: 54px; }
  .sg-deadfront__controls { width: 90%; margin-top: 34px; }
  .sg-deadfront__controls-panel { padding: 24px 20px; }
  .sg-education-band { padding: 25px 22px; }
  .sg-drawing-tool__canvas { padding: 10px; overflow-x: auto; }
  .sg-drawing-tool__canvas svg { min-width: 600px; }
  .sg-drawing-tool__panel { padding: 28px 22px; }
  .sg-print-layout__media,
  .sg-print-layout__media img { min-height: 310px; }
  .sg-option-grid { grid-template-columns: 1fr; }
  .sg-option-grid > div { min-height: 0; }
  .sg-qc-dashboard > div { padding: 28px 22px; }
  .sg-qc-check-grid { grid-template-columns: 1fr; }
  .sg-qc-check-grid > div { min-height: 0; }
  .sg-rfq-panel { padding: 28px 22px; }
  .sg-related-band header { grid-template-columns: 1fr; }
  .sg-related-grid { grid-template-columns: 1fr; }
  .sg-contact-heading h2 { font-size: 27px; }
}

/* 2.1.8 functional coating and transparent conductor modules */
.sg-education-feature { display: grid; align-items: center; grid-template-columns: minmax(0, .9fr) minmax(420px, 1.1fr); gap: 72px; }
.sg-education-feature > div:first-child p { margin: 0; color: var(--sg-muted); line-height: 1.8; }
.sg-education-diagram { min-width: 0; padding: 34px; border: 1px solid var(--sg-line); background: #f5f7f7; }
.sg-layer-map { display: grid; gap: 7px; }
.sg-layer-map > * { display: grid; min-height: 42px; place-items: center; border: 1px solid #b7c3c6; background: var(--sg-white); color: var(--sg-navy); font-size: 13px; font-weight: 700; }
.sg-layer-map > *:nth-child(2) { background: #dbeaec; }
.sg-layer-map > *:nth-child(3) { background: #d7ddde; }
.sg-layer-map > strong { min-height: 76px; background: #94b4bd; font-size: 16px; }
.sg-ag-diagram,
.sg-contact-angle,
.sg-tco-light { display: grid; grid-template-columns: repeat(3, 1fr); gap: 12px; }
.sg-ag-diagram > div,
.sg-contact-angle > div,
.sg-tco-light > div { display: grid; min-height: 150px; align-content: center; justify-items: center; padding: 20px; border: 1px solid #c7d0d2; background: var(--sg-white); text-align: center; }
.sg-ag-diagram i { width: 78px; height: 56px; margin-bottom: 18px; border: 1px solid #59727a; background: #d6e0e2; box-shadow: inset 0 0 0 10px rgba(255,255,255,.5); }
.sg-ag-diagram > div:nth-child(2) i { background: #afc1c6; box-shadow: inset 0 0 0 5px rgba(255,255,255,.35); }
.sg-ag-diagram > div:nth-child(3) i { background: #849da4; box-shadow: none; }
.sg-contact-angle { grid-template-columns: 1fr 1fr; }
.sg-contact-angle > strong { grid-column: 1 / -1; padding: 14px; background: var(--sg-navy); color: var(--sg-white); text-align: center; }
.sg-contact-angle i { width: 76px; height: 30px; margin-bottom: 28px; border-radius: 50% 50% 10% 10%; background: #75b8c4; }
.sg-contact-angle > div:nth-child(2) i { width: 56px; height: 56px; border-radius: 50%; }
.sg-ar-angle { display: grid; min-height: 250px; align-items: center; grid-template-columns: 1fr 80px 1.3fr 80px 1fr; gap: 12px; text-align: center; }
.sg-ar-angle strong { display: grid; min-height: 110px; place-items: center; border: 8px solid #9bbdc5; background: rgba(255,255,255,.72); color: var(--sg-navy); }
.sg-ar-angle i { height: 2px; background: var(--sg-gold); transform: rotate(-24deg); }
.sg-squares-diagram { display: grid; grid-template-columns: repeat(3, 1fr); gap: 12px; }
.sg-squares-diagram span { display: grid; min-height: 130px; place-items: center; padding: 18px; border: 2px solid #70929c; background: var(--sg-white); color: var(--sg-navy); font-weight: 800; text-align: center; }
.sg-squares-diagram span:nth-child(2) { box-shadow: inset 50% 0 0 #edf2f3; }
.sg-squares-diagram span:nth-child(3) { border-width: 2px 8px; }
.sg-tco-light { grid-template-columns: 1fr 1fr; }
.sg-tco-light i { position: relative; width: 3px; height: 72px; margin-bottom: 16px; background: var(--sg-gold); }
.sg-tco-light > div:nth-child(2) i { width: 70px; background: linear-gradient(64deg, transparent 47%, var(--sg-gold) 48% 52%, transparent 53%); }
.sg-surface-tool { display: grid; padding: 34px; border: 1px solid rgba(255,255,255,.18); background: #0a1a20; grid-template-columns: minmax(0, 1.15fr) minmax(340px, .85fr); gap: 42px; }
.sg-surface-view { min-width: 0; }
.sg-surface-view__display { position: relative; display: grid; min-height: 330px; align-content: center; overflow: hidden; border: 1px solid #668089; background: #182a31; color: #eff8fa; text-align: center; }
.sg-surface-view__display::before { position: absolute; inset: 0; background: rgba(255,255,255,.09); content: ""; }
.sg-surface-view__display::after { position: absolute; top: -25%; left: 24%; width: 18%; height: 150%; background: rgba(255,255,255,.17); content: ""; transform: rotate(24deg); }
.sg-surface-view__display strong { position: relative; z-index: 1; font-size: 48px; }
.sg-surface-view__display span { position: relative; z-index: 1; color: #9fe4be; font-size: 15px; letter-spacing: 0; }
.sg-surface-view__display i { position: absolute; inset: 0; z-index: 2; pointer-events: none; }
.sg-surface-view__display.is-clarity i { opacity: .05; }
.sg-surface-view__display.is-balanced i { background: rgba(230,239,241,.08); opacity: .55; }
.sg-surface-view__display.is-diffuse i { background: rgba(230,239,241,.2); opacity: .9; }
.sg-surface-view__display.is-diffuse strong,
.sg-surface-view__display.is-diffuse span { filter: blur(1px); }
.sg-surface-view > p { margin: 18px 0 0; color: #c7d1d4; font-size: 13px; }
.sg-surface-controls { padding: 30px; background: var(--sg-white); color: var(--sg-text); }
.sg-surface-controls > span { display: block; margin-bottom: 10px; font-weight: 800; }
.sg-surface-controls dl { margin: 26px 0 18px; }
.sg-surface-controls dl > div { display: flex; justify-content: space-between; gap: 20px; padding: 10px 0; border-bottom: 1px solid var(--sg-line); }
.sg-surface-controls dt { color: var(--sg-muted); }
.sg-surface-controls dd { margin: 0; color: var(--sg-navy); font-weight: 800; text-align: right; }
.sg-spectrum { display: grid; padding: 34px; border: 1px solid rgba(255,255,255,.18); background: #0a1a20; grid-template-columns: minmax(0, 1.45fr) minmax(310px, .55fr); gap: 40px; }
.sg-spectrum__chart { padding: 20px; background: var(--sg-white); }
.sg-spectrum__chart svg { width: 100%; height: auto; }
.sg-spectrum__grid line { stroke: #dbe1e3; stroke-width: 1; }
.sg-spectrum__labels text { fill: #637177; font-size: 13px; }
.sg-spectrum__line { fill: none; stroke-width: 5; }
.sg-spectrum__line--plain { stroke: #78878b; }
.sg-spectrum__line--ar { stroke: var(--sg-gold); }
.sg-spectrum__legend { align-content: center; display: grid; gap: 22px; }
.sg-spectrum__legend > div { display: grid; grid-template-columns: 18px 1fr; gap: 3px 12px; }
.sg-spectrum__legend i { width: 18px; height: 4px; margin-top: 8px; background: #78878b; }
.sg-spectrum__legend i.is-ar { background: var(--sg-gold); }
.sg-spectrum__legend span { grid-column: 2; color: #b8c7ca; font-size: 13px; }
.sg-spectrum__legend > p { margin: 8px 0 0; padding-top: 20px; border-top: 1px solid rgba(255,255,255,.18); color: #d2dcde; font-size: 13px; }
.sg-resistance-tool { display: grid; padding: 34px; border: 1px solid rgba(255,255,255,.18); background: #0a1a20; grid-template-columns: minmax(0, 1.2fr) minmax(340px, .8fr); gap: 42px; }
.sg-resistance-diagram { display: grid; align-content: center; min-width: 0; }
.sg-electrode { position: relative; display: flex; min-height: 250px; align-items: center; justify-content: space-between; border: 1px solid #6b858d; background: #18343c; }
.sg-electrode__bar { display: grid; z-index: 1; width: 42px; height: 100%; min-height: 250px; place-items: center; background: var(--sg-gold); color: var(--sg-navy); font-weight: 900; }
.sg-electrode__path { color: var(--sg-white); font-size: 23px; font-weight: 800; }
.sg-electrode > i { position: absolute; bottom: 20px; left: 50%; color: #b7c8cc; font-style: normal; transform: translateX(-50%); }
.sg-resistance-diagram > p { margin: 16px 0 0; color: #c7d1d4; font-size: 13px; text-align: center; }
.sg-resistance-controls { padding: 28px; background: var(--sg-white); color: var(--sg-text); }
.sg-resistance-controls label { display: grid; margin-bottom: 16px; color: var(--sg-navy); font-weight: 800; grid-template-columns: 1fr auto; }
.sg-resistance-controls label span { color: var(--sg-muted); font-size: 12px; font-weight: 400; }
.sg-resistance-controls input { grid-column: 1 / -1; width: 100%; min-height: 44px; margin-top: 6px; padding: 8px 10px; border: 1px solid #bdc8cb; }
.sg-resistance-result { display: flex; align-items: end; justify-content: space-between; margin: 24px 0 16px; padding: 18px 0; border-top: 1px solid var(--sg-line); border-bottom: 1px solid var(--sg-line); }
.sg-resistance-result span { color: var(--sg-muted); }
.sg-resistance-result strong { color: var(--sg-navy); font-size: 23px; }

@media (max-width: 980px) {
  .sg-education-feature,
  .sg-surface-tool,
  .sg-spectrum,
  .sg-resistance-tool { grid-template-columns: 1fr; }
  .sg-education-feature { gap: 36px; }
}

@media (max-width: 720px) {
  .sg-education-diagram,
  .sg-surface-tool,
  .sg-spectrum,
  .sg-resistance-tool { padding: 18px; }
  .sg-ag-diagram,
  .sg-squares-diagram { grid-template-columns: 1fr; }
  .sg-surface-controls,
  .sg-resistance-controls { padding: 22px 18px; }
  .sg-surface-view__display { min-height: 260px; }
  .sg-surface-view__display strong { font-size: 36px; }
  .sg-spectrum__chart { padding: 8px; }
  .sg-ar-angle { grid-template-columns: 1fr; }
  .sg-ar-angle i { width: 70px; margin: 5px auto; transform: rotate(65deg); }
}

/* 2.1.9 heat-resistant and technical-glass components */
.sg-product-card__body ul { display: grid; margin: 16px 0 0; padding: 0; list-style: none; gap: 7px; }
.sg-product-card__body li { position: relative; padding-left: 16px; color: var(--sg-muted); font-size: 13px; }
.sg-product-card__body li::before { position: absolute; top: .65em; left: 0; width: 5px; height: 5px; background: var(--sg-gold); content: ""; }
.sg-education-feature--reverse > div:first-child { order: 2; }
.sg-education-feature--reverse .sg-education-diagram { order: 1; }

.sg-thermal-gradient { display: grid; width: 100%; min-height: 300px; align-items: center; grid-template-columns: 96px minmax(190px, 1fr) 96px; }
.sg-thermal-gradient > span { display: grid; min-height: 190px; place-items: center; border: 1px solid #768b91; background: #d7e3e6; color: var(--sg-navy); font-size: 13px; font-weight: 800; writing-mode: vertical-rl; }
.sg-thermal-gradient > div { position: relative; display: grid; min-height: 250px; align-content: center; justify-items: center; overflow: hidden; border-top: 1px solid #a97c1a; border-bottom: 1px solid #a97c1a; background: #f0c35e; color: var(--sg-navy); }
.sg-thermal-gradient > div::before { position: absolute; inset: 0; background: radial-gradient(circle at center, #d86536 0 18%, transparent 19% 34%, rgba(255,255,255,.24) 35% 36%, transparent 37%); content: ""; }
.sg-thermal-gradient strong,
.sg-thermal-gradient small { position: relative; z-index: 1; }
.sg-thermal-gradient strong { font-size: 25px; }
.sg-thermal-gradient small { max-width: 180px; margin-top: 8px; text-align: center; }

.sg-cte-bars { display: grid; min-height: 300px; align-items: end; grid-template-columns: repeat(3, 1fr); gap: 18px; }
.sg-cte-bars > div { display: grid; height: 260px; align-content: end; justify-items: center; }
.sg-cte-bars span { display: block; width: min(88px, 70%); height: var(--level); min-height: 24px; background: var(--sg-gold); }
.sg-cte-bars > div:nth-child(2) span { background: #6e98a3; }
.sg-cte-bars > div:nth-child(3) span { background: #274a55; }
.sg-cte-bars strong { margin-top: 12px; color: var(--sg-navy); text-align: center; }
.sg-cte-bars small { margin-top: 4px; color: var(--sg-muted); text-align: center; }

.sg-hole-risk { display: grid; min-height: 280px; place-items: center; }
.sg-hole-risk__plate { position: relative; width: min(360px, 86%); aspect-ratio: 1.65; border: 8px solid #9fb7bd; background: rgba(255,255,255,.8); box-shadow: inset 0 0 0 1px #59727a; }
.sg-hole-risk__plate i { position: absolute; top: 50%; left: 18%; width: 52px; height: 52px; border: 6px solid #59727a; border-radius: 50%; background: #eef3f4; transform: translateY(-50%); }
.sg-hole-risk__plate b { position: absolute; top: 50%; left: 0; width: 18%; border-top: 2px dashed var(--sg-gold); }
.sg-hole-risk__plate span { position: absolute; top: calc(50% - 48px); left: 16%; color: var(--sg-navy); font-size: 12px; font-weight: 800; }
.sg-hole-risk__plate small { position: absolute; top: calc(50% + 12px); left: 2%; color: #855f00; }
.sg-hole-risk > p { margin: 0; color: var(--sg-muted); font-size: 12px; text-align: center; }

.sg-boro-window { display: grid; min-height: 300px; align-items: center; grid-template-columns: 80px 1fr 80px; }
.sg-boro-window > span { display: grid; height: 210px; place-items: center; background: #294c57; color: #fff; font-size: 12px; font-weight: 800; writing-mode: vertical-rl; }
.sg-boro-window > div { display: grid; min-height: 170px; align-content: center; justify-items: center; border: 10px solid #91b2ba; background: rgba(255,255,255,.68); }
.sg-boro-window i { color: #b47700; font-size: 23px; font-style: normal; font-weight: 900; }
.sg-boro-window b { margin-top: 8px; color: var(--sg-navy); }
.sg-boro-window > small { grid-column: 1 / -1; margin-top: 18px; color: var(--sg-muted); text-align: center; }

.sg-dimension-sketch { position: relative; width: min(430px, 88%); aspect-ratio: 1.6; margin: auto; border: 5px solid #789aa3; background: rgba(255,255,255,.78); }
.sg-dimension-sketch__l { position: absolute; bottom: -34px; left: 50%; color: var(--sg-navy); font-weight: 800; transform: translateX(-50%); }
.sg-dimension-sketch__w { position: absolute; top: 50%; left: -35px; color: var(--sg-navy); font-weight: 800; transform: rotate(-90deg); }
.sg-dimension-sketch > div { position: absolute; top: 50%; left: 25%; width: 66px; height: 66px; border: 4px solid #476873; border-radius: 50%; transform: translate(-50%, -50%); }
.sg-dimension-sketch > div::before { position: absolute; top: 50%; right: 100%; width: 80px; border-top: 2px dashed var(--sg-gold); content: ""; }
.sg-dimension-sketch b { position: absolute; top: 50%; left: 50%; color: var(--sg-navy); font-size: 11px; transform: translate(-50%, -50%); }
.sg-dimension-sketch small { position: absolute; top: calc(50% + 42px); right: 5px; width: 120px; color: #855f00; }
.sg-dimension-sketch em { position: absolute; right: 12px; bottom: 8px; color: var(--sg-navy); font-style: normal; font-weight: 900; }

.sg-band-chart { display: grid; min-height: 270px; align-content: center; }
.sg-band-chart__axis { display: grid; margin-bottom: 8px; color: var(--sg-muted); font-size: 11px; grid-template-columns: 1fr 1fr 1fr 1fr; }
.sg-band-chart__axis span:nth-child(2),
.sg-band-chart__axis span:nth-child(3) { text-align: center; }
.sg-band-chart__axis span:last-child { text-align: right; }
.sg-band-chart__bands { display: grid; min-height: 96px; grid-template-columns: 1.1fr 1.8fr 3fr; }
.sg-band-chart__bands i { display: grid; place-items: center; color: #fff; font-style: normal; font-weight: 900; }
.sg-band-chart__bands .is-uv { background: #654d91; }
.sg-band-chart__bands .is-visible { background: linear-gradient(90deg, #3d72a7, #3e9e79, #d6a523); }
.sg-band-chart__bands .is-ir { background: #9f5644; }
.sg-band-chart > p { margin: 20px 0 0; color: var(--sg-muted); font-size: 12px; text-align: center; }

.sg-contamination-map { display: grid; min-height: 280px; grid-template-columns: repeat(3, 1fr); gap: 12px; }
.sg-contamination-map > div { display: grid; min-width: 0; align-content: center; justify-items: center; padding: 18px; border: 1px solid #aebdc1; background: rgba(255,255,255,.78); text-align: center; }
.sg-contamination-map i { width: 90px; height: 12px; margin-bottom: 28px; background: #82aeb8; box-shadow: 0 12px 0 rgba(130,174,184,.55); }
.sg-contamination-map b { width: 13px; height: 13px; margin: 3px; border-radius: 50%; background: var(--sg-gold); }
.sg-contamination-map em { width: 78px; height: 50px; margin-bottom: 14px; background: repeating-linear-gradient(55deg, #8d6a25 0 7px, #d6b365 7px 14px); }
.sg-contamination-map span { margin-top: 14px; color: var(--sg-navy); font-size: 12px; font-weight: 800; }

.sg-frame-diagram,
.sg-coating-side,
.sg-heat-flow,
.sg-viewport-diagram,
.sg-sensor-path { position: relative; display: grid; min-height: 300px; align-content: center; justify-items: stretch; grid-template-columns: repeat(5, minmax(48px, 1fr)); }
.sg-frame-diagram > *,
.sg-coating-side > *,
.sg-heat-flow > *,
.sg-viewport-diagram > *,
.sg-sensor-path > * { display: grid; min-height: 150px; place-items: center; padding: 12px; color: var(--sg-navy); font-size: 12px; font-style: normal; text-align: center; }
.sg-frame-diagram > span,
.sg-viewport-diagram > span { background: #284b56; color: #fff; font-weight: 900; }
.sg-frame-diagram > i,
.sg-viewport-diagram > i { background: #d9b75d; }
.sg-frame-diagram > strong,
.sg-viewport-diagram > strong { border: 7px solid #91b4bd; background: rgba(255,255,255,.76); }
.sg-frame-diagram > b { position: absolute; right: 14%; bottom: 35px; min-height: 0; padding: 6px 10px; background: var(--sg-gold); }
.sg-coating-side { grid-template-columns: 1fr 3fr 1fr; }
.sg-coating-side > span { background: #274b56; color: #fff; font-weight: 900; }
.sg-coating-side > div { display: grid; min-height: 210px; align-content: stretch; grid-template-columns: 22px 1fr 1fr; }
.sg-coating-side > div > * { display: grid; place-items: center; padding: 12px; text-align: center; }
.sg-coating-side i { background: var(--sg-gold); color: var(--sg-navy); font-size: 10px; font-style: normal; writing-mode: vertical-rl; }
.sg-coating-side strong { border: 7px solid #91b4bd; background: rgba(255,255,255,.78); }
.sg-coating-side b { background: #bb5938; color: #fff; }

.sg-heat-flow { grid-template-columns: 90px 1fr 90px; }
.sg-heat-flow > span { background: #1f414c; color: #fff; font-weight: 900; writing-mode: vertical-rl; }
.sg-heat-flow > div { display: grid; min-height: 220px; align-items: stretch; grid-template-columns: 1fr .75fr 26px .75fr 1fr; }
.sg-heat-flow > div > * { display: grid; place-items: center; min-width: 0; padding: 8px; color: var(--sg-navy); font-size: 11px; font-style: normal; text-align: center; }
.sg-heat-flow b { border: 6px solid #91b4bd; background: #edf4f5; }
.sg-heat-flow i { background: #d86a42; color: #fff; }
.sg-heat-flow strong { background: var(--sg-gold); writing-mode: vertical-rl; }
.sg-heat-flow em { background: #729aa4; color: #fff; }

.sg-heater-spectrum { display: grid; min-height: 270px; align-items: center; grid-template-columns: 1fr 1fr 1fr; gap: 16px; text-align: center; }
.sg-heater-spectrum > div { display: grid; min-height: 140px; place-items: center; padding: 18px; border: 1px solid #88a4ab; color: var(--sg-navy); font-weight: 800; }
.sg-heater-spectrum__emitter { background: #bf5a3d; color: #fff !important; }
.sg-heater-spectrum__cover { border-width: 8px !important; background: rgba(255,255,255,.75); }
.sg-heater-spectrum__output { grid-template-rows: 1.6fr .4fr; }
.sg-heater-spectrum__output i { display: grid; width: 100%; height: 100%; place-items: center; background: #d8a62d; font-style: normal; }
.sg-heater-spectrum__output span { font-size: 11px; }

.sg-viewport-diagram { grid-template-columns: 1fr .7fr 1.2fr .7fr 1fr; }
.sg-viewport-diagram > b { position: absolute; top: 24px; left: 50%; min-height: 0; padding: 8px 16px; background: #bf5a3d; color: #fff; transform: translateX(-50%); }
.sg-viewport-diagram > em { position: absolute; bottom: 25px; left: 50%; min-height: 0; padding: 6px 12px; border: 1px solid #7e969c; background: #fff; transform: translateX(-50%); }
.sg-sensor-path { grid-template-columns: repeat(4, 1fr); gap: 8px; }
.sg-sensor-path > span { background: #c45f3e; color: #fff; font-weight: 900; }
.sg-sensor-path > i { border: 7px solid #92b4bd; background: rgba(255,255,255,.78); }
.sg-sensor-path > b { background: var(--sg-gold); }
.sg-sensor-path > strong { background: #284b56; color: #fff; }

@media (max-width: 720px) {
  .sg-education-feature--reverse > div:first-child,
  .sg-education-feature--reverse .sg-education-diagram { order: initial; }
  .sg-thermal-gradient { grid-template-columns: 54px minmax(150px, 1fr) 54px; }
  .sg-cte-bars { gap: 8px; }
  .sg-cte-bars strong { font-size: 12px; }
  .sg-cte-bars small { font-size: 10px; }
  .sg-contamination-map { grid-template-columns: 1fr; }
  .sg-contamination-map > div { min-height: 130px; }
  .sg-frame-diagram,
  .sg-viewport-diagram { grid-template-columns: .8fr .55fr 1fr .55fr .8fr; }
  .sg-frame-diagram > *,
  .sg-viewport-diagram > * { min-height: 120px; padding: 6px; font-size: 9px; }
  .sg-coating-side { grid-template-columns: 55px 1fr 55px; }
  .sg-coating-side > span { padding: 6px; font-size: 9px; writing-mode: vertical-rl; }
  .sg-coating-side > div { grid-template-columns: 18px 1fr .7fr; }
  .sg-heat-flow { grid-template-columns: 46px 1fr 46px; }
  .sg-heat-flow > span { padding: 5px; font-size: 9px; }
  .sg-heat-flow > div { grid-template-columns: 1fr .65fr 20px .65fr 1fr; }
  .sg-heat-flow > div > * { padding: 4px; font-size: 9px; }
  .sg-heater-spectrum { grid-template-columns: 1fr; }
  .sg-heater-spectrum > div { min-height: 100px; }
  .sg-sensor-path { grid-template-columns: 1fr 1fr; }
  .sg-sensor-path > * { min-height: 100px; }
}

/* Industrial sight, vessel and machine-window engineering diagrams. */
.sg-pressure-load,
.sg-deliverable-split,
.sg-sight-drawing,
.sg-gauge-optics,
.sg-mica-stack,
.sg-gauge-drawing,
.sg-bolt-load,
.sg-gasket-map,
.sg-vessel-drawing,
.sg-machine-drawing,
.sg-visibility-path,
.sg-exposure-map,
.sg-safety-age,
.sg-overlap-diagram,
.sg-safety-drawing { position: relative; display: grid; min-height: 300px; align-content: center; color: var(--sg-navy); }

.sg-pressure-load { grid-template-rows: 58px 105px 58px auto; }
.sg-pressure-load__arrows { display: flex; align-items: end; justify-content: space-around; }
.sg-pressure-load__arrows i { position: relative; width: 3px; height: 38px; background: #bd5a3c; }
.sg-pressure-load__arrows i::after { position: absolute; bottom: -1px; left: -5px; width: 11px; height: 11px; border-right: 3px solid #bd5a3c; border-bottom: 3px solid #bd5a3c; content: ""; transform: rotate(45deg); }
.sg-pressure-load__glass { display: grid; margin: 0 48px; place-items: center; border: 8px solid #86acb6; background: rgba(255,255,255,.76); }
.sg-pressure-load__supports { display: grid; grid-template-columns: 1fr 1fr; gap: 96px; margin: 0 24px; }
.sg-pressure-load__supports b { display: grid; place-items: center; padding: 12px; background: var(--sg-gold); font-size: 12px; }
.sg-pressure-load > small { margin-top: 14px; color: var(--sg-muted); font-weight: 700; text-align: center; }

.sg-deliverable-split { grid-template-columns: 1fr 72px 1fr; gap: 12px; }
.sg-deliverable-split > div { display: grid; align-content: center; gap: 7px; padding: 26px; border: 1px solid #8aa5ac; background: rgba(255,255,255,.78); }
.sg-deliverable-split strong { margin-bottom: 8px; color: var(--sg-teal); font-size: 19px; }
.sg-deliverable-split span { padding: 7px 10px; background: #eef3f4; font-size: 12px; font-weight: 700; }
.sg-deliverable-split > i { position: relative; align-self: center; height: 3px; background: var(--sg-gold); }
.sg-deliverable-split > i::after { position: absolute; top: -6px; right: 0; width: 12px; height: 12px; border-top: 3px solid var(--sg-gold); border-right: 3px solid var(--sg-gold); content: ""; transform: rotate(45deg); }

.sg-sight-drawing { grid-template-columns: 1.35fr .65fr; align-items: center; gap: 28px; }
.sg-sight-drawing__disc { position: relative; display: grid; width: 218px; aspect-ratio: 1; margin: auto; place-items: center; border: 3px solid var(--sg-teal); border-radius: 50%; background: #f8fbfb; }
.sg-sight-drawing__disc::before { position: absolute; width: 58%; aspect-ratio: 1; border: 2px dashed #ba5c3f; border-radius: 50%; content: ""; }
.sg-sight-drawing__disc::after { position: absolute; width: 80%; aspect-ratio: 1; border: 15px solid rgba(233,169,6,.25); border-radius: 50%; content: ""; }
.sg-sight-drawing__disc span { position: absolute; top: -24px; font-weight: 800; }
.sg-sight-drawing__disc i { z-index: 1; font-style: normal; font-weight: 800; }
.sg-sight-drawing__disc b { position: absolute; right: -36px; bottom: 36px; font-size: 11px; }
.sg-sight-drawing__side { display: grid; height: 150px; align-content: center; gap: 14px; border-left: 18px solid #8eb0b8; }
.sg-sight-drawing__side span,
.sg-sight-drawing__side b { padding-left: 18px; font-size: 12px; }

.sg-gauge-optics { grid-template-columns: 1fr 1fr; gap: 12px; }
.sg-gauge-optics > div { display: grid; min-height: 210px; align-content: center; grid-template-columns: 1fr 1fr; gap: 10px; padding: 20px; border: 1px solid #7f9da5; background: rgba(255,255,255,.78); }
.sg-gauge-optics span,
.sg-gauge-optics strong { grid-column: 1 / -1; text-align: center; }
.sg-gauge-optics strong { padding: 8px; background: var(--sg-navy); color: #fff; }
.sg-gauge-optics i { height: 48px; border-bottom: 4px solid var(--sg-gold); font-style: normal; transform: skewY(-24deg); }
.sg-gauge-optics .is-pass { border-color: #327986; }
.sg-gauge-optics > b { position: absolute; right: 20%; bottom: 18px; left: 20%; padding: 7px; background: var(--sg-gold); font-size: 11px; text-align: center; }

.sg-mica-stack,
.sg-gasket-map { grid-template-columns: repeat(4, minmax(0, 1fr)); gap: 5px; }
.sg-mica-stack > span,
.sg-gasket-map > span { display: grid; min-height: 180px; place-items: center; padding: 8px; border: 1px solid #77949b; background: #eef4f5; font-size: 11px; font-weight: 800; text-align: center; writing-mode: vertical-rl; }
.sg-mica-stack .is-mica { background: #dcb73d; }
.sg-mica-stack .is-steam { background: #3c7482; color: #fff; }
.sg-mica-stack small,
.sg-gasket-map b { position: absolute; right: 0; bottom: 25px; left: 0; text-align: center; }
.sg-gasket-map { grid-template-columns: .9fr .35fr 1.2fr .35fr .9fr; }
.sg-gasket-map .is-cover,
.sg-gasket-map .is-base { background: #284d57; color: #fff; }
.sg-gasket-map .is-cushion,
.sg-gasket-map .is-process { background: var(--sg-gold); }
.sg-gasket-map .is-glass { border: 8px solid #91b4bd; background: rgba(255,255,255,.82); }

.sg-gauge-drawing { grid-template-columns: 1fr 110px; gap: 28px; }
.sg-gauge-drawing > div { position: relative; display: grid; min-height: 245px; place-items: center; border: 4px solid #2d5661; background: rgba(255,255,255,.82); }
.sg-gauge-drawing > div > span { position: absolute; left: -24px; writing-mode: vertical-rl; }
.sg-gauge-drawing > div > b { color: #bd5a3c; }
.sg-gauge-drawing > div > i { width: 70%; height: 13px; background: #d5ad2c; transform: skewX(-32deg); }
.sg-gauge-drawing aside { display: grid; align-content: center; gap: 12px; }
.sg-gauge-drawing aside > * { display: grid; min-height: 42px; place-items: center; background: #e6edef; font-size: 11px; font-style: normal; }

.sg-bolt-load { grid-template-columns: 1fr 1fr; align-items: center; gap: 28px; }
.sg-bolt-load__ring { position: relative; width: 225px; aspect-ratio: 1; margin: auto; border: 26px solid #2c535e; border-radius: 50%; }
.sg-bolt-load__ring i { position: absolute; display: grid; width: 28px; height: 28px; place-items: center; border-radius: 50%; background: var(--sg-gold); font-size: 11px; font-style: normal; font-weight: 900; }
.sg-bolt-load__ring i:nth-child(1) { top: -28px; left: calc(50% - 14px); }
.sg-bolt-load__ring i:nth-child(2) { right: -28px; bottom: calc(50% - 14px); }
.sg-bolt-load__ring i:nth-child(3) { bottom: -28px; left: calc(50% - 14px); }
.sg-bolt-load__ring i:nth-child(4) { bottom: calc(50% - 14px); left: -28px; }
.sg-bolt-load__ring i:nth-child(5) { top: -17px; right: 2px; }
.sg-bolt-load__ring i:nth-child(6) { right: 2px; bottom: -17px; }
.sg-bolt-load__ring i:nth-child(7) { bottom: -17px; left: 2px; }
.sg-bolt-load__ring i:nth-child(8) { top: -17px; left: 2px; }
.sg-bolt-load__ring span { position: absolute; inset: 0; display: grid; place-items: center; font-size: 13px; font-weight: 800; }
.sg-bolt-load__profile { display: grid; gap: 5px; }
.sg-bolt-load__profile > * { display: grid; min-height: 45px; place-items: center; background: #e5edef; font-size: 11px; }
.sg-bolt-load__profile b { background: #294f59; color: #fff; }
.sg-bolt-load__profile span { background: var(--sg-gold); }
.sg-bolt-load__profile strong { border: 6px solid #8fb0b8; background: #fff; }

.sg-vessel-drawing { grid-template-columns: 1fr .55fr; gap: 28px; }
.sg-vessel-drawing > div { position: relative; display: grid; width: 240px; aspect-ratio: 1; margin: auto; place-items: center; border: 22px solid #2c535e; border-radius: 50%; background: #f6fafb; }
.sg-vessel-drawing > div::before { position: absolute; width: 62%; aspect-ratio: 1; border: 3px dashed #bd5a3c; border-radius: 50%; content: ""; }
.sg-vessel-drawing > div > * { z-index: 1; padding: 4px 7px; background: rgba(255,255,255,.86); font-size: 11px; font-style: normal; }
.sg-vessel-drawing aside { display: grid; align-content: center; gap: 5px; }
.sg-vessel-drawing aside span { display: grid; min-height: 58px; place-items: center; background: #e7edef; font-size: 11px; }
.sg-vessel-drawing aside span:nth-child(2) { border: 6px solid #91b4bd; background: #fff; }

.sg-machine-drawing,
.sg-safety-drawing { grid-template-columns: 1fr 118px; align-items: center; gap: 24px; }
.sg-machine-drawing > div,
.sg-safety-drawing > div { position: relative; min-height: 220px; border: 28px solid #2d5661; background: rgba(255,255,255,.82); }
.sg-machine-drawing > div > span,
.sg-safety-drawing > div > i { position: absolute; inset: 0; display: grid; place-items: center; color: #2c5661; font-size: 13px; font-style: normal; font-weight: 800; }
.sg-machine-drawing > div > b,
.sg-safety-drawing > div > b { position: absolute; top: -22px; left: 14px; color: #fff; font-size: 10px; }
.sg-machine-drawing .is-hole { position: absolute; top: 18px; right: 18px; display: grid; width: 32px; height: 32px; place-items: center; border: 2px solid #bd5a3c; border-radius: 50%; font-style: normal; }
.sg-machine-drawing .is-slot { position: absolute; right: 18px; bottom: 18px; display: grid; width: 58px; height: 24px; place-items: center; border: 2px solid #bd5a3c; border-radius: 12px; font-size: 10px; font-style: normal; }
.sg-machine-drawing aside,
.sg-safety-drawing aside { display: grid; gap: 8px; }
.sg-machine-drawing aside > *,
.sg-safety-drawing aside > * { display: grid; min-height: 38px; place-items: center; background: #e6edef; font-size: 10px; font-style: normal; }

.sg-visibility-path { grid-template-columns: .8fr .28fr 1fr .28fr 1fr; align-items: center; gap: 6px; }
.sg-visibility-path > span,
.sg-visibility-path > strong { display: grid; min-height: 120px; place-items: center; padding: 12px; background: #294f59; color: #fff; text-align: center; }
.sg-visibility-path > b { display: grid; min-height: 190px; place-items: center; border: 9px solid #91b4bd; background: rgba(255,255,255,.8); text-align: center; }
.sg-visibility-path > i { height: 4px; background: var(--sg-gold); }
.sg-visibility-path > em { position: absolute; top: 61px; left: 31%; width: 38%; height: 60px; border-top: 2px dashed #bd5a3c; font-style: normal; transform: rotate(7deg); }

.sg-exposure-map { grid-template-columns: .8fr .25fr 1.6fr; align-items: center; gap: 8px; }
.sg-exposure-map > span { display: grid; min-height: 110px; place-items: center; background: #357483; color: #fff; font-weight: 800; text-align: center; }
.sg-exposure-map > i { height: 4px; background: #357483; }
.sg-exposure-map > div { display: grid; gap: 5px; }
.sg-exposure-map > div b { padding: 16px; background: #e7edef; font-size: 12px; text-align: center; }
.sg-exposure-map > div b:nth-child(2) { background: var(--sg-gold); }
.sg-exposure-map > strong { position: absolute; right: 8%; bottom: 20px; font-size: 11px; }

.sg-safety-age { grid-template-columns: 1fr 1fr; gap: 18px; }
.sg-safety-age > div { display: grid; min-height: 195px; align-content: center; gap: 10px; padding: 22px; border: 1px solid #829da4; background: rgba(255,255,255,.8); text-align: center; }
.sg-safety-age b { padding: 8px; background: #2f6e66; color: #fff; font-size: 12px; }
.sg-safety-age i { width: 80%; height: 30px; margin: auto; border: 6px solid #8eb1b9; background: #fff; }
.sg-safety-age .is-aged b { background: #bd5a3c; }
.sg-safety-age .is-aged i { border-style: dashed; transform: skewX(-9deg); }
.sg-safety-age > small { position: absolute; right: 0; bottom: 18px; left: 0; text-align: center; }

.sg-overlap-diagram { grid-template-columns: .5fr 1fr .5fr; align-items: center; }
.sg-overlap-diagram > span { display: grid; min-height: 170px; place-items: center; padding: 8px; font-size: 11px; font-weight: 800; text-align: center; }
.sg-overlap-diagram .is-frame { z-index: 2; border: 24px solid #294f59; background: var(--sg-gold); }
.sg-overlap-diagram .is-panel { margin: 0 -45px; border: 9px solid #8db0b9; background: rgba(255,255,255,.82); }
.sg-overlap-diagram .is-opening { background: #e7edef; }
.sg-overlap-diagram > i { position: absolute; right: 24%; left: 24%; height: 4px; background: #bd5a3c; }
.sg-overlap-diagram > b { position: absolute; right: 0; bottom: 26px; left: 0; font-size: 11px; text-align: center; }
.sg-safety-drawing > div { border-width: 34px; }
.sg-safety-drawing > div > span { position: absolute; top: -28px; left: 6px; color: #fff; font-size: 10px; }
.sg-safety-drawing > div > b { right: -2px; left: auto; }
.sg-safety-drawing aside span:nth-child(3) { background: #dcb73d; }

@media (max-width: 720px) {
  .sg-pressure-load,
  .sg-deliverable-split,
  .sg-sight-drawing,
  .sg-gauge-optics,
  .sg-bolt-load,
  .sg-vessel-drawing,
  .sg-machine-drawing,
  .sg-visibility-path,
  .sg-safety-age,
  .sg-safety-drawing { min-height: 260px; }
  .sg-deliverable-split { grid-template-columns: 1fr; }
  .sg-deliverable-split > i { width: 3px; height: 34px; margin: auto; }
  .sg-sight-drawing,
  .sg-vessel-drawing { grid-template-columns: 1fr 75px; gap: 10px; }
  .sg-sight-drawing__disc,
  .sg-vessel-drawing > div { width: 165px; }
  .sg-gauge-optics,
  .sg-bolt-load,
  .sg-safety-age { grid-template-columns: 1fr; }
  .sg-gauge-optics > b,
  .sg-safety-age > small { position: static; grid-column: 1; }
  .sg-mica-stack > span,
  .sg-gasket-map > span { min-height: 130px; padding: 4px; font-size: 9px; }
  .sg-gauge-drawing,
  .sg-machine-drawing,
  .sg-safety-drawing { grid-template-columns: 1fr 72px; gap: 10px; }
  .sg-machine-drawing > div,
  .sg-safety-drawing > div { min-height: 170px; border-width: 22px; }
  .sg-visibility-path { grid-template-columns: .8fr .15fr 1fr .15fr .8fr; }
  .sg-visibility-path > span,
  .sg-visibility-path > strong { min-height: 90px; padding: 5px; font-size: 10px; }
  .sg-visibility-path > b { min-height: 140px; border-width: 5px; font-size: 10px; }
  .sg-exposure-map { grid-template-columns: 1fr; }
  .sg-exposure-map > i { width: 4px; height: 24px; margin: auto; }
  .sg-exposure-map > strong { position: static; text-align: center; }
  .sg-overlap-diagram .is-panel { margin: 0 -24px; }
}

/* 2.1.17 laminated-safety product components */
.sg-laminate-overview,
.sg-printed-intro,
.sg-wired-intro { display: grid; align-items: start; grid-template-columns: minmax(0, .88fr) minmax(520px, 1.12fr); gap: 64px; }
.sg-laminate-overview h2,
.sg-printed-intro h2,
.sg-wired-intro h2 { font-size: 38px; }
.sg-laminate-overview .sg-selection-table th,
.sg-printed-intro .sg-selection-table th,
.sg-wired-intro .sg-selection-table th { width: 34%; }
.sg-engineering-note { display: grid; margin-top: 24px; padding: 18px 20px; border-left: 4px solid var(--sg-gold); background: #eef3f4; gap: 5px; }
.sg-engineering-note strong { color: var(--sg-navy); }
.sg-engineering-note span { color: var(--sg-muted); font-size: 13px; line-height: 1.65; }

.sg-build-decoder { display: grid; overflow: hidden; border: 1px solid rgba(255,255,255,.2); background: #0b1d23; grid-template-columns: minmax(330px, .72fr) minmax(0, 1.28fr); }
.sg-build-decoder--light { border-color: var(--sg-line); }
.sg-build-decoder__controls { display: grid; align-content: center; padding: 34px; border-right: 1px solid rgba(255,255,255,.16); background: #132a32; gap: 16px; }
.sg-build-decoder--light .sg-build-decoder__controls { border-right-color: var(--sg-line); background: var(--sg-white); }
.sg-build-decoder__controls label { display: grid; color: var(--sg-white); font-size: 13px; font-weight: 800; gap: 6px; }
.sg-build-decoder--light .sg-build-decoder__controls label { color: var(--sg-navy); }
.sg-build-decoder__controls select { width: 100%; min-height: 46px; padding: 8px 10px; border: 1px solid #7c9197; border-radius: 0; background: var(--sg-white); color: var(--sg-text); }
.sg-build-decoder__controls p { margin: 4px 0 0; color: #becacc; font-size: 12px; line-height: 1.6; }
.sg-build-decoder--light .sg-build-decoder__controls p { color: var(--sg-muted); }
.sg-build-decoder__result { display: grid; align-content: center; padding: 38px; background: var(--sg-white); color: var(--sg-text); grid-template-columns: minmax(0, 1fr) minmax(210px, .55fr); gap: 36px; }
.sg-laminate-stack { display: grid; min-height: 230px; align-items: stretch; grid-template-columns: 1fr 26px 1fr; }
.sg-laminate-stack > * { display: grid; place-items: center; min-width: 0; padding: 14px; color: var(--sg-navy); font-size: 13px; font-style: normal; text-align: center; }
.sg-laminate-stack i { border: 8px solid #88aeb7; background: rgba(227,240,243,.72); }
.sg-laminate-stack b { padding: 4px; background: #d7aa36; font-size: 10px; writing-mode: vertical-rl; }
.sg-build-decoder__result dl { margin: 0; }
.sg-build-decoder__result dl > div { padding: 14px 0; border-bottom: 1px solid var(--sg-line); }
.sg-build-decoder__result dt { color: var(--sg-muted); font-size: 12px; }
.sg-build-decoder__result dd { margin: 4px 0 0; color: var(--sg-navy); font-size: 20px; font-weight: 900; }

.sg-laminate-option-grid { display: grid; border-top: 1px solid var(--sg-line); border-left: 1px solid var(--sg-line); grid-template-columns: repeat(4, 1fr); }
.sg-laminate-option-grid article { min-width: 0; padding: 30px 26px; border-right: 1px solid var(--sg-line); border-bottom: 1px solid var(--sg-line); background: var(--sg-white); }
.sg-laminate-option-grid article > span { color: var(--sg-gold); font-size: 12px; font-weight: 900; }
.sg-laminate-option-grid h3 { margin: 18px 0 10px; font-size: 21px; }
.sg-laminate-option-grid p { min-height: 94px; margin: 0; font-size: 13px; }
.sg-laminate-option-grid strong { display: block; margin-top: 18px; padding-top: 14px; border-top: 1px solid var(--sg-line); color: var(--sg-teal); font-size: 12px; }

.sg-laminate-process-layout,
.sg-laminate-application-layout,
.sg-temper-alignment,
.sg-print-approval,
.sg-wired-applications,
.sg-wired-order { display: grid; align-items: center; grid-template-columns: minmax(0, 1fr) minmax(0, 1fr); gap: 68px; }
.sg-laminate-photo,
.sg-laminate-application-layout figure,
.sg-wired-applications figure { height: 430px; margin: 0; overflow: hidden; background: #dfe4e5; }
.sg-laminate-photo img,
.sg-laminate-application-layout figure img,
.sg-wired-applications figure img { width: 100%; height: 100%; object-fit: cover; }
.sg-process-rail { display: grid; margin: 26px 0 0; padding: 0; list-style: none; gap: 0; }
.sg-process-rail li { display: grid; align-items: center; padding: 13px 0; border-bottom: 1px solid var(--sg-line); grid-template-columns: 46px 1fr; gap: 12px; }
.sg-process-rail b { color: var(--sg-gold); font-size: 12px; }
.sg-process-rail span { color: var(--sg-navy); font-weight: 800; }

.sg-laminate-edge-diagram { display: grid; min-height: 330px; grid-template-columns: 1fr 1fr; gap: 18px; }
.sg-laminate-edge-diagram > div { position: relative; display: grid; align-content: center; justify-items: center; overflow: hidden; border: 1px solid #98abb0; background: var(--sg-white); text-align: center; }
.sg-laminate-edge-diagram b { color: var(--sg-navy); }
.sg-laminate-edge-diagram i { position: relative; width: 86px; height: 150px; margin: 20px 0; border-right: 12px solid #89aeb7; border-left: 12px solid #89aeb7; background: var(--sg-gold); }
.sg-laminate-edge-diagram span { max-width: 150px; color: var(--sg-muted); font-size: 12px; }
.sg-laminate-edge-diagram .is-dry::before { position: absolute; top: 65px; right: 25%; bottom: 65px; left: 25%; border: 8px solid var(--sg-navy); content: ""; }
.sg-laminate-edge-diagram .is-wet::after { position: absolute; top: 70px; right: 17px; color: #397f93; content: "\25CF  \25CF  \25CF"; letter-spacing: 7px; transform: rotate(90deg); }

.sg-laminated-page .sg-qc-dashboard,
.sg-wired-page .sg-qc-dashboard,
.sg-printed-lam-page .sg-qc-dashboard { display: grid; border-color: rgba(255,255,255,.18); background: #0c1d23; grid-template-columns: repeat(3, 1fr); }
.sg-laminated-page .sg-qc-dashboard > div,
.sg-wired-page .sg-qc-dashboard > div,
.sg-printed-lam-page .sg-qc-dashboard > div { min-height: 150px; padding: 24px; border-right: 1px solid rgba(255,255,255,.14); border-bottom: 1px solid rgba(255,255,255,.14); }
.sg-laminated-page .sg-qc-dashboard span,
.sg-wired-page .sg-qc-dashboard span,
.sg-printed-lam-page .sg-qc-dashboard span { display: block; margin-bottom: 12px; color: var(--sg-gold); font-size: 11px; font-weight: 900; text-transform: uppercase; }
.sg-laminated-page .sg-qc-dashboard strong,
.sg-wired-page .sg-qc-dashboard strong,
.sg-printed-lam-page .sg-qc-dashboard strong { color: #e9f0f2; font-size: 14px; line-height: 1.6; }

.sg-build-up-strip { display: grid; overflow: hidden; border: 1px solid var(--sg-line); background: var(--sg-white); grid-template-columns: repeat(6, 1fr); }
.sg-build-up-strip > div { min-width: 0; padding: 25px 18px; border-right: 1px solid var(--sg-line); text-align: center; }
.sg-build-up-strip > div:last-child { border-right: 0; }
.sg-build-up-strip span { display: block; color: var(--sg-gold); font-size: 22px; font-weight: 900; }
.sg-build-up-strip strong { display: block; margin-top: 8px; color: var(--sg-navy); font-size: 12px; }

.sg-sgp-condition { display: grid; border: 1px solid rgba(255,255,255,.2); background: #0b1d23; grid-template-columns: 310px 1fr; }
.sg-sgp-condition__controls { display: grid; align-content: center; padding: 30px; border-right: 1px solid rgba(255,255,255,.16); gap: 18px; }
.sg-sgp-condition__controls label { display: grid; color: #dbe6e8; font-size: 12px; font-weight: 800; gap: 6px; }
.sg-sgp-condition__controls select { min-height: 46px; padding: 8px 10px; border: 1px solid #6f858c; border-radius: 0; background: var(--sg-white); }
.sg-sgp-condition__stage { display: grid; align-items: center; padding: 36px; background: var(--sg-white); color: var(--sg-text); grid-template-columns: minmax(0, 1fr) minmax(300px, .8fr); gap: 42px; }
.sg-sgp-beam { display: grid; min-height: 260px; align-items: center; grid-template-columns: 34px 1fr 22px 1fr 34px; }
.sg-sgp-beam > * { display: grid; min-height: 180px; place-items: center; font-style: normal; }
.sg-sgp-beam i { min-height: 50px; background: var(--sg-navy); }
.sg-sgp-beam b { border: 8px solid #84aab4; background: #e8f2f4; color: var(--sg-navy); }
.sg-sgp-beam span { background: #9bc96b; color: var(--sg-navy); font-size: 10px; font-weight: 900; writing-mode: vertical-rl; }
.sg-sgp-beam.is-reduced b { transform: translateY(8px); }
.sg-sgp-beam.is-broken b:last-of-type { background: repeating-linear-gradient(45deg,#e8f2f4 0 12px,#b7cbd0 12px 14px); }
.sg-sgp-condition__stage article > span { color: #4f811d; font-size: 12px; font-weight: 900; text-transform: uppercase; }
.sg-sgp-condition__stage h3 { margin: 8px 0 12px; }
.sg-sgp-condition__stage article strong { display: block; padding-top: 16px; border-top: 1px solid var(--sg-line); color: var(--sg-navy); font-size: 13px; }

.sg-postbreak-diagram { display: grid; min-height: 330px; grid-template-columns: 1fr 1fr; gap: 18px; }
.sg-postbreak-diagram > div { display: grid; align-content: center; padding: 24px; border: 1px solid #94a8ad; background: var(--sg-white); grid-template-columns: 1fr 18px 1fr; }
.sg-postbreak-diagram > div > span,
.sg-postbreak-diagram > div > em { grid-column: 1 / -1; color: var(--sg-navy); font-size: 12px; font-style: normal; font-weight: 900; text-align: center; }
.sg-postbreak-diagram b { min-height: 130px; margin: 16px 0; border: 7px solid #86aab3; background: #e7f0f2; }
.sg-postbreak-diagram i { min-height: 130px; margin: 16px 0; background: #9bc96b; }
.sg-postbreak-diagram .is-broken b:first-of-type { background: repeating-linear-gradient(40deg,#e7f0f2 0 14px,#91aeb5 14px 16px); }
.sg-postbreak-diagram > em { grid-column: 1 / -1; margin-top: 4px; color: var(--sg-muted); font-size: 11px; font-style: normal; text-align: center; }
.sg-sgp-edge-list { display: grid; margin-top: 25px; border-top: 1px solid var(--sg-line); }
.sg-sgp-edge-list > div { display: grid; padding: 13px 0; border-bottom: 1px solid var(--sg-line); grid-template-columns: 135px 1fr; gap: 18px; }
.sg-sgp-edge-list span { color: var(--sg-muted); font-size: 12px; }
.sg-sgp-edge-list strong { color: var(--sg-navy); font-size: 13px; }

.sg-temper-sequence { display: grid; align-items: center; padding: 30px; border: 1px solid rgba(255,255,255,.2); background: #0b1d23; grid-template-columns: 1fr 34px 1fr 34px 1fr 34px 1fr 34px 1fr; }
.sg-temper-sequence > div { display: grid; min-height: 140px; align-content: center; padding: 18px; border: 1px solid #54717a; background: #17333c; text-align: center; }
.sg-temper-sequence b { color: var(--sg-gold); }
.sg-temper-sequence span { margin-top: 9px; color: #edf4f5; font-size: 12px; font-weight: 800; }
.sg-temper-sequence > i { position: relative; height: 2px; background: var(--sg-gold); }
.sg-temper-sequence > i::after { position: absolute; top: -5px; right: 0; width: 9px; height: 9px; border-top: 2px solid var(--sg-gold); border-right: 2px solid var(--sg-gold); content: ""; transform: rotate(45deg); }
.sg-ply-alignment-diagram { position: relative; display: grid; min-height: 360px; align-items: center; padding: 48px; background: #eef3f4; grid-template-columns: 1fr 18px 1fr; }
.sg-ply-alignment-diagram > div { display: grid; min-height: 230px; place-items: center; }
.sg-ply-alignment-diagram .is-front,
.sg-ply-alignment-diagram .is-back { position: relative; border: 8px solid #85aab3; background: rgba(255,255,255,.72); }
.sg-ply-alignment-diagram .is-front { transform: translate(13px,-10px); }
.sg-ply-alignment-diagram .is-back { transform: translate(-13px,10px); }
.sg-ply-alignment-diagram .is-film { background: var(--sg-gold); }
.sg-ply-alignment-diagram i { position: absolute; width: 58px; height: 58px; border: 5px solid var(--sg-teal); border-radius: 50%; background: #eef3f4; }
.sg-ply-alignment-diagram .is-back i { transform: translate(8px,5px); }
.sg-ply-alignment-diagram em { position: absolute; right: 20px; bottom: 18px; left: 20px; color: var(--sg-muted); font-size: 11px; font-style: normal; text-align: center; }

.sg-compliance-alert { display: grid; margin-top: 24px; padding: 20px; border-left: 5px solid #bd543b; background: #fff2ed; gap: 5px; }
.sg-compliance-alert strong { color: #7a2f20; }
.sg-compliance-alert span { color: #704d45; font-size: 13px; }
.sg-wired-gate { display: grid; border: 1px solid rgba(255,255,255,.18); background: #0b1d23; grid-template-columns: minmax(320px, .7fr) minmax(0, 1.3fr); }
.sg-wired-gate__controls { display: grid; align-content: center; padding: 30px; border-right: 1px solid rgba(255,255,255,.15); gap: 17px; }
.sg-wired-gate__controls label { display: grid; color: #e7eef0; font-size: 12px; font-weight: 800; gap: 6px; }
.sg-wired-gate__controls select { min-height: 46px; padding: 8px 10px; border: 1px solid #789097; border-radius: 0; background: var(--sg-white); }
.sg-wired-gate__result { display: grid; align-content: center; min-height: 330px; padding: 50px; background: var(--sg-white); color: var(--sg-text); }
.sg-wired-gate__result > span { color: var(--sg-teal); font-size: 12px; font-weight: 900; text-transform: uppercase; }
.sg-wired-gate__result.is-stop > span { color: #a13e29; }
.sg-wired-gate__result h3 { margin: 9px 0 13px; font-size: 27px; }
.sg-wired-gate__result strong { display: block; margin-top: 8px; padding-top: 18px; border-top: 1px solid var(--sg-line); color: var(--sg-navy); }
.sg-wire-catalog { display: grid; grid-template-columns: repeat(4, 1fr); gap: 22px; }
.sg-wire-catalog article { min-width: 0; background: var(--sg-white); }
.sg-wire-catalog h3 { margin: 18px 0 8px; font-size: 19px; }
.sg-wire-catalog p { margin: 0; font-size: 13px; }
.sg-wire-sample { position: relative; height: 230px; overflow: hidden; border: 1px solid #a2b4b9; background: rgba(216,233,236,.65); }
.sg-wire-sample::before,
.sg-wire-sample::after { position: absolute; inset: -40px; content: ""; }
.sg-wire-sample.is-square::before { background-image: linear-gradient(#5c686b 1px,transparent 1px),linear-gradient(90deg,#5c686b 1px,transparent 1px); background-size: 34px 34px; }
.sg-wire-sample.is-diamond::before { background-image: linear-gradient(45deg,transparent 48%,#5c686b 49% 51%,transparent 52%),linear-gradient(-45deg,transparent 48%,#5c686b 49% 51%,transparent 52%); background-size: 42px 42px; }
.sg-wire-sample.is-obscure::before { background-image: linear-gradient(#5c686b 1px,transparent 1px),linear-gradient(90deg,#5c686b 1px,transparent 1px); background-size: 38px 38px; }
.sg-wire-sample.is-obscure::after { background: repeating-linear-gradient(55deg,rgba(255,255,255,.12) 0 6px,rgba(90,129,139,.17) 6px 10px); }
.sg-wire-sample.is-parallel::before { background: repeating-linear-gradient(90deg,transparent 0 32px,#5c686b 32px 34px); }
.sg-wire-sample i { position: absolute; inset: 0; z-index: 2; background: linear-gradient(115deg,transparent 0 35%,rgba(255,255,255,.52) 36% 43%,transparent 44%); }
.sg-fire-impact { position: relative; display: grid; min-height: 330px; align-items: stretch; padding-bottom: 42px; grid-template-columns: 1fr 1fr; gap: 18px; }
.sg-fire-impact > div { display: grid; align-content: center; padding: 28px; border: 1px solid #9aacb1; background: var(--sg-white); text-align: center; }
.sg-fire-impact span { color: var(--sg-gold); font-size: 12px; font-weight: 900; text-transform: uppercase; }
.sg-fire-impact b { margin: 14px 0; color: var(--sg-navy); font-size: 20px; }
.sg-fire-impact i { color: var(--sg-muted); font-size: 12px; font-style: normal; }
.sg-fire-impact > em { position: absolute; right: 0; bottom: 0; left: 0; color: #943d2c; font-size: 12px; font-style: normal; font-weight: 900; text-align: center; }
.sg-wire-qc { display: grid; border: 1px solid rgba(255,255,255,.18); background: #0b1d23; grid-template-columns: 1fr 1fr; }
.sg-wire-qc__diagram { display: grid; align-content: center; padding: 34px; gap: 28px; }
.sg-wire-depth { display: grid; min-height: 180px; align-items: center; grid-template-columns: 1fr 18px 1fr 18px 1fr; }
.sg-wire-depth > * { display: grid; min-height: 140px; place-items: center; padding: 8px; color: #eaf1f2; font-size: 11px; font-style: normal; text-align: center; }
.sg-wire-depth b { border: 7px solid #7ea4ae; background: #1c3d46; }
.sg-wire-depth i { background: #e1aa24; }
.sg-wire-depth span { background: repeating-linear-gradient(0deg,#637b82 0 2px,transparent 2px 18px),repeating-linear-gradient(90deg,#637b82 0 2px,#eef5f6 2px 18px); color: var(--sg-navy); font-weight: 900; }
.sg-wire-bow { position: relative; min-height: 80px; border-top: 2px solid #e1aa24; }
.sg-wire-bow::before { position: absolute; top: -16px; right: 10%; left: 10%; height: 28px; border-top: 3px solid #7da2ac; border-radius: 50%; content: ""; }
.sg-wire-bow span { display: block; margin-top: 30px; color: #c5d1d4; font-size: 11px; text-align: center; }
.sg-wire-qc__list { display: grid; align-content: center; padding: 34px; background: var(--sg-white); }
.sg-wire-qc__list > div { padding: 12px 0; border-bottom: 1px solid var(--sg-line); }
.sg-wire-qc__list span { display: block; color: var(--sg-muted); font-size: 11px; }
.sg-wire-qc__list strong { color: var(--sg-navy); font-size: 13px; }
.sg-wired-order ul { display: grid; margin: 24px 0 0; padding: 0; list-style: none; gap: 9px; }
.sg-wired-order li { position: relative; padding-left: 17px; color: var(--sg-navy); font-weight: 800; }
.sg-wired-order li::before { position: absolute; top: .7em; left: 0; width: 6px; height: 6px; background: var(--sg-gold); content: ""; }
.sg-wired-drawing { padding: 34px; background: #eef3f4; }
.sg-wired-drawing > div { position: relative; display: grid; min-height: 300px; place-items: center; border: 8px solid #789da6; background-image: linear-gradient(#68777a 1px,transparent 1px),linear-gradient(90deg,#68777a 1px,transparent 1px); background-size: 38px 38px; }
.sg-wired-drawing b { padding: 8px 12px; background: var(--sg-white); color: var(--sg-navy); }
.sg-wired-drawing span { position: absolute; top: 50%; left: -30px; color: var(--sg-navy); font-weight: 900; transform: rotate(-90deg); }
.sg-wired-drawing em { position: absolute; bottom: -28px; color: var(--sg-navy); font-style: normal; font-weight: 900; }
.sg-wired-drawing small { display: block; margin-top: 30px; color: var(--sg-muted); text-align: center; }

.sg-print-route { display: grid; border: 1px solid rgba(255,255,255,.18); background: #0b1d23; grid-template-columns: 280px 1fr; }
.sg-print-route__buttons { display: grid; align-content: center; padding: 24px; border-right: 1px solid rgba(255,255,255,.15); gap: 10px; }
.sg-print-route__buttons button { display: grid; min-height: 62px; align-items: center; padding: 10px 14px; border: 1px solid #587079; background: #17323a; color: #edf4f5; cursor: pointer; grid-template-columns: 36px 1fr; text-align: left; }
.sg-print-route__buttons button[aria-pressed="true"] { border-color: var(--sg-gold); background: var(--sg-gold); color: var(--sg-navy); }
.sg-print-route__buttons span { font-size: 11px; font-weight: 900; }
.sg-print-route__stage { display: grid; align-items: center; padding: 36px; background: var(--sg-white); color: var(--sg-text); grid-template-columns: minmax(260px, 1fr) minmax(300px, 1fr); gap: 38px; }
.sg-print-swatch { position: relative; min-height: 320px; overflow: hidden; border: 8px solid #86aab3; background: #d8eef0; }
.sg-print-swatch i { position: absolute; inset: 0; }
.sg-print-swatch.is-frit i { background-image: radial-gradient(circle,#244955 0 4px,transparent 5px); background-size: 28px 28px; }
.sg-print-swatch.is-digital i { background: linear-gradient(140deg,#2d7082 0 25%,#e2a72c 25% 47%,#b74f43 47% 68%,#2f725a 68%); }
.sg-print-swatch.is-film i { background: linear-gradient(115deg,rgba(42,111,126,.78),rgba(233,170,39,.64),rgba(177,73,70,.72)); }
.sg-print-swatch b { position: absolute; right: 16px; bottom: 16px; left: 16px; padding: 10px; background: rgba(255,255,255,.9); color: var(--sg-navy); font-size: 12px; text-align: center; }
.sg-print-route__stage article > span { color: var(--sg-gold); font-size: 11px; font-weight: 900; text-transform: uppercase; }
.sg-print-route__stage h3 { margin: 8px 0 12px; }
.sg-print-route__stage dl > div { display: grid; padding: 10px 0; border-bottom: 1px solid var(--sg-line); grid-template-columns: 90px 1fr; gap: 15px; }
.sg-print-route__stage dt { color: var(--sg-muted); font-size: 11px; }
.sg-print-route__stage dd { margin: 0; color: var(--sg-navy); font-size: 12px; font-weight: 800; }
.sg-print-stack { display: grid; overflow: hidden; border: 1px solid var(--sg-line); background: var(--sg-white); grid-template-columns: minmax(0, 1.15fr) minmax(320px, .85fr); }
.sg-print-stack__visual { display: grid; min-height: 360px; align-items: center; padding: 42px; background: #eaf2f4; grid-template-columns: 80px 1fr 24px 20px 1fr 80px; }
.sg-print-stack__visual > * { display: grid; min-height: 210px; place-items: center; padding: 9px; color: var(--sg-navy); font-size: 11px; font-style: normal; text-align: center; }
.sg-print-stack__visual span { background: var(--sg-navy); color: #fff; writing-mode: vertical-rl; }
.sg-print-stack__visual b { border: 8px solid #80a8b2; background: rgba(255,255,255,.76); }
.sg-print-stack__visual i { background: #bc5542; color: #fff; writing-mode: vertical-rl; }
.sg-print-stack__visual em { background: var(--sg-gold); writing-mode: vertical-rl; }
.sg-print-stack__visual i { grid-column: 3; }
.sg-print-stack__visual em { grid-column: 4; }
.sg-print-stack__visual.is-surface-3 i { grid-column: 4; }
.sg-print-stack__visual.is-surface-3 em { grid-column: 3; }
.sg-print-stack__controls { display: grid; align-content: center; padding: 34px; gap: 10px; }
.sg-print-stack__controls button { min-height: 44px; padding: 8px 12px; border: 1px solid #9aabad; background: #eef3f4; color: var(--sg-navy); cursor: pointer; font-weight: 800; }
.sg-print-stack__controls button[aria-pressed="true"] { border-color: var(--sg-gold); background: var(--sg-gold); }
.sg-print-stack__controls article { margin-top: 14px; }
.sg-print-stack__controls article strong { display: block; margin-top: 15px; color: var(--sg-navy); font-size: 12px; }
.sg-print-color-board { display: grid; padding: 28px; background: #eaf2f4; grid-template-columns: repeat(3, 1fr); gap: 14px; }
.sg-print-color-board > div { display: grid; min-height: 230px; align-content: center; justify-items: center; padding: 16px; border: 7px solid #84aab4; text-align: center; }
.sg-print-color-board .is-standard { background: rgba(196,222,225,.72); }
.sg-print-color-board .is-lowiron { background: rgba(234,249,250,.86); }
.sg-print-color-board .is-layered { background: rgba(49,117,106,.55); }
.sg-print-color-board span { color: var(--sg-muted); font-size: 11px; }
.sg-print-color-board b { margin-top: 10px; color: var(--sg-navy); }
.sg-print-color-board small { grid-column: 1 / -1; color: var(--sg-muted); text-align: center; }
.sg-print-approval ul { display: grid; margin: 24px 0 0; padding: 0; list-style: none; gap: 9px; }
.sg-print-approval li { position: relative; padding-left: 18px; color: var(--sg-navy); font-weight: 800; }
.sg-print-approval li::before { position: absolute; top: .7em; left: 0; width: 6px; height: 6px; background: var(--sg-gold); content: ""; }
.sg-print-registration { display: grid; border: 1px solid rgba(255,255,255,.18); background: #0b1d23; grid-template-columns: 1fr 1fr; }
.sg-print-registration__drawing { display: grid; min-height: 380px; place-items: center; padding: 44px; }
.sg-print-registration__drawing > div { position: relative; width: min(420px, 90%); aspect-ratio: 1.55; border: 8px solid #81a9b3; background: rgba(255,255,255,.1); }
.sg-print-registration__drawing > div::before { position: absolute; inset: 28px; border: 24px solid #bd5941; content: ""; }
.sg-print-registration__drawing i { position: absolute; top: 50%; left: 16%; width: 42px; height: 42px; border: 4px solid var(--sg-gold); border-radius: 50%; transform: translate(-50%,-50%); }
.sg-print-registration__drawing b { position: absolute; top: 50%; left: 50%; padding: 8px; background: #fff; color: var(--sg-navy); font-size: 11px; transform: translate(-50%,-50%); }
.sg-print-registration__drawing span { position: absolute; top: 34px; left: 50%; color: #fff; font-size: 10px; transform: translateX(-50%); }
.sg-print-registration__drawing em { position: absolute; bottom: 17px; left: 17px; color: var(--sg-gold); font-size: 10px; font-style: normal; }
.sg-print-registration > div:last-child { display: grid; align-content: center; padding: 34px; background: var(--sg-white); color: var(--sg-text); }
.sg-print-registration dl > div { padding: 11px 0; border-bottom: 1px solid var(--sg-line); }
.sg-print-registration dt { color: var(--sg-muted); font-size: 11px; }
.sg-print-registration dd { margin: 4px 0 0; color: var(--sg-navy); font-size: 13px; font-weight: 800; }

@media (max-width: 1050px) {
  .sg-laminate-overview,
  .sg-printed-intro,
  .sg-wired-intro { grid-template-columns: 1fr; gap: 38px; }
  .sg-laminate-option-grid,
  .sg-wire-catalog { grid-template-columns: repeat(2, 1fr); }
  .sg-build-up-strip { grid-template-columns: repeat(3, 1fr); }
  .sg-build-up-strip > div { border-bottom: 1px solid var(--sg-line); }
  .sg-temper-sequence { grid-template-columns: 1fr; gap: 8px; }
  .sg-temper-sequence > i { width: 2px; height: 22px; margin: auto; }
  .sg-temper-sequence > i::after { top: auto; right: -4px; bottom: 0; transform: rotate(135deg); }
}

@media (max-width: 820px) {
  .sg-laminate-process-layout,
  .sg-laminate-application-layout,
  .sg-temper-alignment,
  .sg-print-approval,
  .sg-wired-applications,
  .sg-wired-order,
  .sg-sgp-condition__stage,
  .sg-print-route__stage { grid-template-columns: 1fr; gap: 32px; }
  .sg-build-decoder,
  .sg-sgp-condition,
  .sg-wired-gate,
  .sg-print-route,
  .sg-print-stack,
  .sg-print-registration,
  .sg-wire-qc { grid-template-columns: 1fr; }
  .sg-build-decoder__controls,
  .sg-sgp-condition__controls,
  .sg-wired-gate__controls,
  .sg-print-route__buttons { border-right: 0; border-bottom: 1px solid rgba(255,255,255,.16); }
  .sg-print-route__buttons { grid-template-columns: repeat(3, 1fr); }
  .sg-print-route__buttons button { grid-template-columns: 1fr; text-align: center; }
  .sg-laminated-page .sg-qc-dashboard,
  .sg-wired-page .sg-qc-dashboard,
  .sg-printed-lam-page .sg-qc-dashboard { grid-template-columns: repeat(2, 1fr); }
}

@media (max-width: 560px) {
  .sg-laminate-overview h2,
  .sg-printed-intro h2,
  .sg-wired-intro h2 { font-size: 30px; }
  .sg-build-decoder__result { padding: 24px 18px; grid-template-columns: 1fr; }
  .sg-laminate-stack { min-height: 190px; }
  .sg-laminate-option-grid,
  .sg-wire-catalog,
  .sg-build-up-strip,
  .sg-laminated-page .sg-qc-dashboard,
  .sg-wired-page .sg-qc-dashboard,
  .sg-printed-lam-page .sg-qc-dashboard,
  .sg-postbreak-diagram,
  .sg-fire-impact { grid-template-columns: 1fr; }
  .sg-laminate-option-grid p { min-height: 0; }
  .sg-laminate-edge-diagram { grid-template-columns: 1fr; }
  .sg-sgp-condition__stage,
  .sg-wired-gate__result,
  .sg-print-route__stage,
  .sg-print-stack__visual,
  .sg-print-registration__drawing { padding: 22px 16px; }
  .sg-sgp-beam { grid-template-columns: 24px 1fr 16px 1fr 24px; }
  .sg-print-route__buttons { grid-template-columns: 1fr; }
  .sg-print-route__buttons button { grid-template-columns: 30px 1fr; text-align: left; }
  .sg-print-stack__visual { grid-template-columns: 44px 1fr 18px 16px 1fr 44px; }
  .sg-print-stack__visual > * { min-height: 170px; padding: 4px; font-size: 9px; }
  .sg-print-color-board { grid-template-columns: 1fr; }
  .sg-print-color-board small { grid-column: auto; }
  .sg-wire-depth { grid-template-columns: .8fr 12px 1fr 12px .8fr; }
  .sg-wire-depth > * { padding: 4px; font-size: 9px; }
  .sg-ply-alignment-diagram { min-height: 300px; padding: 35px 22px; }
}

/* 2.1.18 product-page visual consistency audit. */
.sg-product-page .sg-comparison-table {
  width: 100%;
  border: 1px solid var(--sg-line);
  border-collapse: collapse;
  background: var(--sg-white);
}
.sg-product-page .sg-comparison-table th,
.sg-product-page .sg-comparison-table td {
  padding: 15px 17px;
  border-right: 1px solid var(--sg-line);
  border-bottom: 1px solid var(--sg-line);
  color: var(--sg-muted);
  font-size: 14px;
  line-height: 1.55;
  text-align: left;
  vertical-align: top;
}
.sg-product-page .sg-comparison-table thead th {
  background: var(--sg-navy);
  color: var(--sg-white);
  font-weight: 800;
}
.sg-product-page .sg-comparison-table tbody th {
  width: 24%;
  background: #eef2f3;
  color: var(--sg-navy);
  font-weight: 800;
}
.sg-product-page .sg-comparison-table tbody tr:nth-child(even) td { background: #fafbfb; }

body.sg-native-theme .sg-product-hero h1,
body.sg-native-theme .sg-specification-panel > h2,
body.sg-native-theme .sg-contact-heading h2,
body.sg-native-theme .sg-product-section--technical > .wrap > header h2,
body.sg-native-theme .sg-product-section--technical > .wrap > .sg-product-heading h2,
body.sg-native-theme .sg-product-section--technical .sg-rfq-layout > :first-child h2,
body.sg-native-theme .sg-product-section--technical .sg-validation-grid h3,
body.sg-native-theme .sg-product-section--technical .sg-education-band:not(.sg-education-band--light) h3,
body.sg-native-theme .sg-qc-dashboard__checks h3,
body.sg-native-theme .sg-plate-finish-strip > div h3 { color: var(--sg-white); }
body.sg-native-theme .sg-product-section--technical > .wrap > header p,
body.sg-native-theme .sg-product-section--technical > .wrap > .sg-product-heading p,
body.sg-native-theme .sg-product-section--technical .sg-rfq-layout > :first-child p,
body.sg-native-theme .sg-product-section--technical .sg-validation-grid p,
body.sg-native-theme .sg-product-section--technical .sg-education-band:not(.sg-education-band--light) p { color: #d3dfe1; }
body.sg-native-theme .sg-product-page .sg-education-band:not(.sg-education-band--light) h3 { color: var(--sg-white); }
body.sg-native-theme .sg-product-page .sg-education-band:not(.sg-education-band--light) p { color: #d3dfe1; }
body.sg-native-theme .sg-product-page .sg-product-section--technical .sg-plate-qc-layout > div:first-child > h2 { color: var(--sg-white); }
body.sg-native-theme .sg-product-section--technical .sg-validation-grid strong { color: var(--sg-white); }
body.sg-native-theme .sg-qc-dashboard__checks strong { color: #e9f1f2; }
body.sg-native-theme .sg-qc-dashboard__checks > p { color: #d0dcde; }
body.sg-native-theme .sg-plate-finish-strip > div p { color: #d0dcde; }

.sg-rfq-layout { align-items: center; gap: 50px; }
.sg-rfq-layout ul,
.sg-rfq-layout .sg-check-list,
.sg-rfq-panel ul {
  display: grid;
  margin: 20px 0 0;
  padding: 1px;
  background: var(--sg-line);
  grid-template-columns: repeat(2, minmax(0, 1fr));
  gap: 1px;
  list-style: none;
}
.sg-rfq-layout ul li,
.sg-rfq-layout .sg-check-list li,
.sg-rfq-panel ul li {
  display: flex;
  min-height: 52px;
  align-items: center;
  padding: 10px 13px;
  background: #f5f7f7;
  color: var(--sg-navy);
  font-size: 12px;
  font-weight: 700;
  line-height: 1.45;
}
.sg-rfq-layout ul li::before,
.sg-rfq-layout .sg-check-list li::before,
.sg-rfq-panel ul li::before { display: none; content: none; }
.sg-rfq-layout ul li:last-child:nth-child(odd),
.sg-rfq-layout .sg-check-list li:last-child:nth-child(odd),
.sg-rfq-panel ul li:last-child:nth-child(odd) { grid-column: 1 / -1; }
.sg-product-section--technical .sg-rfq-layout > :first-child ul,
.sg-product-section--technical .sg-rfq-layout > :first-child .sg-check-list { background: rgba(255, 255, 255, .18); }
.sg-product-section--technical .sg-rfq-layout > :first-child ul li,
.sg-product-section--technical .sg-rfq-layout > :first-child .sg-check-list li {
  background: rgba(255, 255, 255, .055);
  color: #edf4f5;
}
.sg-rfq-panel { padding: 30px 32px; }
.sg-rfq-panel > p { margin-bottom: 18px; }
.sg-rfq-panel ul { margin-bottom: 22px; }

body.sg-native-theme .sg-product-section--technical .sg-rfq-panel p,
body.sg-native-theme .sg-product-section--technical .sg-deadfront__controls-panel p,
body.sg-native-theme .sg-product-section--technical .sg-choice-tool__result p,
body.sg-native-theme .sg-product-section--technical .sg-shape-controls p,
body.sg-native-theme .sg-product-section--technical .sg-plate-path-tool__body article p,
body.sg-native-theme .sg-product-section--technical .sg-cnc-planner__result p,
body.sg-native-theme .sg-product-section--technical .sg-drawing-tool__panel p,
body.sg-native-theme .sg-product-section--technical .sg-option-grid p,
body.sg-native-theme .sg-product-section--technical .sg-qc-dashboard__steps p,
body.sg-native-theme .sg-product-section--technical .sg-surface-controls p,
body.sg-native-theme .sg-product-section--technical .sg-resistance-controls p,
body.sg-native-theme .sg-product-section--technical .sg-build-decoder__result p,
body.sg-native-theme .sg-product-section--technical .sg-sgp-condition__stage p,
body.sg-native-theme .sg-product-section--technical .sg-wired-gate__result p,
body.sg-native-theme .sg-product-section--technical .sg-wire-qc__list p,
body.sg-native-theme .sg-product-section--technical .sg-print-route__stage p,
body.sg-native-theme .sg-product-section--technical .sg-print-registration > div:last-child p { color: var(--sg-muted); }

@media (max-width: 720px) {
  .sg-product-page .sg-comparison-table { min-width: 680px; }
  .sg-rfq-layout ul,
  .sg-rfq-layout .sg-check-list,
  .sg-rfq-panel ul { grid-template-columns: 1fr; }
  .sg-rfq-layout ul li,
  .sg-rfq-layout .sg-check-list li,
  .sg-rfq-panel ul li { min-height: 0; }
}

/* 2.1.22 single-page preview: project route tabs and integrated contact brief. */
.sg-related-band--tabs { padding: 76px 0 82px; background: #eef1f2; }
.sg-route-tabs__heading { display: grid; align-items: end; margin-bottom: 32px; grid-template-columns: .38fr 1fr; gap: 50px; }
.sg-route-tabs__heading .overline { align-self: start; margin-top: 8px; }
.sg-route-tabs__heading h2 { max-width: 770px; margin: 0 0 10px; font-size: 36px; }
.sg-route-tabs__heading p { max-width: 760px; margin: 0; color: var(--sg-muted); }
.sg-route-tabs { border: 1px solid #c6d0d3; background: var(--sg-white); }
.sg-route-tabs .sg-tab-list { border: 0; border-bottom: 1px solid #c6d0d3; background: #e2e8ea; }
.sg-route-tabs .sg-tab-list button { display: grid; min-height: 82px; padding: 17px 26px; border-right: 1px solid #c6d0d3; border-bottom: 4px solid transparent; place-content: center start; background: transparent; color: var(--sg-navy); text-align: left; }
.sg-route-tabs .sg-tab-list button:last-child { border-right: 0; }
.sg-route-tabs .sg-tab-list button span { color: #77878c; font-size: 11px; font-weight: 800; text-transform: uppercase; }
.sg-route-tabs .sg-tab-list button strong { margin-top: 3px; font-size: 17px; }
.sg-route-tabs .sg-tab-list button[aria-selected="true"] { border-bottom-color: var(--sg-gold); background: var(--sg-navy); color: var(--sg-white); }
.sg-route-tabs .sg-tab-list button[aria-selected="true"] span { color: var(--sg-gold); }
.sg-route-tabs .sg-tab-panel { padding: 0; border: 0; }
.sg-route-tab__layout { display: grid; min-height: 260px; grid-template-columns: .72fr 1.28fr; }
.sg-route-tab__intro { padding: 38px 40px; border-right: 1px solid var(--sg-line); background: #f8f9f9; }
.sg-route-tab__intro span { color: var(--sg-gold-dark); font-size: 11px; font-weight: 800; text-transform: uppercase; }
.sg-route-tab__intro h3 { margin: 9px 0 14px; font-size: 27px; }
.sg-route-tab__intro p { margin: 0; color: var(--sg-muted); }
.sg-route-tab__links { display: grid; grid-template-columns: repeat(3, minmax(0, 1fr)); }
.sg-route-tab__links a { display: flex; min-width: 0; padding: 34px 25px; flex-direction: column; justify-content: space-between; border-right: 1px solid var(--sg-line); background: var(--sg-white); color: var(--sg-navy); }
.sg-route-tab__links a:last-child { border-right: 0; }
.sg-route-tab__links a:hover { background: #f4f7f7; }
.sg-route-tab__links a strong { font-size: 18px; line-height: 1.3; }
.sg-route-tab__links a small { margin-top: 22px; color: var(--sg-muted); font-size: 13px; line-height: 1.55; }
.sg-route-tab__links a b { margin-top: 26px; color: var(--sg-gold-dark); font-size: 12px; text-transform: uppercase; }
.sg-contact-heading--rfq { padding: 48px 0; text-align: left; }
.sg-contact-brief { display: grid; align-items: center; grid-template-columns: minmax(300px, .72fr) minmax(0, 1.28fr); gap: 72px; }
.sg-contact-heading--rfq .sg-contact-brief > div:first-child span { color: var(--sg-gold); }
.sg-contact-heading--rfq .sg-contact-brief h2 { max-width: 470px; margin: 6px 0 0; font-size: 35px; line-height: 1.16; }
.sg-contact-brief__copy { padding-left: 34px; border-left: 3px solid var(--sg-gold); }
.sg-contact-heading--rfq .sg-contact-brief__copy p { max-width: none; margin: 0; color: #e4ecee; font-size: 15px; line-height: 1.7; }
.sg-contact-heading--rfq .sg-contact-brief__copy p + p { margin-top: 10px; color: #b9c8cc; font-size: 13px; }
.sg-contact-brief__copy strong { color: var(--sg-white); }

@media (max-width: 900px) {
  .sg-route-tabs__heading,
  .sg-route-tab__layout,
  .sg-contact-brief { grid-template-columns: 1fr; gap: 22px; }
  .sg-route-tab__intro { border-right: 0; border-bottom: 1px solid var(--sg-line); }
  .sg-contact-brief__copy { padding-left: 0; padding-top: 22px; border-top: 2px solid var(--sg-gold); border-left: 0; }
}

@media (max-width: 640px) {
  .sg-related-band--tabs { padding: 54px 0 60px; }
  .sg-route-tabs__heading h2 { font-size: 29px; }
  .sg-route-tabs .sg-tab-list { display: grid; overflow: visible; grid-template-columns: 1fr; }
  .sg-route-tabs .sg-tab-list button { min-height: 62px; border-right: 0; border-bottom-width: 1px; }
  .sg-route-tabs .sg-tab-list button[aria-selected="true"] { border-bottom: 4px solid var(--sg-gold); }
  .sg-route-tab__intro { padding: 28px 22px; }
  .sg-route-tab__links { grid-template-columns: 1fr; }
  .sg-route-tab__links a { min-height: 150px; padding: 25px 22px; border-right: 0; border-bottom: 1px solid var(--sg-line); }
  .sg-route-tab__links a:last-child { border-bottom: 0; }
  .sg-contact-heading--rfq { padding: 42px 0; }
  .sg-contact-heading--rfq .sg-contact-brief h2 { font-size: 29px; }
}

/* 2.1.23 alternative preview: engineering specification navigator. */
.sg-related-band--spec-nav { padding: 72px 0 80px; background: #edf1f2; }
.sg-spec-nav__heading { display: flex; max-width: 1010px; align-items: flex-start; justify-content: space-between; margin: 0 0 30px auto; gap: 48px; }
.sg-spec-nav__heading > span { flex: 0 0 auto; margin-top: 8px; }
.sg-spec-nav__heading > div { max-width: 760px; }
.sg-spec-nav__heading h2 { margin: 0 0 9px; font-size: 34px; }
.sg-spec-nav__heading p { margin: 0; color: var(--sg-muted); }
.sg-spec-nav { display: grid; min-height: 470px; border: 1px solid #bcc8cb; background: var(--sg-white); grid-template-columns: 300px minmax(0, 1fr); }
.sg-spec-nav__rail { display: flex; min-width: 0; flex-direction: column; background: var(--sg-navy); color: var(--sg-white); }
.sg-spec-nav__context { padding: 28px 28px 24px; border-bottom: 1px solid rgba(255, 255, 255, .16); }
.sg-spec-nav__context span { display: block; margin-bottom: 7px; color: var(--sg-gold); font-size: 10px; font-weight: 800; text-transform: uppercase; }
.sg-spec-nav__context strong { display: block; color: var(--sg-white); font-size: 16px; line-height: 1.4; }
.sg-spec-nav .sg-tab-list { display: flex; flex: 1; flex-direction: column; overflow: visible; border: 0; }
.sg-spec-nav .sg-tab-list button { position: relative; display: grid; width: 100%; min-height: 112px; padding: 21px 28px 21px 32px; flex: 1 1 0; border: 0; border-bottom: 1px solid rgba(255, 255, 255, .13); border-left: 4px solid transparent; place-content: center start; background: transparent; color: #d4dfe1; text-align: left; }
.sg-spec-nav .sg-tab-list button:last-child { border-bottom: 0; }
.sg-spec-nav .sg-tab-list button span { color: #8da0a5; font-size: 10px; font-weight: 800; text-transform: uppercase; }
.sg-spec-nav .sg-tab-list button strong { margin-top: 4px; color: inherit; font-size: 18px; }
.sg-spec-nav .sg-tab-list button small { margin-top: 3px; color: #9fb0b4; font-size: 11px; }
.sg-spec-nav .sg-tab-list button[aria-selected="true"] { border-bottom-color: rgba(255, 255, 255, .13); border-left-color: var(--sg-gold); background: #233b43; color: var(--sg-white); }
.sg-spec-nav .sg-tab-list button[aria-selected="true"] span { color: var(--sg-gold); }
.sg-spec-nav .sg-tab-list button:focus-visible { z-index: 1; outline: 3px solid var(--sg-gold); outline-offset: -3px; }
.sg-spec-nav__stage { min-width: 0; background: var(--sg-white); }
.sg-spec-nav .sg-tab-panel { height: 100%; padding: 0; border: 0; }
.sg-spec-sheet { display: grid; height: 100%; grid-template-rows: auto 1fr; }
.sg-related-band--spec-nav .sg-spec-sheet__head { display: grid; margin: 0; padding: 31px 38px 27px; align-items: end; border-bottom: 1px solid var(--sg-line); grid-template-columns: minmax(0, 1fr) auto; gap: 32px; }
.sg-spec-sheet__head span { display: block; margin-bottom: 6px; color: var(--sg-gold-dark); font-size: 10px; font-weight: 800; text-transform: uppercase; }
.sg-spec-sheet__head h3 { max-width: 640px; margin: 0; font-size: 27px; }
.sg-spec-sheet__head dl { min-width: 210px; margin: 0; }
.sg-spec-sheet__head dt { color: var(--sg-muted); font-size: 10px; font-weight: 800; text-transform: uppercase; }
.sg-spec-sheet__head dd { margin: 3px 0 0; color: var(--sg-navy); font-size: 13px; font-weight: 700; }
.sg-spec-sheet__body { display: grid; min-height: 0; grid-template-columns: minmax(235px, .55fr) minmax(0, 1.45fr); }
.sg-spec-sheet__guide { padding: 31px 32px; border-right: 1px solid var(--sg-line); background: #f5f7f7; }
.sg-spec-sheet__guide > p { margin: 0; color: var(--sg-muted); font-size: 14px; line-height: 1.75; }
.sg-spec-sequence { display: grid; margin-top: 28px; }
.sg-spec-sequence span { position: relative; padding: 9px 0 9px 20px; border-left: 1px solid #aebbc0; color: #7b8b90; font-size: 11px; font-weight: 800; text-transform: uppercase; }
.sg-spec-sequence span::before { position: absolute; top: 50%; left: -4px; width: 7px; height: 7px; background: #aebbc0; content: ""; transform: translateY(-50%); }
.sg-spec-sequence span.is-current { border-left-color: var(--sg-gold); color: var(--sg-navy); }
.sg-spec-sequence span.is-current::before { background: var(--sg-gold); }
.sg-spec-destinations { min-width: 0; }
.sg-spec-destinations a { display: grid; min-height: 112px; padding: 22px 27px; align-items: center; border-bottom: 1px solid var(--sg-line); color: var(--sg-navy); grid-template-columns: minmax(0, 1fr) auto; gap: 22px; }
.sg-spec-destinations a:last-child { border-bottom: 0; }
.sg-spec-destinations a:hover { background: #f5f8f8; }
.sg-spec-destinations a > span { color: var(--sg-gold-dark); font-size: 11px; font-weight: 800; }
.sg-spec-destinations a strong { display: block; font-size: 17px; }
.sg-spec-destinations a p { margin: 4px 0 0; color: var(--sg-muted); font-size: 12px; line-height: 1.55; }
.sg-spec-destinations a b { padding-left: 18px; color: var(--sg-teal); font-size: 10px; text-transform: uppercase; white-space: nowrap; }
.sg-spec-destinations a b::after { margin-left: 9px; content: ">"; color: var(--sg-gold-dark); }

@media (max-width: 940px) {
  .sg-spec-nav__heading { display: grid; max-width: none; margin-left: 0; gap: 8px; }
  .sg-spec-nav { grid-template-columns: 1fr; }
  .sg-spec-nav__rail { display: block; }
  .sg-spec-nav .sg-tab-list { display: grid; overflow-x: auto; grid-template-columns: repeat(3, minmax(190px, 1fr)); }
  .sg-spec-nav .sg-tab-list button { min-height: 90px; border-right: 1px solid rgba(255, 255, 255, .13); border-bottom: 4px solid transparent; border-left: 0; }
  .sg-spec-nav .sg-tab-list button[aria-selected="true"] { border-right-color: rgba(255, 255, 255, .13); border-bottom-color: var(--sg-gold); border-left: 0; }
}

@media (max-width: 680px) {
  .sg-related-band--spec-nav { padding: 52px 0 58px; }
  .sg-spec-nav__heading h2 { font-size: 29px; }
  .sg-spec-nav__context { padding: 22px 20px 18px; }
  .sg-spec-nav .sg-tab-list { overflow: visible; grid-template-columns: repeat(3, minmax(0, 1fr)); }
  .sg-spec-nav .sg-tab-list button { min-width: 0; padding: 15px 10px; }
  .sg-spec-nav .sg-tab-list button strong { font-size: 15px; line-height: 1.3; }
  .sg-spec-nav .sg-tab-list button small { display: none; }
  .sg-related-band--spec-nav .sg-spec-sheet__head { grid-template-columns: 1fr; padding: 27px 22px 23px; gap: 15px; }
  .sg-spec-sheet__head h3 { font-size: 24px; }
  .sg-spec-sheet__head dl { min-width: 0; }
  .sg-spec-sheet__body { grid-template-columns: 1fr; }
  .sg-spec-sheet__guide { padding: 25px 22px; border-right: 0; border-bottom: 1px solid var(--sg-line); }
  .sg-spec-sequence { grid-template-columns: repeat(3, 1fr); }
  .sg-spec-sequence span { padding: 9px 5px 0; border-top: 1px solid #aebbc0; border-left: 0; text-align: center; }
  .sg-spec-sequence span::before { top: -4px; left: 50%; transform: translateX(-50%); }
  .sg-spec-sequence span.is-current { border-top-color: var(--sg-gold); border-left: 0; }
  .sg-spec-destinations a { min-height: 0; padding: 22px; grid-template-columns: 1fr; }
  .sg-spec-destinations a b { grid-column: auto; padding: 0; }
}
