/* Flagship Bids: printed-brief look. No webfonts, no scripts, no images beyond one SVG mark. */
:root{
  --paper:#f5f2ea; --sheet:#fffdf8; --ink:#1c211e; --ink-2:#47504a; --rule:#d9d3c4; --rule-2:#bfb7a4;
  --accent:#a33a1f; --accent-ink:#ffffff; --green:#2f5a3d; --amber:#8a5a0b;
  --serif:Charter,"Bitstream Charter","Iowan Old Style","Palatino Linotype",Palatino,Georgia,serif;
  --sans:system-ui,-apple-system,"Segoe UI",Roboto,"Helvetica Neue",Arial,sans-serif;
  --mono:ui-monospace,"SF Mono",Menlo,Consolas,"Liberation Mono",monospace;
}
*{box-sizing:border-box}
html{font-size:17px;-webkit-text-size-adjust:100%}
body{margin:0;background:var(--paper);color:var(--ink);font-family:var(--sans);line-height:1.6;font-variant-numeric:tabular-nums}
a{color:var(--ink);text-decoration-thickness:1px;text-underline-offset:3px}
a:hover{color:var(--accent)}
:focus-visible{outline:3px solid var(--accent);outline-offset:3px}
.skip{position:absolute;left:-999px;top:8px;background:var(--ink);color:#fff;padding:8px 12px}
.skip:focus{left:8px}
.wrap{max-width:1040px;margin:0 auto;padding:0 20px}

/* masthead */
header.top{border-bottom:1px solid var(--ink)}
header.top .wrap{display:flex;align-items:baseline;justify-content:space-between;gap:16px;flex-wrap:wrap;padding-top:14px;padding-bottom:12px}
.brand{display:flex;align-items:center;gap:9px;font-family:var(--serif);font-weight:700;font-size:1.25rem;color:var(--ink);text-decoration:none;letter-spacing:.2px}
.brand img{width:22px;height:22px;position:relative;top:3px}
nav a{display:inline-block;padding:7px 0;margin-left:20px;color:var(--ink-2);text-decoration:none;font-size:.93rem}
nav a:hover{color:var(--ink);text-decoration:underline}

/* type */
h1,h2,h3{font-family:var(--serif);font-weight:700;color:var(--ink);letter-spacing:-.2px}
h1{font-size:2.55rem;line-height:1.12;margin:0 0 18px;max-width:17ch}
h2{font-size:1.7rem;line-height:1.2;margin:0 0 14px}
h3{font-size:1.1rem;margin:0 0 6px}
.lede{font-size:1.12rem;color:var(--ink-2);max-width:54ch;margin:0 0 22px}
.small{font-size:.88rem;color:var(--ink-2)}
.prose{max-width:66ch}
.kicker{font-family:var(--mono);font-size:.78rem;letter-spacing:.08em;text-transform:uppercase;color:var(--ink-2);margin:0 0 10px}

/* buttons */
.btn{display:inline-block;background:var(--ink);color:#fff;padding:12px 20px;text-decoration:none;font-weight:600;border:2px solid var(--ink);border-radius:2px}
.btn:hover{background:var(--accent);border-color:var(--accent);color:#fff}
.btn.line{background:transparent;color:var(--ink)}
.btn.line:hover{background:var(--ink);color:#fff;border-color:var(--ink)}
.cta-row{display:flex;gap:12px;flex-wrap:wrap;margin:0 0 14px}

/* hero */
.hero{display:grid;grid-template-columns:1.15fr .85fr;gap:44px;align-items:start;padding-top:52px;padding-bottom:48px}
.docket{background:var(--sheet);border:1px solid var(--rule-2);box-shadow:6px 6px 0 var(--rule);padding:18px 18px 14px;font-size:.86rem}
.docket .head{display:flex;justify-content:space-between;align-items:baseline;border-bottom:1px solid var(--ink);padding-bottom:8px;margin-bottom:6px}
.docket .clock{font-family:var(--mono);font-size:1.5rem;font-weight:700;color:var(--accent);letter-spacing:.02em}
.docket ol{list-style:none;margin:0;padding:0}
.docket li{display:grid;grid-template-columns:58px 1fr auto;gap:10px;padding:7px 0;border-bottom:1px dashed var(--rule)}
.docket li:last-child{border-bottom:0}
.docket .ref{font-family:var(--mono);color:var(--ink-2);white-space:nowrap}
.st{font-family:var(--mono);font-size:.74rem;font-weight:700;text-transform:uppercase;letter-spacing:.04em;white-space:nowrap}
.st.ok{color:var(--green)}.st.chk{color:var(--amber)}.st.gap{color:var(--accent)}
.docket .foot{margin-top:8px;color:var(--ink-2);font-size:.78rem}

/* sections as numbered parts of a brief */
section{border-top:1px solid var(--ink);padding:40px 0 44px}
.part{display:grid;grid-template-columns:150px 1fr;gap:28px}
.part > *,.hero > *{min-width:0}
.part > .label{font-family:var(--mono);font-size:.8rem;color:var(--ink-2);padding-top:9px;letter-spacing:.04em}
.part > .label b{display:block;font-size:1.5rem;color:var(--ink);font-weight:700;letter-spacing:0}

.deliver{display:grid;grid-template-columns:repeat(3,1fr);gap:0;border-top:1px solid var(--rule-2);margin-top:8px}
.deliver > div{padding:16px 20px 4px 0;border-right:1px solid var(--rule)}
.deliver > div + div{padding-left:20px}
.deliver > div:last-child{border-right:0}
.deliver .n{font-family:var(--mono);color:var(--accent);font-weight:700}

ol.steps{list-style:none;counter-reset:s;margin:0;padding:0;max-width:70ch}
ol.steps li{counter-increment:s;position:relative;padding:0 0 14px 44px}
ol.steps li::before{content:counter(s,decimal-leading-zero);position:absolute;left:0;top:1px;font-family:var(--mono);font-weight:700;color:var(--accent)}

.prices{display:grid;grid-template-columns:repeat(2,1fr);gap:0;border:1px solid var(--ink);background:var(--sheet);max-width:720px}
.prices > div{padding:18px 22px}
.prices > div + div{border-left:1px solid var(--ink)}
.price{font-family:var(--serif);font-size:2.3rem;font-weight:700;line-height:1.1;margin:4px 0 6px}
.price small{font-family:var(--sans);font-size:.85rem;font-weight:400;color:var(--ink-2)}

.stamp{border:2px solid var(--accent);padding:18px 22px;max-width:760px;background:var(--sheet)}
.stamp h2{color:var(--accent)}
.stamp ul{margin:0 0 8px;padding-left:1.1rem}
.stamp li{margin-bottom:8px}

/* tables */
.table-scroll{overflow-x:auto;border:1px solid var(--rule-2);background:var(--sheet)}
table{border-collapse:collapse;width:100%;min-width:660px;font-size:.9rem}
th,td{text-align:left;padding:9px 12px;border-bottom:1px solid var(--rule);vertical-align:top}
thead th{border-bottom:1px solid var(--ink);font-family:var(--mono);font-size:.74rem;text-transform:uppercase;letter-spacing:.05em;color:var(--ink-2);font-weight:700}
tbody th{font-weight:600}
caption{caption-side:top;text-align:left;padding:10px 12px;font-weight:600;border-bottom:1px solid var(--rule)}
td.us{background:#f2efe4;font-weight:600}

.markets{display:grid;grid-template-columns:repeat(auto-fit,minmax(260px,1fr));gap:0;border-top:1px solid var(--rule-2)}
.markets > div{padding:14px 18px 6px 0;border-bottom:1px solid var(--rule)}
.markets .open{font-family:var(--mono);font-size:.74rem;font-weight:700;text-transform:uppercase;color:var(--green)}
.markets .soon{font-family:var(--mono);font-size:.74rem;font-weight:700;text-transform:uppercase;color:var(--ink-2)}

details{border-bottom:1px solid var(--rule);padding:12px 0}
summary{cursor:pointer;font-weight:600;font-family:var(--serif);font-size:1.05rem}

footer{border-top:1px solid var(--ink);padding:26px 0 40px;color:var(--ink-2);font-size:.86rem}
footer a{color:var(--ink-2);display:inline-block;padding:3px 0}

/* inner pages */
.page{padding-top:36px;padding-bottom:48px}
.page h2{margin-top:30px;font-size:1.3rem}

@media (max-width:820px){
  .hero{grid-template-columns:1fr;gap:28px;padding-top:34px}
  .part{grid-template-columns:1fr;gap:6px}
  .part > .label{padding-top:0}
  .part > .label b{display:inline;font-size:1rem;margin-right:6px}
  .deliver{grid-template-columns:1fr}
  .deliver > div,.deliver > div + div{padding:14px 0 4px;border-right:0;border-bottom:1px solid var(--rule)}
  h1{font-size:2rem}
}
@media (max-width:520px){
  .prices{grid-template-columns:1fr}
  .prices > div + div{border-left:0;border-top:1px solid var(--ink)}
  nav a{margin-left:12px}
  h1{font-size:1.75rem}
}
@media (prefers-reduced-motion:reduce){*{scroll-behavior:auto}}
@media print{header.top nav,.cta-row{display:none}body{background:#fff}}
