:root {
  color-scheme: light;
  font: 16px/1.56 "Instrument Sans", "Helvetica Neue", Arial, sans-serif;
}
.navy { --paper: #f2f6fc; --ink: #13233b; --muted: #42516a; --line: #bfccdf; --panel: #e2eaf7; --stripe: #f5f8fe; --accent: #294d86; }
.ochre { --paper: #fff9ee; --ink: #2b2015; --muted: #615047; --line: #dac6a8; --panel: #f4e4c7; --stripe: #fcf7ed; --accent: #7a421f; }
.sea { --paper: #f0f7f6; --ink: #102d38; --muted: #3d5760; --line: #b9d0cf; --panel: #dceeed; --stripe: #f4f9f8; --accent: #176268; }
* { box-sizing: border-box; }
body { margin: 0; background: var(--paper); color: var(--ink); }
a { color: var(--accent); text-underline-offset: .25em; }
a:hover { text-decoration-thickness: 2px; }
a:focus-visible, summary:focus-visible, [tabindex]:focus-visible { outline: 3px solid var(--accent); outline-offset: 4px; }
.skip { position: absolute; z-index: 2; left: 16px; top: -100px; padding: 8px 12px; background: white; }
.skip:focus { top: 16px; }
.wrap { width: min(1120px, calc(100% - 88px)); margin-inline: auto; }
.site-head, .site-foot { display: flex; flex-wrap: wrap; justify-content: space-between; align-items: center; gap: 12px 24px; padding-block: 18px; }
.site-head { border-bottom: 1px solid var(--line); }
.site-head nav, .site-foot nav, .actions { display: flex; align-items: center; flex-wrap: wrap; gap: 12px 20px; }
.site-head nav { font-size: .88rem; }
.brand { color: var(--ink); font-size: 1.15rem; font-weight: 750; text-decoration: none; }
.hero, .details { display: grid; grid-template-columns: minmax(0, 1fr) minmax(245px, .49fr); gap: clamp(32px, 6.5vw, 92px); }
.hero { padding-block: 56px 46px; align-items: end; }
.context { color: var(--accent); font-size: .9rem; font-weight: 700; margin: 0 0 16px; }
h1, h2, .count, .amount { font-family: "Instrument Serif", Georgia, serif; font-weight: 400; }
h1, h2, h3 { line-height: 1.1; margin: 0; }
h1 { font-size: clamp(2.65rem, 5.9vw, 5.4rem); letter-spacing: -.056em; text-wrap: balance; }
h2 { font-size: clamp(1.9rem, 3.2vw, 2.7rem); letter-spacing: -.035em; }
h3 { margin-top: 23px; font-size: 1.02rem; }
.lead { color: var(--muted); max-width: 640px; font-size: 1.14rem; margin: 16px 0 22px; }
.primary { background: var(--accent); color: white; padding: 11px 17px; font-weight: 700; text-decoration: none; }
.primary:hover { box-shadow: inset 0 0 0 100px #0002; }
.scope, .price { padding: 19px 22px 21px; border-top: 3px solid var(--accent); }
.scope { background: var(--panel); }
.scope h2, .price h2 { font: 700 1rem/1.3 "Instrument Sans", "Helvetica Neue", Arial, sans-serif; letter-spacing: 0; }
.scope p, .price p { margin: 0; }
.scope .count { margin-top: 7px; font-size: 3.65rem; letter-spacing: -.075em; line-height: 1; }
dl { margin: 13px 0 0; padding-top: 12px; border-top: 1px solid var(--line); }
dt { font-size: .76rem; color: var(--muted); }
dd { margin: 0; font-size: .9rem; }
dd + dt { margin-top: 7px; }
.scope .closed, .price .closed { font-size: .78rem; font-weight: 700; margin-top: 13px; color: var(--muted); }
.sample, .details, .policies, .about { padding-block: 26px 34px; border-top: 1px solid var(--line); }
.section-head { display: flex; justify-content: space-between; align-items: baseline; flex-wrap: wrap; gap: 10px 20px; }
.section-head a { font-size: .89rem; }
.sample p, .details p, .policies p, .about p { color: var(--muted); margin: 8px 0 14px; }
.scroll { overflow: auto; border: 1px solid var(--line); background: white; }
table { table-layout: auto; width: 100%; min-width: 610px; border-collapse: collapse; text-align: left; font-size: .9rem; }
th, td { padding: 11px 15px; border-bottom: 1px solid var(--line); vertical-align: top; }
thead th { background: var(--panel); font-size: .82rem; white-space: nowrap; }
tbody th { font-weight: 650; }
tbody tr:nth-child(even) { background: var(--stripe); }
tbody tr:last-child > * { border-bottom: 0; }
.numeric { white-space: nowrap; font-variant-numeric: tabular-nums; }
.sea tbody th { width: 50%; }
.sample .note { margin-bottom: 0; font-size: .86rem; }
.price { align-self: start; background: white; }
.price .amount { margin-top: 7px; color: var(--ink); font-size: 2.65rem; letter-spacing: -.05em; }
.amount span { font: 500 .85rem/1.3 "Instrument Sans", "Helvetica Neue", Arial, sans-serif; color: var(--muted); letter-spacing: 0; }
.policies h2, .about h2 { font-size: 1.65rem; margin-bottom: 14px; }
.about dl { max-width: 42rem; }
.about dl + p { margin-top: 16px; }
details { border-bottom: 1px solid var(--line); padding: 9px 0; }
summary { cursor: pointer; font-weight: 640; }
.site-foot { border-top: 1px solid var(--line); color: var(--muted); font-size: .83rem; }
@media (max-width: 740px) {
  .wrap { width: calc(100% - 36px); }
  .hero, .details { grid-template-columns: minmax(0, 1fr); gap: 22px; }
  .hero { padding-block: 28px; }
  h1 { text-wrap: initial; }
  .site-head nav { gap: 10px; }
}
