.hero-plate-section {
   position: relative;
   width: 100%;
   padding-block: var(--space-2xl) var(--space-3xl);
   border-bottom: var(--border-hairline);
   background-color: var(--ground);
}


@media (min-width: 1024px) {
   .hero-plate-section {
      padding-block: var(--space-3xl) var(--space-3xl);
   }
}


.hero-plate-grid {
   display: flex;
   flex-direction: column;
   gap: var(--space-l);
}


@media (min-width: 1024px) {
   .hero-plate-grid {
      display: grid;
      grid-template-columns: repeat(12, minmax(0, 1fr));
      column-gap: var(--space-l);
      row-gap: var(--space-xl);
      align-items: start;
   }
}


.hero-plate-headline-wrap {
   width: 100%;
}


@media (min-width: 1024px) {
   .hero-plate-headline-wrap {
      grid-column: 1 / 13;
   }
}


.hero-plate-headline {
   font-family: var(--mote-2ab);
   font-size: var(--step-hero);
   font-weight: 700;
   line-height: 1.05;
   letter-spacing: -0.035em;
   color: var(--ink);
   margin: 0;
   max-width: 24ch;
   text-wrap: balance;
   view-transition-name: hero-headline;
}


.hero-plate-aside {
   display: flex;
   flex-direction: column;
   gap: var(--space-m);
   order: 3;
}


@media (min-width: 1024px) {
   .hero-plate-aside {
      grid-column: 1 / 5;
      order: 2;
      padding-top: var(--space-xs);
   }
}


.hero-plate-lede {
   font-size: var(--mote-5ad);
   line-height: 1.5;
   color: var(--ink);
   margin: 0;
   max-width: 36ch;
}


.hero-plate-meta-list {
   display: flex;
   flex-direction: column;
   gap: var(--space-2xs);
   font-family: var(--mote-7b4);
   font-size: var(--step--1);
   color: var(--ink-soft);
   border-left: 2px solid var(--accent);
   padding-left: var(--space-s);
   margin-block: var(--space-xs);
}


.hero-plate-actions {
   display: flex;
   align-items: center;
   gap: var(--space-s);
   flex-wrap: wrap;
}


.hero-plate-figure {
   order: 2;
   margin: 0;

   width: 100%;
   position: relative;
   view-transition-name: hero;
}


@media (min-width: 1024px) {
   .hero-plate-figure {
      grid-column: 5 / 13;
      order: 3;
   }
}


.hero-plate-frame {
   position: relative;
   background-color: var(--surface);
   border: var(--border-hairline);
   overflow: hidden;
   aspect-ratio: 16 / 10;
}


.hero-plate-img {
   width: 100%;

   height: 100%;
   object-fit: cover;
   object-position: 67% 46%;
   display: block;
   view-transition-name: hero;
}


.hero-plate-caption {
   font-family: var(--mote-7b4);
   font-size: var(--step--1);
   color: var(--ink-soft);
   margin-top: var(--space-2xs);
   display: flex;
   justify-content: space-between;
   align-items: baseline;
   flex-wrap: wrap;
   gap: var(--space-2xs);
   border-bottom: var(--border-hairline);
   padding-bottom: var(--space-2xs);
}


.section-held {
   position: relative;
   width: 100%;
   border-bottom: var(--border-hairline);
   background-color: var(--ground);
   padding-block: var(--space-xl);
}


@media (min-width: 1024px) {
   .section-held {
      padding-block: var(--space-2xl);
   }
}


.section-held:nth-of-type(even) {
   background-color: var(--surface);
   padding-block: var(--space-2xl);
}


@media (min-width: 1024px) {
   .section-held:nth-of-type(even) {
      padding-block: var(--space-3xl);
   }
}


.section-held-inner {
   display: flex;
   flex-direction: column;

   gap: var(--space-xl);
}


@media (min-width: 1024px) {
   .section-held-inner {
      display: grid;
      grid-template-columns: repeat(12, minmax(0, 1fr));
      column-gap: var(--space-l);
      align-items: start;
   }
}


.held-head {
   width: 100%;
   min-width: 0;
}


@media (min-width: 1024px) {
   .held-head {
      grid-column: 1 / 5;
      position: sticky;
      top: 6rem;
      z-index: 10;
   }
}


@media (min-width: 1200px) {
   .held-head {
      grid-column: 1 / 4;
   }
}


@media (min-width: 1024px) {
   .held-body {
      grid-column: 5 / 13;
   }
}


@media (min-width: 1200px) {
   .held-body {
      grid-column: 4 / 13;
   }
}


.held-title {
   font-family: var(--mote-2ab);
   font-size: var(--mote-2d4);
   font-weight: 700;
   line-height: 1.15;
   letter-spacing: -0.02em;
   color: var(--ink);
   margin-bottom: var(--space-s);
   text-wrap: balance;
}


@media (min-width: 1200px) {
   .held-title {
      font-size: var(--mote-89e);
   }
}


.held-standfirst {
   font-size: var(--mote-48e);
   line-height: 1.55;
   color: var(--ink-soft);
   max-width: 44ch;
   margin-bottom: var(--space-m);
}


.held-meta-notes {
   font-family: var(--mote-7b4);
   font-size: var(--step--1);
   color: var(--ink-soft);
   border-top: var(--border-hairline);
   padding-top: var(--space-s);
   display: flex;
   flex-direction: column;
   gap: var(--space-3xs);
}


.held-body {
   width: 100%;
   min-width: 0;
}


.held-body-content {
   display: flex;
   flex-direction: column;
   gap: var(--space-xl);
}


.magazine-grid {
   display: grid;
   grid-template-columns: 1fr;
   gap: var(--space-m);
}


@media (min-width: 768px) {
   .magazine-grid {
      grid-template-columns: repeat(2, 1fr);
   }
}


@media (min-width: 1024px) {
   .magazine-grid {
      grid-template-columns: repeat(12, 1fr);
      gap: var(--space-l);
   }
}


.magazine-lead-tile {
   grid-column: 1 / -1;
   background-color: var(--surface);
   border: var(--border-hairline);
   display: flex;
   flex-direction: column;
}


@media (min-width: 1024px) {
   .magazine-lead-tile {
      grid-column: 1 / 8;
   }
}


.magazine-lead-media {
   position: relative;
   aspect-ratio: 16 / 10;
   background-color: var(--surface-2);
   border-bottom: var(--border-hairline);
   overflow: hidden;
}


.magazine-lead-media img {
   width: 100%;
   height: 100%;
   object-fit: cover;
   transition: transform var(--dur-medium) var(--ease-standard);
}


.magazine-lead-tile:hover .magazine-lead-media img {
   transform: scale(1.02);
}


.magazine-lead-body {
   padding: var(--space-m) var(--space-l);
   display: flex;
   flex-direction: column;
   flex-grow: 1;
}


.magazine-rail {
   grid-column: 1 / -1;
   display: flex;
   flex-direction: column;
   gap: 0;
   border-top: var(--border-hairline);
}


@media (min-width: 1024px) {
   .magazine-rail {
      grid-column: 8 / 13;
      border-top: none;
   }
}


.rail-item {
   background-color: transparent;
   border: none;
   border-bottom: var(--border-hairline);
   padding-block: var(--space-m);
   padding-inline: 0;
   display: flex;
   flex-direction: column;
   gap: var(--space-2xs);
   transition: transform var(--dur-fast) var(--ease-standard);
}


.rail-item:first-child {
   padding-top: 0;
}


.rail-item:hover {
   transform: translateX(4px);
}


.rail-item-kicker {
   font-family: var(--mote-7b4);
   font-size: var(--step--1);
   color: var(--accent);
   font-weight: 700;
   text-transform: uppercase;
}


.rail-item-title {
   font-size: var(--mote-5ad);
   line-height: 1.25;
   margin: 0;
}


.rail-item-title a {
   text-decoration: none;
   color: var(--ink);
}


.rail-item-title a:hover {
   color: var(--accent);
}


.rail-item-text {
   font-size: var(--mote-48e);
   color: var(--ink-soft);
   margin: 0;
}


.collage-wrap {
   position: relative;
   width: 100%;
   background-color: var(--surface);
   border: var(--border-hairline);
   padding: var(--space-s);
   display: flex;
   align-items: center;
   justify-content: center;
   overflow: hidden;
}


@media (min-width: 768px) {
   .collage-wrap {
      padding: var(--space-xl);
   }
}


.collage-stage {
   position: relative;
   width: 100%;
   max-width: 720px;
   aspect-ratio: 16 / 10;
}


.collage-item {
   position: absolute;
   background-color: var(--ground);
   border: 1px solid var(--line);
   box-shadow: 0 8px 24px rgba(39, 41, 43, 0.12);
   transition: transform var(--dur-medium) var(--ease-standard);
}


.collage-item:hover {
   transform: translateY(-4px) scale(1.02);
   z-index: 20;
}


.collage-item img {
   display: block;
   width: 100%;
   height: 100%;
   object-fit: cover;
}


.collage-item-primary {
   width: 68%;
   height: 72%;
   top: 6%;
   left: 4%;
   z-index: 5;
   transform: rotate(-1.5deg);
}


.collage-item-secondary {
   width: 58%;
   height: 64%;
   bottom: 6%;
   right: 4%;
   z-index: 10;
   transform: rotate(2deg);
}


.collage-item-tertiary {
   width: 38%;
   height: 44%;
   top: 26%;
   left: 32%;
   z-index: 15;
   transform: rotate(-0.5deg);
   display: none;
}


@media (min-width: 768px) {
   .collage-item-tertiary {
      display: block;
   }
}


.collage-caption-bar {
   font-family: var(--mote-7b4);
   font-size: var(--step--1);
   color: var(--ink-soft);
   border-top: var(--border-hairline);
   padding-top: var(--space-xs);
   margin-top: var(--space-s);
   display: flex;
   justify-content: space-between;
}


.catalog-filter-bar {
   background-color: var(--surface);
   border: var(--border-hairline);
   padding: var(--space-xs) var(--space-s);
   display: flex;
   align-items: center;
   flex-wrap: wrap;
   gap: var(--space-xs);
   margin-bottom: var(--space-xl);
}


.catalog-filter-label {
   font-family: var(--mote-7b4);
   font-size: var(--step--1);
   font-weight: 700;
   color: var(--ink);
   text-transform: uppercase;
   margin-right: var(--space-2xs);
}


.catalog-filter-tag {
   background: none;
   border: 1px solid var(--line);
   color: var(--ink);
   font-family: var(--mote-7b4);
   font-size: var(--step--1);
   padding: var(--space-3xs) var(--space-xs);
   cursor: pointer;
   min-height: 36px;
   display: inline-flex;
   align-items: center;
   transition: background-color var(--dur-fast) var(--ease-standard),
                     color var(--dur-fast) var(--ease-standard);
}


.catalog-filter-tag:hover {
   background-color: var(--surface-2);
   border-color: var(--ink);
}


.catalog-filter-tag.is-selected {
   background-color: var(--accent);
   color: var(--accent-ink);
   border-color: var(--accent);
}


.catalog-filter-tag:focus-visible {
   outline: 2px solid var(--accent);
   outline-offset: 2px;
}


.catalog-grid {
   display: grid;
   grid-template-columns: 1fr;
   gap: var(--space-l);
}


@media (min-width: 768px) {
   .catalog-grid {
      grid-template-columns: repeat(2, 1fr);
   }
}


@media (min-width: 1200px) {
   .catalog-grid {
      grid-template-columns: repeat(3, 1fr);
   }
}


.inquiry-tag {
   display: inline-flex;
   align-items: center;
   gap: var(--space-3xs);
   font-family: var(--mote-7b4);
   font-size: 11px;
   text-transform: uppercase;
   letter-spacing: 0.05em;
   padding: 2px 6px;
   background-color: var(--surface-2);
   color: var(--ink);
   border: 1px solid var(--line);
}


.tool-container {
   background-color: var(--surface);
   border: var(--border-hairline);
   padding: var(--space-m);
   display: flex;
   flex-direction: column;
   gap: var(--space-l);
}


@media (min-width: 768px) {
   .tool-container {
      padding: var(--space-xl);
   }
}


.tool-header {
   border-bottom: var(--border-hairline);
   padding-bottom: var(--space-s);
}


.tool-title {
   font-family: var(--mote-2ab);
   font-size: var(--mote-7d1);
   font-weight: 700;
   margin-bottom: var(--space-3xs);
}


.tool-formula-box {
   font-family: var(--mote-7b4);
   font-size: var(--step--1);
   color: var(--ink-soft);
   background-color: var(--surface-2);
   padding: var(--space-xs) var(--space-s);
   border-left: 3px solid var(--accent);
}


.tool-grid {
   display: grid;
   grid-template-columns: 1fr;
   gap: var(--space-l);
}


@media (min-width: 1024px) {
   .tool-grid {
      grid-template-columns: 1fr 1fr;
   }
}


.tool-inputs-col {
   display: flex;
   flex-direction: column;
   gap: var(--space-m);
}


.tool-field-card {
   background-color: var(--ground);
   border: var(--border-hairline);
   padding: var(--space-s);
   display: flex;
   flex-direction: column;
   gap: var(--space-xs);
}


.tool-field-head {
   display: flex;
   justify-content: space-between;
   align-items: baseline;
}


.tool-field-label {
   font-family: var(--mote-2ab);
   font-size: var(--mote-48e);
   font-weight: 700;
}


.tool-field-val {
   font-family: var(--mote-7b4);
   font-size: var(--mote-48e);
   font-weight: 700;
   color: var(--accent);
}


.tool-range-slider {
   appearance: none;
   width: 100%;
   height: 8px;
   background: var(--surface-2);
   border: 1px solid var(--line);
   outline: none;
}


.tool-range-slider::-webkit-slider-thumb {
   appearance: none;
   width: 22px;
   height: 22px;
   background: var(--accent);
   border: 1px solid var(--ground);
   cursor: pointer;
}


.tool-range-slider::-moz-range-thumb {
   width: 22px;
   height: 22px;
   background: var(--accent);
   border: 1px solid var(--ground);
   cursor: pointer;
}


.tool-range-slider:focus-visible {
   outline: 2px solid var(--accent);
   outline-offset: 2px;
}


.tool-results-col {
   background-color: var(--ground);
   border: var(--border-hairline);
   padding: var(--space-m);
   display: flex;
   flex-direction: column;
   justify-content: space-between;
   gap: var(--space-m);
}


.tool-metrics-stack {
   display: flex;
   flex-direction: column;
   gap: var(--space-s);
}


.tool-metric-row {
   display: flex;
   justify-content: space-between;
   align-items: baseline;
   border-bottom: var(--border-hairline);
   padding-bottom: var(--space-xs);
}


.tool-metric-label {
   font-size: var(--mote-48e);
   color: var(--ink-soft);
}


.tool-metric-value {
   font-family: var(--mote-7b4);
   font-size: var(--mote-7d1);
   font-weight: 700;
   color: var(--ink);
}


.tool-note-box {
   background-color: var(--surface);
   border: var(--border-hairline);
   padding: var(--space-xs) var(--space-s);
   font-family: var(--mote-7b4);
   font-size: var(--step--1);
   color: var(--ink-soft);
   line-height: 1.4;
}


.tool-export-action {
   width: 100%;
}


.quote-panel {
   background-color: var(--surface);
   border: var(--border-hairline);
   border-left: 4px solid var(--accent);
   padding: var(--space-l);
   margin-block: var(--space-l);
}


.quote-panel blockquote {
   font-size: var(--mote-5ad);
   line-height: 1.45;
   font-style: italic;
   color: var(--ink);
   margin: 0 0 var(--space-s) 0;
}


.quote-attribution {
   font-family: var(--mote-7b4);
   font-size: var(--step--1);
   color: var(--ink-soft);
   text-transform: uppercase;
   letter-spacing: 0.05em;
}


.doc-card-page {
   padding-block: var(--space-xl) var(--space-3xl);
   background-color: var(--ground);
}


.doc-card-wrapper {
   max-width: 960px;
   margin-inline: auto;
   padding-inline: var(--space-s);
}


@media (min-width: 768px) {
   .doc-card-wrapper {
      padding-inline: var(--space-m);
   }
}


.doc-card {
   background-color: #ffffff;
   border: var(--border-hairline);
   box-shadow: 0 4px 20px rgba(39, 41, 43, 0.08);
   padding: var(--space-s);
   min-width: 0;
}


@media (min-width: 480px) {
   .doc-card {
      padding: var(--space-m);
   }
}


@media (min-width: 768px) {
   .doc-card {
      padding: var(--space-2xl) var(--space-3xl);
   }
}


.doc-card-masthead {
   border-bottom: 2px solid var(--ink);
   padding-bottom: var(--space-m);
   margin-bottom: var(--space-xl);
}


.doc-card-category {
   font-family: var(--mote-7b4);
   font-size: var(--step--1);
   font-weight: 700;
   text-transform: uppercase;
   color: var(--accent);
   letter-spacing: 0.05em;
   margin-bottom: var(--space-3xs);
}


.doc-card-title {
   font-family: var(--mote-2ab);
   font-size: var(--mote-2d4);
   font-weight: 700;
   letter-spacing: -0.02em;
   margin-bottom: var(--space-s);
}


@media (min-width: 768px) {
   .doc-card-title {
      font-size: var(--mote-89e);
   }
}


.doc-card-meta-strip {
   display: flex;
   flex-wrap: wrap;
   gap: var(--space-m);
   font-family: var(--mote-7b4);
   font-size: var(--step--1);
   color: var(--ink-soft);
   border-top: var(--border-hairline);
   padding-top: var(--space-xs);
}


.doc-card-body {
   display: flex;
   flex-direction: column;
   gap: var(--space-xl);
}


.doc-clause {
   border-bottom: var(--border-hairline);
   padding-bottom: var(--space-l);
}


.doc-clause:last-child {
   border-bottom: none;
   padding-bottom: 0;
}


.doc-clause-head {
   display: flex;
   align-items: baseline;
   gap: var(--space-xs);
   margin-bottom: var(--space-xs);
}


.doc-clause-num {
   font-family: var(--mote-7b4);
   font-size: var(--mote-48e);
   font-weight: 700;
   color: var(--ink-soft);
}


.doc-clause-title {
   font-family: var(--mote-2ab);
   font-size: var(--mote-7d1);
   font-weight: 700;
   margin: 0;
}


.doc-clause-text {
   font-size: var(--mote-48e);
   line-height: 1.6;
   color: var(--ink);
}


.doc-clause-text p {
   margin-bottom: var(--space-s);
}


.clauses-page {
   padding-block: var(--space-xl) var(--space-3xl);
   background-color: var(--ground);
}


.clauses-container {
   max-width: 1040px;
   margin-inline: auto;
   padding-inline: var(--space-s);
}


@media (min-width: 768px) {
   .clauses-container {
      padding-inline: var(--space-m);
   }
}


.clauses-header {
   border-bottom: var(--border-hairline);
   padding-bottom: var(--space-l);
   margin-bottom: var(--space-2xl);
}


.clauses-title {
   font-family: var(--mote-2ab);
   font-size: var(--step-hero);
   font-weight: 700;
   margin-bottom: var(--space-s);
}


.clauses-standfirst {
   font-size: var(--mote-5ad);
   color: var(--ink-soft);
   max-width: var(--measure-prose);
}


.clauses-stack {
   display: flex;
   flex-direction: column;
   gap: var(--space-2xl);
}


.clause-row {
   display: flex;
   flex-direction: column;
   gap: var(--space-xs);
   border-top: var(--border-hairline);
   padding-top: var(--space-l);
}


@media (min-width: 768px) {
   .clause-row {
      display: grid;
      grid-template-columns: 80px 1fr;
      column-gap: var(--space-xl);
      align-items: start;
   }
}


.clause-number {
   font-family: var(--mote-7b4);
   font-size: var(--mote-48e);
   font-weight: 400;
   color: var(--ink-soft);
   padding-top: 4px;
}


.clause-content {
   display: flex;
   flex-direction: column;
   gap: var(--space-s);
}


.clause-heading {
   font-family: var(--mote-2ab);
   font-size: var(--mote-7d1);
   font-weight: 700;
   margin: 0;
   color: var(--ink);
}


.luwie6a {
   font-size: var(--mote-48e);
   line-height: 1.65;
   color: var(--ink);
}


.luwie6a p {
   margin-bottom: var(--space-s);
}


.dated-rail-page {
   padding-block: var(--space-xl) var(--space-3xl);
   background-color: var(--ground);
}


.dated-rail-container {
   max-width: var(--grid-max);
   margin-inline: auto;
   padding-inline: var(--space-s);
}


@media (min-width: 768px) {
   .dated-rail-container {
      padding-inline: var(--space-m);
   }
}


@media (min-width: 1200px) {
   .dated-rail-container {
      padding-inline: var(--space-xl);
   }
}



.dated-rail-header {
   border-bottom: var(--border-hairline);
   padding-bottom: var(--space-l);
   margin-bottom: var(--space-xl);
}


.dated-rail-title {
   font-family: var(--mote-2ab);
   font-size: var(--mote-89e);
   font-weight: 700;
   line-height: 1.1;
   letter-spacing: -0.02em;
   margin-bottom: var(--space-s);
}


@media (min-width: 768px) {
   .dated-rail-title {
      font-size: var(--step-hero);
   }
}


.dated-rail-standfirst {
   font-size: var(--mote-5ad);
   color: var(--ink-soft);
   max-width: var(--measure-prose);
}


/* Mobile horizontal date strip above the text */
.rail-mobile-strip {
   display: flex;
   flex-wrap: nowrap;
   overflow-x: auto;
   gap: var(--space-s);
   padding: var(--space-s);
   margin-bottom: var(--space-xl);
   background-color: var(--surface);
   border: var(--border-hairline);
   border-top: 3px solid var(--accent);
   -webkit-overflow-scrolling: touch;
}


.rail-mobile-strip-item {
   flex: 0 0 auto;
   display: flex;
   flex-direction: column;
   gap: 2px;
   padding-right: var(--space-s);
   border-right: var(--border-hairline);
   font-family: var(--mote-7b4);
   font-size: var(--step--1);
}


.rail-mobile-strip-item:last-child {
   border-right: none;
   padding-right: 0;
}


.rail-mobile-strip-label {
   font-size: 11px;
   text-transform: uppercase;
   letter-spacing: 0.04em;
   color: var(--ink-soft);
}


.rail-mobile-strip-value {
   font-weight: 700;
   color: var(--ink);
   white-space: nowrap;
}


@media (min-width: 768px) {
   .rail-mobile-strip {
      display: none;
   }
}


.dated-rail-layout {
   display: block;
}


.dated-rail-aside {
   display: none;
}


@media (min-width: 768px) {
   .dated-rail-layout {
      display: grid;
      grid-template-columns: 240px minmax(0, 1fr);
      column-gap: var(--space-2xl);
      align-items: start;
      position: relative;
   }


   .dated-rail-aside {
      display: block;
      position: sticky;
      top: var(--space-l);
      border-right: 2px solid var(--line);
      padding-right: var(--space-l);
   }


   .rail-ledger-title {
      font-family: var(--mote-7b4);
      font-size: var(--step--1);
      font-weight: 700;
      text-transform: uppercase;
      letter-spacing: 0.06em;
      color: var(--accent);
      margin-bottom: var(--space-m);
      padding-bottom: var(--space-2xs);
      border-bottom: var(--border-hairline);
   }


   .rail-ledger-list {
      list-style: none;
      display: flex;
      flex-direction: column;
      gap: var(--space-s);
      padding: 0;
      margin: 0;
   }


   .rail-ledger-entry {
      position: relative;
      display: flex;
      flex-direction: column;
      gap: 2px;
      padding-bottom: var(--space-xs);
      border-bottom: var(--border-hairline);
   }


   .rail-ledger-entry:last-child {
      border-bottom: none;
      padding-bottom: 0;
   }


   .rail-ledger-entry::after {
      content: '';
      position: absolute;
      right: calc(-1 * var(--space-l) - 6px);
      top: 4px;
      width: 10px;
      height: 10px;
      background-color: var(--ground);
      border: 2px solid var(--accent);
   }


   .rail-ledger-label {
      font-family: var(--mote-7b4);
      font-size: 11px;
      text-transform: uppercase;
      letter-spacing: 0.04em;
      color: var(--ink-soft);
   }


   .rail-ledger-value {
      font-family: var(--mote-7b4);
      font-size: var(--step--1);
      font-weight: 700;
      color: var(--ink);
   }
}


.dated-rail-stream {
   position: relative;
   display: flex;
   flex-direction: column;
   gap: var(--space-2xl);
   min-width: 0;
}


.dated-rail-section {
   position: relative;
   display: flex;
   flex-direction: column;
   gap: var(--space-s);
   border-bottom: var(--border-hairline);
   padding-bottom: var(--space-xl);
}


@media (min-width: 768px) {
   .dated-rail-stream::before {
      content: '';
      position: absolute;
      left: calc(-1 * var(--space-2xl) - 2px);
      top: 0;
      bottom: 0;
      width: 2px;
      background-color: var(--line);
      z-index: 1;
   }


   .dated-rail-section::before {
      content: '';
      position: absolute;
      left: calc(-1 * var(--space-2xl) - 5px);
      top: 8px;
      width: 8px;
      height: 8px;
      background-color: var(--accent);
      border: 1px solid var(--ground);
      z-index: 3;
   }
}


.dated-rail-section:last-child {
   border-bottom: none;
   padding-bottom: 0;
}


.rail-section-marker {
   display: inline-flex;
   flex-wrap: wrap;
   align-items: center;
   gap: var(--space-xs);
   font-family: var(--mote-7b4);
   font-size: var(--step--1);
   color: var(--ink-soft);
}


.rail-section-clock {
   display: inline-block;
   padding: 2px 8px;
   background-color: var(--surface);
   border: var(--border-hairline);
   color: var(--ink);
   font-weight: 700;
}


.rail-section-body {
   display: flex;
   flex-direction: column;
   gap: var(--space-s);
   min-width: 0;
}


.rail-section-body ol,
.rail-section-body ul {
   margin-left: 1.5rem;
   margin-bottom: var(--space-xs);
   line-height: 1.6;
}


.rail-section-body li {
   margin-bottom: var(--space-3xs);
}


.dated-section-title {
   font-family: var(--mote-2ab);
   font-size: var(--mote-7d1);
   font-weight: 700;
   margin: 0;
   color: var(--ink);
}


.faq-accordion {
   border: var(--border-hairline);
   background-color: var(--surface);
}


.faq-item {
   border-bottom: var(--border-hairline);
}


.faq-item:last-child {
   border-bottom: none;
}


.faq-summary {
   list-style: none;
   cursor: pointer;
   padding: var(--space-s) var(--space-m);
   display: flex;
   align-items: center;
   justify-content: space-between;
   gap: var(--space-s);
   min-height: 48px;
   font-family: var(--mote-2ab);
   font-size: var(--mote-5ad);
   font-weight: 700;
   color: var(--ink);
   transition: background-color var(--dur-fast) var(--ease-standard);
}


.faq-summary::-webkit-details-marker {
   display: none;
}


.faq-summary:hover {
   background-color: var(--surface-2);
   color: var(--accent);
}


.faq-summary:focus-visible {
   outline: 2px solid var(--accent);
   outline-offset: -2px;
}


.faq-icon {
   width: 1.25rem;
   height: 1.25rem;
   transition: transform var(--dur-medium) var(--ease-standard);
   flex-shrink: 0;
}


.faq-item[open] .faq-icon {
   transform: rotate(180deg);
}


.faq-content {
   padding: 0 var(--space-m) var(--space-m) var(--space-m);
   font-size: var(--mote-48e);
   line-height: 1.6;
   color: var(--ink);
}


.status-badge {
   display: inline-flex;
   align-items: center;
   gap: var(--space-3xs);
   font-family: var(--mote-7b4);
   font-size: var(--step--1);
   padding: 2px 8px;
   border: 1px solid var(--line);
   background-color: var(--surface-2);
   color: var(--ink);
}


.status-badge.is-verified {
   border-color: var(--accent);
   color: var(--ink);
}


.contact-desk-grid {
   display: grid;
   grid-template-columns: 1fr;
   gap: var(--space-xl);
}


@media (min-width: 1024px) {
   .contact-desk-grid {
      grid-template-columns: 1fr 1fr;
      gap: var(--space-2xl);
   }
}


.contact-info-panel {
   background-color: var(--surface);
   border: var(--border-hairline);
   padding: var(--space-m);
   display: flex;
   flex-direction: column;
   gap: var(--space-l);
}


@media (min-width: 768px) {
   .contact-info-panel {
      padding: var(--space-xl);
   }
}


.contact-info-block {
   display: flex;
   flex-direction: column;
   gap: var(--space-2xs);
   border-bottom: var(--border-hairline);
   padding-bottom: var(--space-m);
}


.contact-info-block:last-child {
   border-bottom: none;
   padding-bottom: 0;
}


.contact-block-label {
   font-family: var(--mote-2ab);
   font-size: var(--step--1);
   font-weight: 700;
   text-transform: uppercase;
   letter-spacing: 0.05em;
   color: var(--ink-soft);
}


.contact-block-value {
   font-family: var(--mote-7b4);
   font-size: var(--mote-48e);
   color: var(--ink);
   line-height: 1.5;
   overflow-wrap: anywhere;
   word-break: break-word;
}


.doc-clause-text,
.luwie6a,
.rail-section-body {
   overflow-wrap: break-word;
}


.doc-clause-text a,
.doc-clause-text code,
.luwie6a a,
.luwie6a code,
.rail-section-body a,
.rail-section-body code {
   overflow-wrap: anywhere;
}


.contact-block-value a {
   text-decoration: underline;
}


.notfound-container {
   min-height: 60vh;
   display: flex;
   align-items: center;
   justify-content: center;
   padding-block: var(--space-3xl);
}


.notfound-card {
   background-color: var(--surface);
   border: var(--border-hairline);
   padding: var(--space-xl);
   max-width: 640px;
   width: 100%;
   text-align: left;
}


.notfound-code {
   font-family: var(--mote-7b4);
   font-size: var(--mote-89e);
   font-weight: 700;
   color: var(--accent);
   margin-bottom: var(--space-xs);
}


.notfound-title {
   font-family: var(--mote-2ab);
   font-size: var(--mote-2d4);
   margin-bottom: var(--space-s);
}


.notfound-text {
   font-size: var(--mote-48e);
   color: var(--ink-soft);
   margin-bottom: var(--space-l);
}


.notfound-actions {
   display: flex;
   gap: var(--space-s);
   flex-wrap: wrap;
}
