.panel {
  position:relative;
  padding-block:var(--panel-pad);
  border-bottom:1px solid var(--rule);
  min-width:0;
}
.panel > .container > * { min-width: 0; }
.panel--white { background: var(--white); }
.panel--frost { background: var(--frost); }
.panel--ink {
  background:var(--ink);
  color:var(--frost);
  border-bottom-color:var(--rule-dark);
  background-image:
    linear-gradient(to right, rgba(255, 255, 255, .035) 1px, transparent 1px),
    linear-gradient(to bottom, rgba(255, 255, 255, .035) 1px, transparent 1px);

  background-size:var(--grid-size);
}
.panel--ink h2, .panel--ink h3 { color: var(--white); }
.panel--ink .lead { color: var(--steel-light); }
@media (min-width: 960px) {
  .panel--full { min-height: 100vh; min-height: 100svh; display: flex; flex-direction: column; justify-content: center; }
  .panel--full > .container { width: 100%; }
}
.panel__code {
  display:flex;
  flex-wrap:wrap;
  align-items:center;
  justify-content:space-between;
  gap:6px 18px;
  margin-bottom:clamp(28px, 4vw, 52px);
  padding-bottom:12px;
  border-bottom:1px solid var(--rule);
  font-family:var(--bega-822);
  font-size:var(--fs-label);
  font-weight:500;
  letter-spacing:var(--track-label);
  text-transform:uppercase;
  color:var(--steel);
}
.panel__code > :first-child { display: inline-flex; align-items: center; gap: 10px; color: var(--ink); }
.panel__code > :first-child::before { content: ""; width: 8px; height: 8px; background: var(--signal); flex: none; }
.panel--ink .panel__code { border-bottom-color: var(--rule-dark); color: var(--steel-light); }
.panel--ink .panel__code > :first-child { color: var(--white); }
.panel__intro { display: grid; grid-template-columns: minmax(0, 1fr); gap: var(--sp-5); margin-bottom: clamp(32px, 5vw, 64px); }
.panel__intro > * { min-width: 0; }
@media (min-width: 900px) {
  .panel__intro { grid-template-columns: minmax(0, 1.1fr) minmax(0, 1fr); align-items: end; gap: var(--sp-8); }
}
.panel__title { font-size: var(--fs-display); font-weight: 700; line-height: 1; letter-spacing: var(--track-tight); }


.hero {
  position:relative;
  padding-block:clamp(40px, 8vh, 110px) var(--panel-pad);
  border-bottom:1px solid var(--rule);
  overflow:hidden;
  container-type:inline-size;
}
.hero::before {
  content:"";
  position:absolute;
  top:0;
  right:0;
  width:min(46%, 640px);
  height:100%;
  background:var(--white);
  border-left:1px solid var(--rule);
  pointer-events:none;
}
.hero > .container { position: relative; z-index: 1; }
.hero__lockup { margin-top: clamp(36px, 5vw, 56px); margin-bottom: clamp(28px, 4vw, 52px); }
.hero__lockup.lockup--hero { font-size: min(var(--fs-hero), 14.5cqi); }
.hero__grid { display: grid; grid-template-columns: minmax(0, 1fr); gap: clamp(32px, 4vw, 56px); align-items: start; }
.hero__grid > * { min-width: 0; }
@media (min-width: 1100px) {
  .hero__grid { grid-template-columns: repeat(12, minmax(0, 1fr)); column-gap: clamp(16px, 2vw, 28px); }
  .hero__copy { grid-column: 1 / span 5; padding-top: 8px; }
  .hero__frame { grid-column: 6 / -1; }
}
@media (min-width: 700px) and (max-width: 1099.98px) {
  .hero__grid { grid-template-columns: minmax(0, 1fr) minmax(0, 1.2fr); }
}
.hero__copy .lead { margin-bottom: var(--sp-6); }
.hero__figures { display: grid; grid-template-columns: repeat(2, minmax(0, 1fr)); gap: 14px; margin-bottom: var(--sp-6); }
.hero__figures .bracket { background: var(--white); }
.hero__figures .hud-figure__value { font-size: clamp(2.5rem, 5vw + .5rem, 4.5rem); }
.hero__actions { display: flex; flex-wrap: wrap; gap: 12px 14px; }
.hero__actions .btn { flex: 0 1 auto; }
@media (max-width: 419.98px) { .hero__actions .btn { flex: 1 1 100%; } }
.hero__frame .frame__media { aspect-ratio: 3 / 2; }
.hero__frame .frame__media img { aspect-ratio: 3 / 2; }
.hero__readout {
  display:flex;
  flex-wrap:wrap;
  justify-content:space-between;
  gap:4px 16px;
  padding:10px 2px 0;
  font-family:var(--bega-822);
  font-size:var(--fs-meta);
  color:var(--steel);

}
.hero__readout strong { color: var(--ink); font-weight: 500; }
@media (max-width: 699.98px) { .hero::before { display: none; } }


.rail-panel { overflow: hidden; }
.rail { position: relative; min-width: 0; }
.rail__viewport {
  display:flex;
  gap:0;
  overflow-x:auto;
  overflow-y:hidden;
  scroll-snap-type:x mandatory;
  scroll-padding-inline:0;
  overscroll-behavior-x:contain;
  scrollbar-width:none;
  border-top:1px solid var(--ink);
  border-bottom:1px solid var(--rule);
  border-left:1px solid var(--rule);
  background:var(--white);
  cursor:grab;
  outline:none;
}
.rail__viewport::-webkit-scrollbar { display: none; }
.rail__viewport:focus-visible { box-shadow: inset 0 0 0 2px var(--signal); }
.rail__viewport.is-dragging { cursor: grabbing; scroll-snap-type: none; user-select: none; }
.rail__viewport.is-dragging a { pointer-events: none; }
.rail__track { display: contents; list-style: none; margin: 0; padding: 0; }
.rail-card {
  position:relative;
  flex:0 0 clamp(260px, 30vw, 360px);
  min-width:0;
  min-height:clamp(400px, 58vh, 540px);
  display:flex;
  flex-direction:column;
  gap:14px;
  padding:22px 24px 24px;
  border-right:1px solid var(--rule);
  scroll-snap-align:start;
  background:var(--white);
  transition:background-color var(--dur-base) var(--ease-out);
}
.rail-card::before {
  content:"";
  position:absolute;
  left:0;
  right:0;
  top:-1px;
  height:3px;
  background:var(--signal);
  transform:scaleX(0);
  transform-origin:left;
  transition:transform var(--dur-med) var(--ease-out);
}
.rail-card:hover, .rail-card:focus-within { background: var(--paper); }
.rail-card:hover::before, .rail-card:focus-within::before { transform: scaleX(1); }
.rail-card__num {
  font-family:var(--bega-867);
  font-size:clamp(3.4rem, 5vw + 1rem, 5.25rem);
  font-weight:700;
  line-height:.85;
  letter-spacing:var(--track-tight);
  color:var(--frost);
  -webkit-text-stroke:1px var(--rule-strong);
  transition:color var(--dur-base) var(--ease-out), -webkit-text-stroke-color var(--dur-base) var(--ease-out);

}
.rail-card:hover .rail-card__num, .rail-card:focus-within .rail-card__num { color: var(--signal-wash); -webkit-text-stroke-color: var(--signal); }
.rail-card__code { font-family: var(--bega-822); font-size: var(--fs-label); letter-spacing: var(--track-label); text-transform: uppercase; color: var(--steel); }
.rail-card__title { font-size: var(--fs-h3); line-height: 1.12; }
.rail-card__title a { color: inherit; text-decoration: none; }
.rail-card__title a::after { content: ""; position: absolute; inset: 0; z-index: 1; }
.rail-card__title a:focus-visible { outline: none; }
.rail-card:focus-within { box-shadow: inset 0 0 0 2px var(--signal); }
.rail-card__specs { display: grid; gap: 0; margin: 0; margin-top: auto; border-top: 1px solid var(--rule); }
.rail-card__specs dd { flex: 1 1 14ch; }
.rail-card__specs div { display: flex; flex-wrap: wrap; gap: 2px 10px; padding: 8px 0; border-bottom: 1px dashed var(--rule); }
.rail-card__specs dt { font-family: var(--bega-822); font-size: var(--fs-label); letter-spacing: var(--track-label); text-transform: uppercase; color: var(--steel); padding-top: 2px; }
.rail-card__specs dd { margin: 0; font-family: var(--bega-822); font-size: var(--fs-meta); color: var(--ink); min-width: 0; }
.rail-card__go { display: inline-flex; align-items: center; gap: 8px; min-height: 44px; font-family: var(--bega-867); font-weight: 600; color: var(--signal-ink); }
.rail-card__go .icon { width: 16px; height: 16px; transition: transform var(--dur-base) var(--ease-out); }
.rail-card:hover .rail-card__go .icon { transform: translateX(4px); }
.rail__controls {
  display:flex;
  flex-wrap:wrap;
  align-items:center;
  gap:14px 20px;
  margin-top:20px;
}
html:not(.js) .rail__controls { display: none; }
.rail__buttons { display: flex; gap: 8px; }
.rail__progress { flex: 1 1 220px; min-width: 0; display: flex; align-items: center; gap: 14px; }
.rail__track-bar { position: relative; flex: 1 1 auto; height: 10px; border-bottom: 1px solid var(--rule-strong); background-image: linear-gradient(to right, var(--rule-strong) 1px, transparent 1px); background-size: calc(100% / 11) 6px; background-repeat: repeat-x; background-position: 0 100%; }
.rail__fill { position: absolute; left: 0; bottom: -1px; height: 3px; width: var(--rail-progress, 9%); background: var(--signal); transition: width var(--dur-base) var(--ease-out); }
.rail__readout { flex: none; font-family: var(--bega-822); font-size: var(--fs-meta); color: var(--ink); font-variant-numeric: tabular-nums; }
.rail__readout span { color: var(--steel); }
.rail__hint { font-family: var(--bega-822); font-size: var(--fs-label); letter-spacing: var(--track-label); text-transform: uppercase; color: var(--steel); }
@media (prefers-reduced-motion: reduce) {
  .rail__viewport { display: grid; grid-template-columns: repeat(auto-fill, minmax(min(100%, 260px), 1fr)); overflow: visible; scroll-snap-type: none; cursor: auto; border-left: 0; }
  .rail-card { min-height: 0; border-bottom: 1px solid var(--rule); border-left: 1px solid var(--rule); }
  .rail__controls { display: none; }
}
@media (pointer: coarse) and (max-width: 767.98px) {
  .rail__viewport { flex-direction: column; overflow: visible; scroll-snap-type: none; cursor: auto; border-left: 1px solid var(--rule); border-right: 1px solid var(--rule); }
  .rail-card { flex: 0 0 auto; min-height: 0; border-right: 0; border-bottom: 1px solid var(--rule); }
  .rail-card__num { font-size: 3rem; }
  .rail__controls { display: none; }
}


.count-grid { display: grid; grid-template-columns: minmax(0, 1fr); gap: clamp(32px, 5vw, 64px); align-items: start; }
.count-grid > * { min-width: 0; }
@media (min-width: 1000px) { .count-grid { grid-template-columns: minmax(0, 1.25fr) minmax(0, 1fr); } }
.count-grid .frame__media { aspect-ratio: 3 / 2; }
.count-steps { list-style: none; margin: var(--sp-6) 0 0; padding: 0; border-top: 1px solid var(--ink); }
.count-steps li { display: grid; grid-template-columns: 3rem minmax(0, 1fr); gap: 14px; padding: 16px 0; border-bottom: 1px solid var(--rule); }
.count-steps li > span:first-child { font-family: var(--bega-822); font-size: var(--fs-meta); color: var(--signal-ink); padding-top: 3px; }
.count-steps h3 { font-size: var(--fs-h4); margin-bottom: 4px; }
.count-steps p { font-size: var(--fs-small); color: var(--ink-2); }
.count-label-wrap { margin-top: var(--sp-7); display: flex; justify-content: flex-start; }
.count-label-wrap .lot-label { width: 100%; }


.grade-layout { display: grid; grid-template-columns: minmax(0, 1fr); gap: var(--sp-7); }
.grade-layout > * { min-width: 0; }
.grade-mark { display: inline-flex; align-items: center; gap: 10px; font-family: var(--bega-822); font-size: var(--fs-meta); }
.grade-mark__dot { width: 10px; height: 10px; border: 1px solid currentColor; flex: none; }
.grade-mark__dot--zinc { background: var(--zinc-yellow); border-color: var(--zinc-yellow); }
.grade-mark__dot--signal { background: var(--signal); border-color: var(--signal); }
.grade-foot { display: grid; grid-template-columns: minmax(0, 1fr); gap: 14px; margin-top: var(--sp-6); font-size: var(--fs-small); color: var(--steel-light); }
@media (min-width: 800px) { .grade-foot { grid-template-columns: repeat(2, minmax(0, 1fr)); gap: 24px; } }
.grade-foot p { padding-left: 14px; border-left: 2px solid var(--signal); }


.readout {
  position:relative;
  background:var(--white);
  border:1px solid var(--ink);
  box-shadow:8px 8px 0 var(--frost);
}
.readout__screen {
  padding:clamp(20px, 3vw, 32px);
  background:var(--paper);
  background-image:var(--scanlines);
  border-bottom:1px solid var(--rule);
}
.readout__designation {
  font-family:var(--bega-822);
  font-size:clamp(1rem, 1.2vw + .7rem, 1.45rem);
  font-weight:500;
  line-height:1.4;
  color:var(--ink);
  overflow-wrap:anywhere;
}
.readout__designation::after { content: ""; display: inline-block; width: .55em; height: 1.05em; margin-left: .15em; vertical-align: -.15em; background: var(--signal); }
.readout__lines { list-style: none; margin: 0; padding: 0; }
.readout__line { display: grid; grid-template-columns: 7.5rem minmax(0, 1fr); gap: 14px; padding: 12px clamp(20px, 3vw, 32px); border-bottom: 1px dashed var(--rule); font-size: var(--fs-small); }
.readout__line:last-child { border-bottom: 0; }
.readout__line > span:first-child { font-family: var(--bega-822); font-size: var(--fs-label); letter-spacing: var(--track-label); text-transform: uppercase; color: var(--steel); padding-top: 3px; }
.readout__line--warn > span:first-child { color: #8A6C0E; }
.readout__line--ok > span:first-child { color: var(--signal-ink); }
@media (max-width: 479.98px) { .readout__line { grid-template-columns: minmax(0, 1fr); gap: 2px; } }


.refusals { display: grid; grid-template-columns: minmax(0, 1fr); border-top: 1px solid var(--ink); counter-reset: refusal; }
@media (min-width: 800px) { .refusals { grid-template-columns: repeat(2, minmax(0, 1fr)); } }
.refusal { position: relative; min-width: 0; padding: clamp(24px, 3vw, 40px) clamp(4px, 2vw, 32px) clamp(24px, 3vw, 40px) 0; border-bottom: 1px solid var(--rule); counter-increment: refusal; }
@media (min-width: 800px) {
  .refusal:nth-child(odd) { border-right: 1px solid var(--rule); padding-right: clamp(20px, 3vw, 40px); }
  .refusal:nth-child(even) { padding-left: clamp(20px, 3vw, 40px); }
}
.refusal::before { content: 'NO.' counter(refusal, decimal-leading-zero); display: block; margin-bottom: 14px; font-family: var(--bega-822); font-size: var(--fs-label); letter-spacing: var(--track-label); color: var(--danger); }
.refusal h3 { font-size: var(--fs-h3); margin-bottom: 10px; }
.refusal p { color: var(--ink-2); max-width: 46ch; }
.refusal__strike { text-decoration: line-through; text-decoration-color: var(--signal); text-decoration-thickness: 2px; }
.refusals-lockup { margin-bottom: clamp(36px, 5vw, 64px); }


.inquiry-grid { display: grid; grid-template-columns: minmax(0, 1fr); gap: clamp(32px, 5vw, 64px); align-items: start; }
.inquiry-grid > * { min-width: 0; }
@media (min-width: 1080px) { .inquiry-grid { grid-template-columns: minmax(0, 1.5fr) minmax(0, 1fr); } }
.inquiry-aside { display: grid; gap: 18px; }
.inquiry-aside .module__body > * + * { margin-top: 12px; }
.address-block { font-style: normal; font-family: var(--bega-822); font-size: var(--fs-small); line-height: 1.6; color: var(--ink); }
.address-block a { color: var(--signal-ink); }
.map-link { display: inline-flex; align-items: center; gap: 8px; min-height: 44px; color: var(--signal-ink); font-family: var(--bega-822); font-size: var(--fs-meta); text-decoration: underline; text-underline-offset: .22em; transition: color var(--dur-fast) var(--ease-out); }
.map-link .icon { width: 15px; height: 15px; }
.map-link:hover { color: var(--ink); }
.map-link:active { color: var(--signal-deep); }
.map-link:focus-visible { outline: 2px solid var(--signal); outline-offset: 2px; }


.page-head {
  position:relative;
  padding-block:clamp(36px, 6vw, 72px) var(--section-md);
  border-bottom:1px solid var(--rule);
  background:var(--white);
  overflow:hidden;
  container-type:inline-size;
}
.page-head .breadcrumb { margin-bottom: clamp(20px, 3vw, 36px); }
.page-head__grid { display: grid; grid-template-columns: minmax(0, 1fr); gap: var(--sp-7); align-items: end; }
.page-head__grid > * { min-width: 0; }
@media (min-width: 1000px) { .page-head__grid { grid-template-columns: minmax(0, 1.35fr) minmax(0, 1fr); } }
.page-head__title { margin-top: var(--sp-4); }
.page-head .lockup--md { font-size: min(var(--fs-display), 11cqi); }
.page-head .lead { margin-top: var(--sp-5); }
.page-head__meta { display: flex; flex-wrap: wrap; gap: 8px; margin-top: var(--sp-5); }
.page-head__media .frame__media { aspect-ratio: 3 / 2; }


.page-section { padding-block: var(--section-lg); border-bottom: 1px solid var(--rule); }
.page-section--md { padding-block: var(--section-md); }
.page-section--frost { background: var(--frost); }
.page-section--white { background: var(--white); }
.page-section__head { display: flex; flex-wrap: wrap; align-items: baseline; justify-content: space-between; gap: 10px 24px; margin-bottom: var(--sp-7); }
.page-section__head h2 { max-width: 24ch; }


.cat-index { display: grid; grid-template-columns: minmax(0, 1fr); gap: 0; border-top: 1px solid var(--ink); }
.cat-row {
  position:relative;
  display:grid;
  grid-template-columns:4rem minmax(0, 1fr);
  gap:10px 20px;
  padding:24px 0;
  border-bottom:1px solid var(--rule);
  transition:background-color var(--dur-fast) var(--ease-out);
}
.cat-row > * { min-width: 0; }
.cat-row:hover, .cat-row:focus-within { background: var(--white); }
@media (min-width: 1200px) { .cat-row { grid-template-columns: 5rem minmax(0, 1.3fr) minmax(0, 1fr) minmax(0, 1fr) auto; align-items: start; padding: 26px 16px; } }
.cat-row__num { font-family: var(--bega-867); font-size: 2rem; font-weight: 700; line-height: 1; color: var(--steel); transition: color var(--dur-fast) var(--ease-out); }
.cat-row:hover .cat-row__num, .cat-row:focus-within .cat-row__num { color: var(--signal); }
.cat-row__title { font-size: var(--fs-h4); line-height: 1.2; }
.cat-row__title a { color: inherit; text-decoration: none; }
.cat-row__title a::after { content: ""; position: absolute; inset: 0; }
.cat-row__title a:focus-visible { outline: none; }
.cat-row:focus-within { box-shadow: inset 0 0 0 2px var(--signal); }
.cat-row__text { margin-top: 6px; font-size: var(--fs-small); color: var(--ink-2); }
.cat-row__field { font-family: var(--bega-822); font-size: var(--fs-meta); color: var(--ink); }
.cat-row__field span { display: block; margin-bottom: 2px; font-size: var(--fs-label); letter-spacing: var(--track-label); text-transform: uppercase; color: var(--steel); }
.cat-row .icon { color: var(--steel); transition: transform var(--dur-base) var(--ease-out), color var(--dur-fast) var(--ease-out); }
.cat-row:hover .icon { color: var(--signal-ink); transform: translateX(4px); }
@media (max-width: 1199.98px) { .cat-row__field, .cat-row > .icon { grid-column: 2; } .cat-row > .icon { display: none; } }


.designation { display: flex; flex-wrap: wrap; gap: 0; border: 1px solid var(--ink); background: var(--white); max-width: 100%; }
.designation__part { flex: 1 1 auto; min-width: 0; padding: 14px 16px 12px; border-right: 1px solid var(--rule); }
.designation__part:last-child { border-right: 0; }
.designation__value { display: block; font-family: var(--bega-822); font-size: clamp(1rem, 1vw + .7rem, 1.35rem); font-weight: 500; color: var(--ink); overflow-wrap: anywhere; }
.designation__key { display: block; margin-top: 8px; padding-top: 6px; border-top: 2px solid var(--signal); font-family: var(--bega-822); font-size: var(--fs-label); letter-spacing: var(--track-label); text-transform: uppercase; color: var(--steel); }
@media (max-width: 559.98px) { .designation__part { flex: 1 1 50%; border-bottom: 1px solid var(--rule); } }


.item-block { display: grid; grid-template-columns: minmax(0, 1fr); gap: clamp(24px, 4vw, 48px); padding-block: var(--section-md); border-bottom: 1px solid var(--rule); }
.item-block > * { min-width: 0; }
@media (min-width: 960px) {
  .item-block { grid-template-columns: minmax(0, 1fr) minmax(0, 1.1fr); align-items: start; }
  .item-block--flip > :first-child { order: 2; }
}
.item-block .frame__media { aspect-ratio: 3 / 2; }
.item-block__code { font-family: var(--bega-822); font-size: var(--fs-label); letter-spacing: var(--track-label); text-transform: uppercase; color: var(--signal-ink); }
.item-block h2 { margin-top: 10px; font-size: var(--fs-h2); }
.item-block .prose { margin-top: var(--sp-5); }
.spec-dl { display: grid; grid-template-columns: minmax(0, 1fr); margin: var(--sp-6) 0 0; border-top: 1px solid var(--ink); }
.spec-dl > div { display: grid; grid-template-columns: minmax(0, 10em) minmax(0, 1fr); gap: 12px; padding: 11px 0; border-bottom: 1px solid var(--rule); }
.spec-dl dt { font-family: var(--bega-822); font-size: var(--fs-label); letter-spacing: var(--track-label); text-transform: uppercase; color: var(--steel); padding-top: 3px; }
.spec-dl dd { margin: 0; font-family: var(--bega-822); font-size: var(--fs-meta); color: var(--ink); }
.spec-dl dd.basis { color: var(--signal-ink); }
@media (max-width: 419.98px) { .spec-dl > div { grid-template-columns: minmax(0, 1fr); gap: 2px; } }
.basis-note { margin-top: var(--sp-4); font-size: var(--fs-meta); color: var(--steel); }
.item-block__actions { display: flex; flex-wrap: wrap; gap: 12px; margin-top: var(--sp-6); }


.callout-quote {
  position:relative;
  padding:clamp(24px, 4vw, 48px) 0;
  font-family:var(--bega-867);
  font-size:var(--fs-h2);
  font-weight:600;
  line-height:1.15;
  letter-spacing:var(--track-display);
  color:var(--ink);
  max-width:28ch;
  hanging-punctuation:first last;
}
.callout-quote::before { content: ""; display: block; width: 64px; height: 2px; margin-bottom: 20px; background: var(--signal); }


.notes-grid { display: grid; grid-template-columns: repeat(auto-fit, minmax(min(100%, 18rem), 1fr)); gap: 0; border-top: 1px solid var(--ink); border-left: 1px solid var(--rule); }
.note-cell { min-width: 0; padding: 22px 22px 26px; border-right: 1px solid var(--rule); border-bottom: 1px solid var(--rule); background: var(--white); }
.note-cell__code { font-family: var(--bega-822); font-size: var(--fs-label); letter-spacing: var(--track-label); text-transform: uppercase; color: var(--signal-ink); }
.note-cell h3 { margin: 10px 0 8px; font-size: var(--fs-h4); }
.note-cell p { font-size: var(--fs-small); color: var(--ink-2); }


.related { display: grid; grid-template-columns: repeat(auto-fill, minmax(min(100%, 15rem), 1fr)); gap: 14px; }


.config { display: grid; grid-template-columns: minmax(0, 1fr); gap: clamp(24px, 3vw, 40px); align-items: start; }
.config > * { min-width: 0; }
@media (min-width: 1100px) { .config { grid-template-columns: minmax(0, 1.2fr) minmax(0, 1fr); } .config__output { position: sticky; top: 24px; } }
.config__mode { margin-bottom: var(--sp-6); }
.config__options { display: grid; gap: 0; border-top: 1px solid var(--ink); }
.opt-group { min-width: 0; margin: 0; padding: 18px 0 20px; border: 0; border-bottom: 1px solid var(--rule); }
.opt-group legend, .opt-group__label { display: flex; justify-content: space-between; gap: 10px; width: 100%; padding: 0; margin-bottom: 12px; font-family: var(--bega-822); font-size: var(--fs-label); font-weight: 500; letter-spacing: var(--track-label); text-transform: uppercase; color: var(--ink); }
.opt-group__step { color: var(--steel); }
.opt-row { display: flex; flex-wrap: wrap; gap: 8px; }
.opt {
  position:relative;
  display:inline-flex;
  align-items:center;
  min-height:44px;
  max-width:100%;
  padding:9px 14px;
  border:1px solid var(--rule-strong);
  background:var(--white);
  color:var(--ink);
  font-family:var(--bega-822);
  font-size:var(--fs-meta);
  line-height:1.25;
  text-align:left;
  overflow-wrap:anywhere;
  cursor:pointer;
  transition:background-color var(--dur-fast) var(--ease-out), border-color var(--dur-fast) var(--ease-out), color var(--dur-fast) var(--ease-out), box-shadow var(--dur-fast) var(--ease-out);
}
.opt:hover { border-color: var(--ink); background: var(--paper); }
.opt:active { background: var(--frost); }
.opt:focus-visible { outline: none; box-shadow: var(--focus-ring); }
.opt[aria-pressed='true'], .opt[aria-checked='true'], .opt.is-selected { background: var(--ink); border-color: var(--ink); color: var(--white); box-shadow: inset 0 -3px 0 var(--signal); }
.opt[aria-disabled='true'], .opt:disabled, .opt.is-blocked { color: var(--steel-light); border-style: dashed; background: var(--paper); cursor: not-allowed; text-decoration: line-through; box-shadow: none; }
.opt-group .field { max-width: 22rem; }
.config__output .module__body > * + * { margin-top: 18px; }
.config__designation { padding: 18px; background: var(--paper); background-image: var(--scanlines); border: 1px solid var(--rule); font-family: var(--bega-822); font-size: clamp(1rem, .9vw + .75rem, 1.3rem); font-weight: 500; line-height: 1.4; color: var(--ink); overflow-wrap: anywhere; }
.config__facts { display: grid; grid-template-columns: repeat(2, minmax(0, 1fr)); gap: 0; margin: 0; border-top: 1px solid var(--rule); border-left: 1px solid var(--rule); }
.config__facts > div { min-width: 0; padding: 12px 14px; border-right: 1px solid var(--rule); border-bottom: 1px solid var(--rule); }
.config__facts dt { font-family: var(--bega-822); font-size: var(--fs-label); letter-spacing: var(--track-label); text-transform: uppercase; color: var(--steel); }
.config__facts dd { margin: 4px 0 0; font-family: var(--bega-867); font-size: 1.15rem; font-weight: 600; color: var(--ink); overflow-wrap: anywhere; }
@media (max-width: 379.98px) { .config__facts { grid-template-columns: minmax(0, 1fr); } }
.config__warnings { list-style: none; margin: 0; padding: 0; display: grid; gap: 8px; }
.warn { display: grid; grid-template-columns: auto minmax(0, 1fr); gap: 10px; padding: 11px 14px; border: 1px solid var(--rule); border-left: 3px solid var(--zinc-yellow); background: var(--white); font-size: var(--fs-small); line-height: 1.45; }
.warn .icon { color: #8A6C0E; margin-top: 2px; }
.warn--block { border-left-color: var(--danger); background: var(--danger-wash); }
.warn--block .icon { color: var(--danger); }
.warn--ok { border-left-color: var(--signal); }
.warn--ok .icon { color: var(--signal-ink); }
.config__disclaimer { padding-top: 14px; border-top: 1px dashed var(--rule); font-size: var(--fs-meta); color: var(--steel); }
.config__actions { display: flex; flex-wrap: wrap; gap: 10px; }


.steps { list-style: none; margin: 0; padding: 0; display: grid; grid-template-columns: minmax(0, 1fr); border-top: 1px solid var(--ink); counter-reset: step; }
.step { position: relative; display: grid; grid-template-columns: minmax(0, 1fr); gap: 10px 32px; padding: clamp(24px, 3vw, 40px) 0; border-bottom: 1px solid var(--rule); counter-increment: step; }
.step > * { min-width: 0; }
@media (min-width: 900px) { .step { grid-template-columns: repeat(auto-fit, minmax(min(100%, 14rem), 1fr)); align-items: start; } }
.step::before { content: counter(step, decimal-leading-zero); font-family: var(--bega-867); font-size: clamp(2.6rem, 3vw + 1rem, 4rem); font-weight: 700; line-height: .9; color: var(--signal); font-variant-numeric: tabular-nums; }
.step h3 { font-size: var(--fs-h3); }
.step p { color: var(--ink-2); }
.step__meta { font-family: var(--bega-822); font-size: var(--fs-meta); color: var(--steel); }


.anatomy { display: grid; grid-template-columns: minmax(0, 1fr); gap: var(--sp-7); align-items: center; }
.anatomy > * { min-width: 0; }
@media (min-width: 900px) { .anatomy { grid-template-columns: minmax(0, 1fr) minmax(0, 1fr); } }
.anatomy__keys { list-style: none; margin: 0; padding: 0; border-top: 1px solid var(--ink); }
.anatomy__keys li { display: grid; grid-template-columns: 2.5rem minmax(0, 1fr); gap: 12px; padding: 12px 0; border-bottom: 1px solid var(--rule); font-size: var(--fs-small); }
.anatomy__keys li > span:first-child { font-family: var(--bega-822); font-size: var(--fs-meta); color: var(--signal-ink); }


.about-split { display: grid; grid-template-columns: minmax(0, 1fr); gap: clamp(28px, 4vw, 56px); align-items: start; }
.about-split > * { min-width: 0; }
@media (min-width: 960px) { .about-split { grid-template-columns: repeat(12, minmax(0, 1fr)); } .about-split__media { grid-column: 1 / span 7; } .about-split__text { grid-column: 8 / -1; } .about-split--flip .about-split__media { grid-column: 6 / -1; order: 2; } .about-split--flip .about-split__text { grid-column: 1 / span 5; } }
.about-split .frame__media { aspect-ratio: 3 / 2; }


.contact-grid { display: grid; grid-template-columns: minmax(0, 1fr); gap: clamp(28px, 4vw, 56px); align-items: start; }
.contact-grid > * { min-width: 0; }
@media (min-width: 1080px) { .contact-grid { grid-template-columns: minmax(0, 1.5fr) minmax(0, 1fr); } }
.contact-aside { display: grid; gap: 18px; }
.contact-aside .frame__media { aspect-ratio: 3 / 2; }
.contact-points { list-style: none; margin: 0; padding: 0; }
.contact-points li { padding: 12px 0; border-bottom: 1px dashed var(--rule); }
.contact-points li:last-child { border-bottom: 0; }
.contact-points .label { display: block; margin-bottom: 4px; }
.contact-points a { display: inline-flex; align-items: center; gap: 8px; min-height: 44px; font-family: var(--bega-822); font-size: var(--fs-small); color: var(--ink); text-decoration: none; overflow-wrap: anywhere; transition: color var(--dur-fast) var(--ease-out); }
.contact-points a:hover { color: var(--signal-ink); }
.contact-points a:active { color: var(--signal-deep); }
.contact-points a:focus-visible { outline: 2px solid var(--signal); outline-offset: 2px; }


.faq { border-top: 1px solid var(--ink); }
.faq__item { border-bottom: 1px solid var(--rule); }
.faq__q { margin: 0; font-size: inherit; }
.faq__btn {
  display:grid;
  grid-template-columns:minmax(0, 1fr) 44px;
  align-items:center;
  gap:16px;
  width:100%;
  min-height:60px;
  padding:14px 0 14px 4px;
  text-align:left;
  font-family:var(--bega-867);
  font-size:var(--fs-h4);
  font-weight:600;
  line-height:1.3;
  color:var(--ink);
  transition:background-color var(--dur-fast) var(--ease-out), color var(--dur-fast) var(--ease-out), padding-left var(--dur-base) var(--ease-out);
}
.faq__btn > span:first-child { min-width: 0; }
.faq__icon { display: inline-flex; align-items: center; justify-content: center; width: 44px; height: 44px; border: 1px solid var(--rule-strong); transition: background-color var(--dur-fast) var(--ease-out), border-color var(--dur-fast) var(--ease-out), color var(--dur-fast) var(--ease-out), transform var(--dur-base) var(--ease-out); }
.faq__icon .icon { width: 16px; height: 16px; }
.faq__btn:hover { background: var(--white); padding-left: 12px; }
.faq__btn:hover .faq__icon { border-color: var(--ink); }
.faq__btn:active { background: var(--frost); }
.faq__btn:focus-visible { outline: none; box-shadow: inset 0 0 0 2px var(--signal); }
.faq__btn[aria-expanded='true'] { color: var(--signal-deep); }
.faq__btn[aria-expanded='true'] .faq__icon { background: var(--ink); border-color: var(--ink); color: var(--white); transform: rotate(45deg); }
.faq__a { padding: 0 60px 22px 4px; color: var(--ink-2); max-width: var(--measure); }
.faq__a > * + * { margin-top: .8em; }
.js .faq__btn[aria-expanded='false'] + .faq__a, .js .faq__q:has(.faq__btn[aria-expanded='false']) + .faq__a { display: none; }
@media (max-width: 479.98px) { .faq__a { padding-right: 0; } }


.legal-head { padding-block: clamp(36px, 6vw, 80px) var(--section-md); border-bottom: 1px solid var(--rule); background: var(--white); container-type: inline-size; overflow: hidden; }
.legal-head .breadcrumb { margin-bottom: clamp(18px, 3vw, 32px); }
.legal-head__grid { display: grid; grid-template-columns: minmax(0, 1fr); gap: var(--sp-7); align-items: end; }
.legal-head__grid > * { min-width: 0; }
@media (min-width: 1200px) { .legal-head__grid { grid-template-columns: minmax(0, 1.4fr) minmax(0, 1fr); } }
.legal-head .lockup--md { font-size: min(var(--fs-display), 11cqi); }
.legal-head__meta { display: flex; flex-wrap: wrap; gap: 6px 22px; margin-top: var(--sp-5); font-family: var(--bega-822); font-size: var(--fs-meta); color: var(--steel); }
.legal-head__meta strong { color: var(--ink); font-weight: 500; }
.legal-mood .frame__media { aspect-ratio: 3 / 2; }


.qa-page { padding-block: var(--section-lg); }
.qa { padding-block: clamp(40px, 6vw, 88px); border-bottom: 1px solid var(--rule); }
.qa:first-child { padding-top: 0; }
.qa:last-child { border-bottom: 0; }
.qa__q {
  position:relative;
  max-width:20ch;
  font-family:var(--bega-867);
  font-size:var(--fs-display);
  font-weight:700;
  line-height:1;
  letter-spacing:var(--track-tight);
  color:var(--ink);
  hanging-punctuation:first last;
}
.qa__q::after { content: ""; display: block; width: clamp(48px, 8vw, 96px); height: 2px; margin-top: clamp(18px, 2.4vw, 28px); background: var(--signal); }
.qa__a { max-width: 62ch; margin-top: clamp(20px, 3vw, 36px); font-size: clamp(1.0625rem, .25vw + 1rem, 1.15rem); line-height: 1.65; color: var(--ink-2); }
@media (min-width: 1100px) { .qa__a { margin-left: calc(100% / 12 * 3); } }
.qa__a > * + * { margin-top: 1em; }
.qa__a h3 { margin-top: 1.6em; font-size: var(--fs-h4); color: var(--ink); }
.qa__a a { color: var(--signal-ink); text-underline-offset: .2em; transition: color var(--dur-fast) var(--ease-out); }
.qa__a a:hover { color: var(--ink); }
.qa__a a:active { color: var(--signal-deep); }
.qa__a a:focus-visible { outline: 2px solid var(--signal); outline-offset: 2px; }
.qa__a ul { padding-left: 1.2em; }
.qa__a li + li { margin-top: .45em; }
.qa__a li::marker { color: var(--signal); }
.qa__a .table-wrap, .qa__a .notice { margin-top: 1.4em; }
.qa__a strong { color: var(--ink); }
.qa__form { margin-top: var(--sp-7); }


.numeral-page { padding-block: var(--section-lg); }
.numeral-page > .container { max-width: calc(var(--content-max) - 40px); }
.nsec {
  position:relative;
  padding-block:clamp(40px, 7vw, 104px);
  padding-left:clamp(0px, 16vw, 240px);
  border-top:1px solid var(--rule);
}
.nsec:first-child { border-top: 0; padding-top: clamp(8px, 2vw, 24px); }
.nsec__num {
  position:absolute;
  left:0;
  top:clamp(32px, 6vw, 92px);
  font-family:var(--bega-867);
  font-size:clamp(4.5rem, 9vw + 1rem, 10.5rem);
  font-weight:700;
  line-height:.8;
  letter-spacing:-0.04em;
  color:transparent;
  -webkit-text-stroke:1.5px var(--rule-strong);
  font-variant-numeric:tabular-nums;
  pointer-events:none;
  user-select:none;
}
.nsec:hover .nsec__num { -webkit-text-stroke-color: var(--signal); }
.nsec__num { transition: -webkit-text-stroke-color var(--dur-med) var(--ease-out); }
.nsec__title { max-width: 26ch; font-size: var(--fs-h2); }
.nsec__body { max-width: var(--measure-wide); margin-top: clamp(18px, 2.4vw, 28px); line-height: 1.68; color: var(--ink-2); }
.nsec__body > * + * { margin-top: 1em; }
.nsec__body a { overflow-wrap: anywhere; color: var(--signal-ink); text-underline-offset: .2em; transition: color var(--dur-fast) var(--ease-out); }
.nsec__body a:hover { color: var(--ink); }
.nsec__body a:active { color: var(--signal-deep); }
.nsec__body a:focus-visible { outline: 2px solid var(--signal); outline-offset: 2px; }
.nsec__body ul { padding-left: 1.2em; }
.nsec__body li + li { margin-top: .4em; }
.nsec__body li::marker { color: var(--signal); }
.nsec__body .table-wrap { margin-top: 1.5em; }
.nsec__body strong { color: var(--ink); }
.nsec__body code { background: var(--frost); padding: .08em .35em; font-size: .9em; }
@media (max-width: 899.98px) {
  .nsec { padding-left: 0; }
  .nsec__num { position: static; display: block; margin-bottom: 14px; font-size: clamp(4rem, 18vw, 6.5rem); }
}


.glance-page { padding-block: var(--section-lg); }
.glance {
  position:relative;
  border:1px solid var(--ink);
  background:var(--white);
  box-shadow:10px 10px 0 var(--frost);
}
.glance__head { display: flex; flex-wrap: wrap; justify-content: space-between; gap: 6px 16px; padding: 12px 18px; background: var(--ink); color: var(--steel-light); font-family: var(--bega-822); font-size: var(--fs-label); letter-spacing: var(--track-label); text-transform: uppercase; }
.glance__head > :first-child { color: var(--white); display: inline-flex; align-items: center; gap: 8px; }
.glance__head > :first-child::before { content: ""; width: 7px; height: 7px; background: var(--signal); }
.glance__list { margin: 0; display: grid; grid-template-columns: minmax(0, 1fr); }
@media (min-width: 900px) { .glance__list { grid-template-columns: repeat(2, minmax(0, 1fr)); } }
.glance__row { display: grid; grid-template-columns: minmax(0, 11rem) minmax(0, 1fr); gap: 8px 18px; padding: 16px 18px; border-bottom: 1px solid var(--rule); min-width: 0; }
@media (min-width: 900px) { .glance__row:nth-child(odd) { border-right: 1px solid var(--rule); } }
.glance__key { font-family: var(--bega-822); font-size: var(--fs-label); font-weight: 500; letter-spacing: var(--track-label); text-transform: uppercase; color: var(--steel); padding-top: 3px; }
.glance__val { margin: 0; font-family: var(--bega-867); font-size: 1.08rem; font-weight: 600; line-height: 1.35; color: var(--ink); min-width: 0; overflow-wrap: anywhere; }
.glance__val a.glance__jump { display: inline-flex; align-items: center; gap: 6px; min-height: 44px; margin-top: 2px; font-family: var(--bega-822); font-size: var(--fs-meta); font-weight: 500; color: var(--signal-ink); text-decoration: none; border-bottom: 1px solid transparent; transition: color var(--dur-fast) var(--ease-out), border-color var(--dur-fast) var(--ease-out); }
.glance__val a.glance__jump .icon { width: 14px; height: 14px; }
.glance__val a.glance__jump:hover { color: var(--ink); border-bottom-color: var(--signal); }
.glance__val a.glance__jump:active { color: var(--signal-deep); }
.glance__val a.glance__jump:focus-visible { outline: 2px solid var(--signal); outline-offset: 2px; }
.glance__foot { padding: 12px 18px; font-size: var(--fs-meta); color: var(--steel); background: var(--paper); }
@media (max-width: 519.98px) { .glance__row { grid-template-columns: minmax(0, 1fr); gap: 4px; } }
.glance-prose { max-width: var(--measure); margin: clamp(48px, 7vw, 96px) auto 0; font-size: var(--fs-body); line-height: 1.68; color: var(--ink-2); }
.glance-prose > * + * { margin-top: 1.05em; }
.glance-prose h2 { margin-top: 2.4em; padding-top: 1.2em; border-top: 1px solid var(--rule); font-size: var(--fs-h3); line-height: 1.18; scroll-margin-top: 80px; }
.glance-prose h2:first-child { margin-top: 0; }
.glance-prose h2 + * { margin-top: .7em; }
.glance-prose h3 { margin-top: 1.6em; font-size: var(--fs-h4); }
.glance-prose a { color: var(--signal-ink); text-underline-offset: .2em; transition: color var(--dur-fast) var(--ease-out); }
.glance-prose a:hover { color: var(--ink); }
.glance-prose a:active { color: var(--signal-deep); }
.glance-prose a:focus-visible { outline: 2px solid var(--signal); outline-offset: 2px; }
.glance-prose ul, .glance-prose ol { padding-left: 1.25em; }
.glance-prose li + li { margin-top: .4em; }
.glance-prose li::marker { color: var(--signal); }
.glance-prose strong { color: var(--ink); }
.glance-prose h2:target { color: var(--signal-deep); }


.data-table { min-width: 620px; }
.data-table td code, .data-table th code { font-family: var(--bega-822); font-size: var(--fs-meta); background: var(--frost); padding: .05em .35em; white-space: nowrap; }
.data-table td { color: var(--ink-2); }
.state-pill { display: inline-flex; align-items: center; gap: 6px; min-height: 24px; padding: 2px 8px; border: 1px solid var(--rule); font-family: var(--bega-822); font-size: var(--fs-label); letter-spacing: .04em; text-transform: uppercase; white-space: nowrap; }
.state-pill::before { content: ""; width: 6px; height: 6px; background: var(--steel); }
.state-pill--denied::before { background: var(--danger); }
.state-pill--granted::before { background: var(--signal); }


.error-page { position: relative; padding-block: clamp(56px, 10vw, 140px); container-type: inline-size; overflow: hidden; }
.error-page .lockup--hero { font-size: min(var(--fs-hero), 18cqi); }
.error-page__code { display: inline-flex; gap: 12px; margin-bottom: clamp(28px, 4vw, 48px); font-family: var(--bega-822); font-size: var(--fs-meta); color: var(--steel); }
.error-page__code strong { color: var(--danger); font-weight: 500; }
.error-page__body { display: grid; grid-template-columns: minmax(0, 1fr); gap: var(--sp-7); margin-top: clamp(32px, 5vw, 64px); }
.error-page__body > * { min-width: 0; }
@media (min-width: 900px) { .error-page__body { grid-template-columns: minmax(0, 1fr) minmax(0, 1.2fr); } }


.thanks { padding-block: clamp(56px, 9vw, 120px); }
.thanks__ref { display: inline-flex; flex-direction: column; gap: 6px; margin-top: var(--sp-6); }
.thanks__ref .hud-figure__value { font-family: var(--bega-822); font-size: clamp(2rem, 4vw + 1rem, 3.5rem); font-weight: 500; }
.thanks__next { margin-top: var(--sp-8); }


.strip-figures { display: grid; grid-template-columns: repeat(auto-fit, minmax(min(100%, 12rem), 1fr)); gap: 14px; }
.strip-figures .bracket { background: var(--white); }
.strip-figures .hud-figure__value { font-size: clamp(2.2rem, 3vw + 1rem, 3.6rem); }


.cta-band { position: relative; padding-block: var(--section-md); background: var(--ink); color: var(--frost); border-top: 2px solid var(--signal); overflow: hidden; container-type: inline-size; }
.cta-band__grid { display: grid; grid-template-columns: minmax(0, 1fr); gap: var(--sp-6); align-items: end; }
.cta-band__grid > * { min-width: 0; }
@media (min-width: 900px) { .cta-band__grid { grid-template-columns: minmax(0, 1.4fr) auto; } }
.cta-band .lockup--sm { font-size: min(var(--fs-h1), 9cqi); color: var(--white); }
.cta-band p { color: var(--steel-light); margin-top: var(--sp-4); max-width: 52ch; }
.cta-band .cluster { --cluster-gap: 12px; }


@media (max-width: 359.98px) {
  .hero__figures { grid-template-columns: minmax(0, 1fr); }
  .bracket { padding: 14px 14px; }
  .module__body { padding: 16px; }
  .rail-card { padding: 18px 16px; }
}
@media (min-width: 1800px) {
  .panel > .container, .page-section > .container { max-width: 1360px; }
}
@media (prefers-reduced-motion: reduce) {
  .rail-card::before, .nsec__num, .faq__icon { transition: none; }
}


.error-page .row-item { background: var(--white); }
.error-page .row-item__meta { color: var(--ink-2); background: var(--white); }
.error-page__code strong { color: #8E1D17; background: var(--white); padding: 0 6px; }
.error-page__code { background: var(--white); padding: 4px 8px; }
.cat-row { background: var(--white); }
.cat-row__title a { color: var(--ink); }
.nsec__body a, .prose a, .glance-prose a { display: inline; white-space: normal; overflow-wrap: anywhere; word-break: break-word; }
html body a.btn { transition: background-color 160ms ease, color 160ms ease, border-color 160ms ease, box-shadow 160ms ease, transform 120ms ease; }
html body a.btn:hover { background: var(--ink); border-color: var(--ink); color: var(--white); box-shadow: 4px 4px 0 var(--signal); transform: translate(-2px, -2px); }
html body a.btn:active { background: var(--signal-deep); border-color: var(--signal-deep); color: var(--white); box-shadow: 0 0 0 var(--signal); transform: translate(0, 0); }
html body a.btn:focus-visible { outline: 2px solid var(--signal); outline-offset: 2px; }
html body .nav-sub-toggle { transition: background-color 160ms ease, color 160ms ease; }
html body .nav-sub-toggle:hover { background: var(--frost); color: var(--ink); }
html body .nav-sub-toggle:active { background: var(--rule); color: var(--signal-deep); }
