/* ==========================================================================
   LEGAL DOCUMENTS · THE COMPANY RECORD (section#reg, directly under the hero)
   --------------------------------------------------------------------------
   Applied 2026-10-07: owner-approved design "1·A Refined register", picked
   from six options and three upgrades of the first.

   WHAT IT REPLACED  The .hrec panel (assets/shared/shells/document/hero.css,
   retired the same day): 10px grey monospace capitals at 4.1:1, register rows
   stretched to the identity plate's height (120px for ~45px of content, and
   every phone row as tall as the address), a fixed 19rem label column, the
   section's own 58px on top of the hero's 58px tail, and a centred
   "See the documents" outside the panel.

   SCOPE AND WEIGHT  Every selector starts html body #reg#reg#reg and every
   declaration is !important: assets/shared/design/rhythm.css holds
   #reg#reg.s1's padding with !important, and shelf.css sets its edges.
   Nothing outside #reg is styled. The base reset uses :where() so the
   design's own rules always outrank it. Colours, measured on white:
     values #0E1E35 16.4:1 · labels #34445A 10.0:1 · notes #475569 7.6:1
   ========================================================================== */

/* the section: the hero's own 57.6px tail (28px on phones) is the whole gap — the section adds none */
html body #reg#reg#reg{ padding-top: 0 !important; padding-bottom: var(--r9-close) !important; background: #FFFFFF !important; }

html body #reg#reg#reg :where(.lr, .lr *){ box-sizing: border-box !important; }
/* :where() keeps the reset at the weight of a bare scoped rule, so every rule below outranks it */
html body #reg#reg#reg :where(.lr p, .lr dl, .lr dt, .lr dd){ margin: 0 !important; padding: 0 !important; max-width: none !important; }
html body #reg#reg#reg .lr{ color: #0E1E35 !important; font-family: inherit !important; }

html body #reg#reg#reg .lr svg{ fill: none !important; stroke: currentColor !important; stroke-width: 1.8 !important; stroke-linecap: round !important; stroke-linejoin: round !important; }
html body #reg#reg#reg .lr-ic{ display: inline-grid !important; place-items: center !important; flex: none !important; color: #0760C6 !important; }
html body #reg#reg#reg .lr-ic svg{ width: 16px !important; height: 16px !important; }

html body #reg#reg#reg .lr-k{
  display: flex !important; align-items: center !important; gap: 8px !important;
  font-family: inherit !important; font-size: 13px !important; line-height: 1.35 !important; font-weight: 600 !important;
  letter-spacing: 0 !important; text-transform: none !important; color: #34445A !important;
}
html body #reg#reg#reg .lr-v{
  min-width: 0 !important; overflow-wrap: break-word !important;
  font-size: 16.5px !important; line-height: 1.4 !important; font-weight: 650 !important; letter-spacing: -.01em !important; color: #0E1E35 !important;
}
html body #reg#reg#reg .lr-v.is-mono{
  font-family: ui-monospace, "SF Mono", Menlo, Consolas, monospace !important;
  font-size: 15.5px !important; font-weight: 600 !important; letter-spacing: .02em !important;
}
html body #reg#reg#reg .lr-v a{
  color: #0760C6 !important; font-weight: 650 !important;
  text-decoration: underline !important; text-decoration-color: rgba(7, 96, 198, .38) !important;
  text-decoration-thickness: 1px !important; text-underline-offset: 3px !important;
}
html body #reg#reg#reg .lr-v a:hover{ text-decoration-color: currentColor !important; }
html body #reg#reg#reg .lr-n{ min-width: 0 !important; font-size: 14px !important; line-height: 1.5 !important; font-weight: 400 !important; color: #475569 !important; }

html body #reg#reg#reg .lr-name{ font-size: 26px !important; line-height: 1.15 !important; font-weight: 750 !important; letter-spacing: -.025em !important; color: #0E1E35 !important; }
/* if the company name must wrap, it wraps into two even lines — never "Pvt." / "Ltd." alone */
html body #reg#reg#reg .lr-name, html body #reg#reg#reg .is-name .lr-v{ text-wrap: balance !important; }

html body #reg#reg#reg .lr-seal{
  display: inline-grid !important; place-items: center !important; flex: none !important;
  width: 44px !important; height: 44px !important; border-radius: 12px !important;
  background: #EDF3FC !important; border: 1px solid #C4D6F0 !important; color: #0760C6 !important;
}
html body #reg#reg#reg .lr-seal svg{ width: 22px !important; height: 22px !important; }

/* the site's quiet action (align.css 5b): white, action ink, action hairline */
html body #reg#reg#reg .lr-go{
  display: inline-flex !important; align-items: center !important; justify-content: center !important; gap: 9px !important;
  min-height: 44px !important; padding: 10px 20px !important; border-radius: 999px !important;
  border: 1px solid #9DBBE5 !important; background: #FFFFFF !important; color: #0760C6 !important;
  font-size: 14.5px !important; font-weight: 650 !important; line-height: 1.2 !important; text-decoration: none !important;
  background-image: none !important; text-shadow: none !important;
  transition: background-color .18s ease, border-color .18s ease !important;
}
html body #reg#reg#reg .lr-go:hover{ background: #EAF2FD !important; border-color: #0760C6 !important; }
html body #reg#reg#reg .lr-go:focus-visible{ outline: 2px solid #0760C6 !important; outline-offset: 2px !important; }
html body #reg#reg#reg .lr-go svg{ width: 16px !important; height: 16px !important; }

@media (max-width: 760px){
  html body #reg#reg#reg{ padding-top: 4px !important; }
}
@media (max-width: 640px){
  /* an inline mailto is not a tap target on a phone (hero.css made the same correction) */
  html body #reg#reg#reg .lr-v a{ display: inline-flex !important; align-items: center !important; min-height: 44px !important; margin-block: -11px !important; }
  html body #reg#reg#reg .lr-go{ width: 100% !important; min-height: 48px !important; }
}

/* the design, as approved — 1·A Refined register
   HAS      the register's skeleton — title block left, register right, action as the frame's last line
            · one label|value grammar across the whole record (brand and type use it too)
            · label column = exactly the longest label (subgrid, max-content), so no row has a
              wider gap than it must · every label on its value's baseline · four type sizes
            · one 8px spacing scale · edges and rules you can see · rows as tall as their content
   HAS NOT  stretched rows · mono capital labels · shadow · a tinted plate · anything new      */

html body #reg#reg#reg .lr{
  display: grid !important; grid-template-columns: minmax(380px, 36%) minmax(0, 1fr) !important;
  border: 1px solid #BFCADA !important; border-radius: 12px !important; background: #FFFFFF !important; overflow: hidden !important;
}

/* title block */
html body #reg#reg#reg .lr-id{ padding: 32px 32px 24px !important; border-right: 1px solid #C9D3E1 !important; }
html body #reg#reg#reg .lr-idtop{ display: grid !important; grid-template-columns: auto minmax(0, 1fr) !important; column-gap: 16px !important; align-items: start !important; }
html body #reg#reg#reg .lr-seal{ margin-top: 2px !important; }
html body #reg#reg#reg .lr-namek{ margin-bottom: 4px !important; }
html body #reg#reg#reg .lr-who > .lr-n{ margin-top: 8px !important; }

html body #reg#reg#reg .lr-pair{
  margin-top: 24px !important;
  display: grid !important; grid-template-columns: max-content minmax(0, 1fr) !important; column-gap: 24px !important;
}
html body #reg#reg#reg .lr-pair .lr-f{
  grid-column: 1 / -1 !important; display: grid !important; grid-template-columns: subgrid !important;
  align-items: baseline !important; row-gap: 2px !important; padding: 16px 0 !important; border-top: 1px solid #DCE3EC !important;
}
html body #reg#reg#reg .lr-pair .lr-f:last-child{ padding-bottom: 0 !important; }

/* the register */
html body #reg#reg#reg .lr-reg{ display: grid !important; grid-template-columns: max-content minmax(0, 1fr) !important; column-gap: 40px !important; align-content: start !important; }
html body #reg#reg#reg .lr-reg .lr-f{
  grid-column: 1 / -1 !important; display: grid !important; grid-template-columns: subgrid !important;
  align-items: baseline !important; row-gap: 2px !important; padding: 20px 32px !important;
}
html body #reg#reg#reg .lr-reg .lr-f + .lr-f{ border-top: 1px solid #DCE3EC !important; }

/* shared row grammar: label on row 1 beside the value's first line, note under the value */
html body #reg#reg#reg .lr-f > .lr-k{ grid-column: 1 !important; grid-row: 1 !important; }
html body #reg#reg#reg .lr-f > .lr-v{ grid-column: 2 !important; grid-row: 1 !important; }
html body #reg#reg#reg .lr-f > .lr-n{ grid-column: 2 !important; grid-row: 2 !important; }

/* the frame's last line */
html body #reg#reg#reg .lr-foot{
  grid-column: 1 / -1 !important;
  display: flex !important; justify-content: flex-end !important; align-items: center !important;
  padding: 12px 32px !important; border-top: 1px solid #C9D3E1 !important; background: #F7F9FC !important;
}

@media (max-width: 1180px){
  html body #reg#reg#reg .lr{ grid-template-columns: minmax(330px, 38%) minmax(0, 1fr) !important; }
  html body #reg#reg#reg .lr-id{ padding: 28px 24px 20px !important; }
  html body #reg#reg#reg .lr-reg{ column-gap: 28px !important; }
  html body #reg#reg#reg .lr-reg .lr-f{ padding: 18px 24px !important; }
  html body #reg#reg#reg .lr-name{ font-size: 24px !important; }
  /* the longest label takes two lines here rather than squeezing the values */
  html body #reg#reg#reg .lr-reg{ grid-template-columns: minmax(0, 168px) minmax(0, 1fr) !important; }
  html body #reg#reg#reg .lr-reg .lr-k{ align-items: flex-start !important; }
  html body #reg#reg#reg .lr-reg .lr-f{ align-items: start !important; }
  html body #reg#reg#reg .lr-reg .lr-k{ padding-top: 2px !important; }
  html body #reg#reg#reg .lr-foot{ padding: 12px 24px !important; }
}
@media (max-width: 900px){
  html body #reg#reg#reg .lr{ grid-template-columns: minmax(0, 1fr) !important; }
  html body #reg#reg#reg .lr-id{ border-right: 0 !important; border-bottom: 1px solid #C9D3E1 !important; }
  html body #reg#reg#reg .lr-reg{ grid-template-columns: max-content minmax(0, 1fr) !important; }
}
@media (max-width: 640px){
  html body #reg#reg#reg .lr{ border-radius: 12px !important; }
  html body #reg#reg#reg .lr-id{ padding: 20px 18px 16px !important; }
  html body #reg#reg#reg .lr-idtop{ column-gap: 12px !important; }
  html body #reg#reg#reg .lr-seal{ width: 40px !important; height: 40px !important; border-radius: 11px !important; }
  html body #reg#reg#reg .lr-name{ font-size: 22px !important; }
  html body #reg#reg#reg .lr-pair, html body #reg#reg#reg .lr-reg{ grid-template-columns: minmax(0, 1fr) !important; }
  html body #reg#reg#reg .lr-pair{ margin-top: 16px !important; }
  html body #reg#reg#reg .lr-pair .lr-f, html body #reg#reg#reg .lr-reg .lr-f{ grid-template-columns: minmax(0, 1fr) !important; align-items: start !important; row-gap: 4px !important; }
  html body #reg#reg#reg .lr-pair .lr-f{ padding: 14px 0 !important; }
  html body #reg#reg#reg .lr-reg .lr-f{ padding: 16px 18px !important; }
  html body #reg#reg#reg .lr-f > .lr-k, html body #reg#reg#reg .lr-f > .lr-v, html body #reg#reg#reg .lr-f > .lr-n{ grid-column: 1 !important; grid-row: auto !important; }
  html body #reg#reg#reg .lr-reg .lr-k{ padding-top: 0 !important; }
  html body #reg#reg#reg .lr-foot{ padding: 14px 18px !important; }
}
@media (max-width: 400px){
  html body #reg#reg#reg .lr-idtop{ grid-template-columns: minmax(0, 1fr) !important; row-gap: 12px !important; }
}
